成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Struts1.2實現(xiàn)動態(tài)多文件(不定個數(shù))上傳

開發(fā) 后端
本文將介紹如何在Struts1.2實現(xiàn)動態(tài)多文件(不定個數(shù))上傳,這是一個簡單的實例。

Struts1.2依然是應(yīng)用很廣的框架,實現(xiàn)動態(tài)多文件(不定個數(shù))上傳請先看下面的代碼

關(guān)鍵代碼

< SCRIPT language=javascript type=text/javascript >
function createElement(tagName, type, name)
{
   var element = null;
   try
   {
      element = document.createElement('<' + tagName + '
name="'+name+'" size=30 onchange="add();"/>');
      element.type = type;
      element.value = value;
   }
   catch (e)
   {
   }
   if ( ! element)
   {
      element = document.createElement(tagName);
      element.setAttribute("type", type);
   }
   return element;
}
// 動態(tài)創(chuàng)建表單控件的方法
var i = 1;
function add()
{
   // 動態(tài)創(chuàng)建控件名稱
   var name = "attachment" + i;
   var input1 = createElement("input", "file", name);
   var br = document.createElement("
");
   var files = document.getElementById("files");
   files.appendChild(br);
   files.appendChild(input1);
   i ++ ;
}
< /SCRIPT>

< DIV id=files>
< INPUT onchange=add(); alt=選擇后即可動態(tài)添加文件域 size=30 type=file name=attachment0>
< INPUT onclick=add(); value=多個附件 alt=手動添加文件域 type=button >
 支持的文件類型(.rar,.zip,.txt,.sql,.ini,.jpg,.bmp,.gif)

 

Action中的關(guān)鍵代碼:

FormFile[] formFile = null;
        // 得到所有的文件請求元素
        Hashtable files = bbsForm.getMultipartRequestHandler()
                .getFileElements();
        if (files != null && files.size() > 0)
        {
            // 初始化FormFile
            formFile = new FormFile[files.size()];
            // 得到files的keys
            Enumeration enums = files.keys();
            String fileKey = null;
            int i = 0;
            // 遍歷枚舉
            while (enums.hasMoreElements())
            {
                // 取得key
                fileKey = (String) (enums.nextElement());
                System.out.println("key:" + fileKey);
                // 初始化每一個FormFile(接口)
                formFile[i] = (FormFile) files.get(fileKey);
                // 分別上傳
                upload(formFile[i], request, bbs);
                i++;
            }

        }

 

upload方法:

/** *//**
     * 文件上傳的方法
     *
     * @param file
     * @param request
     * @param bbs
     */
    public void upload(FormFile file, HttpServletRequest request, Bbs bbs)
    {
        //只有選擇了文件時才上傳
        if ("".equals(file.getFileName()) || null == file.getFileName())
        {
            return ;
        }
        // 得到當前網(wǎng)站的絕對路徑
        String path = this.getServlet().getServletContext().getRealPath("/");
        FileOutputStream fileOutput;
        try
        {
            // 文件操作
            fileOutput = new FileOutputStream(path + "main/upload/"
                    + file.getFileName());
            fileOutput.write(file.getFileData());
            fileOutput.flush();
            fileOutput.close();
            log.info("BbsAction:附件上傳成功");
        }
        catch (FileNotFoundException e)
        {
            log.info("BbsAction:找不到文件");
        }
        catch (IOException e)
        {
            log.info("BbsAction:文件IO異常");
        }
        // 數(shù)據(jù)庫操作
        Fileupload fileupload = new Fileupload();
        String basePath = request.getScheme() + "://" + request.getServerName()
                + ":" + request.getServerPort() + request.getContextPath()
                + "/";
        fileupload.setFilename(basePath + "/main/upload/" + file.getFileName());
        // 得到文件的擴展名
        int point = file.getFileName().lastIndexOf(".");
        String ext = file.getFileName().substring(point + 1);
        //擴展名處理
        if ("jpg".equals(ext.toLowerCase()) || "bmp".equals(ext.toLowerCase())
                || "gif".equals(ext.toLowerCase()))
        {
            ext = "img";
        }
        if ("rar".equals(ext.toLowerCase()) || "zip".equals(ext.toLowerCase())
                || "jar".equals(ext.toLowerCase()))
        {
            ext = "rar";
        }
        if("txt".equals(ext.toLowerCase()) || "sql".equals(ext.toLowerCase()) || "ini".equals(ext.toLowerCase()))
        {
            ext = "txt";
        }
        fileupload.setFileext(ext);
        fileupload.setFilesize(file.getFileSize());
        fileupload.setUptime(new Date());
        fileupload.setDowncount(0);
        fileupload.setUpuser(((User) request.getSession().getAttribute("user"))
                .getUserName());
        fileupload.setFlag((short) 0);
        fileupload.setAnnounceId(bbs.getAnnounceId());
        fileupload.setName(file.getFileName());
        fileuploadManager.save(fileupload);
        log.info("BbsAction:附件信息已經(jīng)成功保存到數(shù)據(jù)庫");
    }

這樣就實現(xiàn)的動態(tài)的多文件上傳.關(guān)鍵還是


Hashtable files = bbsForm.getMultipartRequestHandler()
                .getFileElements();

的處理.

您正在閱讀的是“Struts1.2實現(xiàn)動態(tài)多文件(不定個數(shù))上傳”

【編輯推薦】

  1. 在Eclipse中開發(fā)struts應(yīng)用程序
  2. 手把手教你在Eclipse中配置開發(fā)Struts
  3. Eclipse下開發(fā)struts完整解決亂碼問題
  4. Struts相關(guān)背景介紹
  5. 使用Easy Struts for Eclipse開發(fā)Struts
責任編輯:張燕妮 來源: zjsyc.com
相關(guān)推薦

2009-06-08 16:44:00

Struts2文件上傳

2009-06-26 13:46:13

Struts

2009-11-24 14:52:45

PHP動態(tài)多文件上傳

2012-05-25 10:41:33

StrutsDWRJava

2017-04-20 13:30:00

AndroidRetrofit 2文件上傳

2009-06-25 15:50:03

Struts2教程上傳任意多個文件

2009-06-04 09:41:50

struts2上傳文件

2009-02-04 14:00:59

2009-06-19 18:42:06

jBPMSSH

2009-07-14 17:20:31

Webwork文件上傳

2009-11-16 10:40:02

PHP上傳文件代碼

2011-09-14 09:20:03

PhonegapAndroid平臺

2022-06-13 14:06:33

大文件上傳前端

2009-07-23 10:37:43

2009-11-16 10:16:24

PHP文件上傳

2009-07-08 09:29:58

WebWork

2009-06-04 08:34:24

Struts2配置struts.xml

2009-11-16 10:25:40

PHP上傳文件

2009-11-24 13:15:35

Zend框架PHP上傳文件

2009-07-06 17:11:38

Servlet文件上傳
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 91精品成人久久 | 涩涩视频在线看 | 国产三级电影网站 | 在线播放国产一区二区三区 | 日韩av一区在线观看 | 亚洲日日夜夜 | 羞羞涩涩在线观看 | 精品91久久久| 日本午夜一区二区三区 | 成人影视网址 | 成人不卡 | 亚洲视频一区二区 | 99成人在线视频 | 中文字幕精品一区久久久久 | 少妇淫片aaaaa毛片叫床爽 | 久久成人午夜 | 亚洲综合在线视频 | 久久亚洲一区二区三区四区 | 国产一区二区三区不卡av | 午夜免费网站 | 国精日本亚洲欧州国产中文久久 | 国产不卡一区在线观看 | 亚洲一区在线播放 | 视频一区在线 | 成人精品一区二区三区 | 欧美日韩高清在线一区 | 男女网站免费 | 国产精品视频久久久久 | aaa一区| 久久av一区 | 成人污污视频 | 国产精品美女在线观看 | 国产高清精品一区 | 国产精品美女久久久久久免费 | 免费观看一级毛片 | 日韩电影中文字幕在线观看 | 欧美成人影院在线 | av激情在线 | 成人一区二 | 亚洲成人日韩 | 美女黄频 |