<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Struts文件上傳和下載

    jsp
    <%@ page language="java" contentType="text/html; charset=GBK" %>
    <html>
    <head>
        
    <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
        
    <title></title>
    </head>
    <body>
    <br>
    <html:form action="/datamanage.data.upload.do" method="post" enctype="multipart/form-data" target="_parent">
    <table width="45%" border="0" align="center" cellpadding="0" cellspacing="0" class="table_box">
        
    <tr>
            
    <td align="center" class="title_box" colspan="2">
                文件上傳
            
    </td>
        
    </tr>
        
    <tr>
            
    <td>
                文件:
            
    </td>
            
    <td>
                
    <html:file property="files" styleClass="text_2003"/>
            
    </td>
        
    </tr>
        
    <tr>
            
    <td>
                描述:
            
    </td>
            
    <td>
                
    <textarea rows="3" cols="40" class="text_2003" name="data_desc"></textarea>
            
    </td>
        
    </tr>

        
    <tr>
            
    <td class="bottom_box" colspan="2" align="center">
                
    <input type="button" value="上傳" styleClass="button_2003" onclick="checkForm();"/>&nbsp;&nbsp;&nbsp;
                
    <input type="button" onclick="cancle();" value="取消" styleClass="button_2003"/>
            
    </td>
        
    </tr>
        
    </html:form>
    </body>
    </html>


    DataUploadForm
    package eoms.datamanage.struts.form;

    import eoms.common.base.BaseForm;
    import org.apache.struts.upload.FormFile;

    public class DataUploadForm extends BaseForm {
        
    private FormFile files;
        
    private String type_id;
        
    private String data_path;
        
    private String data_desc;

        
    public String getType_id() {
            
    return type_id;
        }


        
    public void setType_id(String type_id) {
            
    this.type_id = type_id;
        }


        
    public FormFile getFiles() {
            
    return files;
        }


        
    public void setFiles(FormFile file) {
            
    this.files = file;
        }


        
    public String getData_path() {
            
    return data_path;
        }


        
    public void setData_path(String data_path) {
            
    this.data_path = data_path;
        }


        
    public String getData_desc() {
            
    return data_desc;
        }


        
    public void setData_desc(String data_desc) {
            
    this.data_desc = data_desc;
        }

    }


    文件下載Action
    package eoms.datamanage.struts.action;

    import eoms.common.base.BaseAction;
    import eoms.datamanage.dao.DataTypeDAO;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.*;
    import java.net.URLEncoder;

    public class DataDownAction extends BaseAction {

        
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
            DataTypeDAO typeDao 
    = (DataTypeDAO) this.getBean("DataTypeDAO");

            String type_id 
    = request.getParameter("type_id");
            String data_name 
    = request.getParameter("data_name");
            String path
    =typeDao.getDataTypeById(Integer.parseInt(type_id)).getData_path()+"/"+data_name;

            BufferedInputStream bis 
    = null;
            BufferedOutputStream bos 
    = null;
            OutputStream fos 
    = null;
            InputStream fis 
    = null;

            String filepath 
    = path;
            System.out.println(
    "文件路徑" + filepath);
            File uploadFile 
    = new File(filepath);
            fis 
    = new FileInputStream(uploadFile);
            bis 
    = new BufferedInputStream(fis);
            fos 
    = response.getOutputStream();
            bos 
    = new BufferedOutputStream(fos);
            
    //這個(gè)就就是彈出下載對話框的關(guān)鍵代碼
            response.setHeader("Content-disposition",
                    
    "attachment;filename=" + URLEncoder.encode(data_name,"GBK"));
            
    int bytesRead = 0;
            
    //用輸入流進(jìn)行先讀,然后用輸出流去寫
            byte[] buffer = new byte[8192];
            
    while ((bytesRead = bis.read(buffer, 08192)) != -1{
                bos.write(buffer, 
    0, bytesRead);
            }

            bos.flush();
            fis.close();
            bis.close();
            fos.close();
            bos.close();

            
    return null;
        }

    }


    文件上傳Action
    package eoms.datamanage.struts.action;

    import com.metarnet.security.model.User;
    import eoms.common.Constants;
    import eoms.common.base.BaseAction;
    import eoms.datamanage.dao.DataDAO;
    import eoms.datamanage.dao.DataTypeDAO;
    import eoms.datamanage.model.DataModel;
    import eoms.datamanage.model.DataTypeModel;
    import eoms.datamanage.struts.form.DataUploadForm;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.upload.FormFile;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.HashMap;
    import java.util.Map;

    public class DataUploadAction extends BaseAction {

        
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
            User user 
    = (User) request.getSession().getAttribute(
                    Constants.SESSION_USER_KEY);
            DataTypeDAO typeDao 
    = (DataTypeDAO) this.getBean("DataTypeDAO");
            DataDAO dataDao 
    = (DataDAO) this.getBean("DataDAO");
            DataUploadForm theForm 
    = (DataUploadForm) form;
            FormFile file 
    = theForm.getFiles();//取得上傳的文件
            String filePath = theForm.getData_path();//上傳到指定的文件夾中
            String fileDesc = theForm.getData_desc();
            String type_id 
    = theForm.getType_id();

            
    try {
                InputStream stream 
    = file.getInputStream();//把文件讀入

                OutputStream bos 
    = new FileOutputStream(filePath + "/" +
                        file.getFileName());
    //建立一個(gè)上傳文件的輸出流

                
    int bytesRead = 0;
                
    byte[] buffer = new byte[8192];
                
    while ((bytesRead = stream.read(buffer, 08192)) != -1{
                    bos.write(buffer, 
    0, bytesRead);//將文件寫入服務(wù)器
                }

                bos.close();
                stream.close();

                DataTypeModel typeModel 
    = typeDao.getDataTypeById(Integer.parseInt(type_id));
                
    //判斷是否已經(jīng)存在
                Map map = new HashMap();
                map.put(
    "type_code", typeModel.getData_type_code());
                map.put(
    "data_name", file.getFileName());
                DataModel data 
    = dataDao.getDataByTypeAndName(map);
                
    if (data == null{
                    
    //將資料信息保存進(jìn)數(shù)據(jù)庫
                    DataModel model = new DataModel();
                    model.setData_type_code(typeModel.getData_type_code());
                    model.setData_name(file.getFileName());
                    model.setData_type(typeModel.getData_type_name());
                    model.setData_desc(fileDesc);
                    model.setData_author(user.getUserId());
                    dataDao.addNewData(model);
                }

            }
     catch (Exception e) {
                System.err.print(e);
            }


            request.setAttribute(
    "type_id", type_id);
            
    return mapping.findForward("success");
        }


    }

    posted on 2011-03-25 16:39 Mr.lu 閱讀(195) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲中文字幕久久精品无码2021| 国产美女精品久久久久久久免费| 精品视频一区二区三区免费| 精品一区二区三区免费观看| 好湿好大好紧好爽免费视频| 国产精品无码免费专区午夜| 久久精品无码专区免费| 国产亚洲精品免费视频播放| a成人毛片免费观看| 国产91精品一区二区麻豆亚洲| 一级毛片**不卡免费播| 国产羞羞的视频在线观看免费| 精品一卡2卡三卡4卡免费视频| 暖暖在线视频免费视频| 最好看的中文字幕2019免费| 4hu四虎最新免费地址| 四虎免费大片aⅴ入口| www.亚洲精品| 亚洲va无码专区国产乱码| 亚洲熟妇av一区二区三区下载| 99亚偷拍自图区亚洲| 亚洲黄网站wwwwww| 亚洲成年网站在线观看| 亚洲6080yy久久无码产自国产 | 亚洲乱码中文字幕综合234| 久久精品国产精品亚洲下载| 久久精品视频亚洲| 亚洲av片不卡无码久久| 国产精品亚洲五月天高清| 国产精品成人免费观看| 久久WWW免费人成一看片| 日本不卡在线观看免费v| 亚洲精品视频在线看| 亚洲人成电影在在线观看网色| 亚洲最大成人网色香蕉| 曰批免费视频播放免费| 免费观看在线禁片| 啦啦啦在线免费视频| 亚洲无线观看国产精品| 亚洲国产综合第一精品小说| 男性gay黄免费网站|