zoukankan      html  css  js  c++  java
  • 上传下载固定配置

    上传页面主要文件:<s:form>表单,固定格式

    <s:form action="upload" method="post" enctype="multipart/form-data" namespace="/">
                <s:file name="image"></s:file>
                <s:submit value="上传"></s:submit>
            </s:form>

    struts配置        

    <action name="upload" class="com.bawie.action.Upload" >
                    <result name="success">
                    /upload_success.jsp
                </result>
            </action>

    <action name="download" class="com.bawie.action.Download">
                <param name="imgname">/img/</param>
                <result name="success" type="stream">
                    <param name="contentDisposition">attachment;filename="${filename}"</param>
                    <!-- inputName对应数据必须是提供字节输入流的方法名去掉get后剩余部分首字母小写 -->
                    <param name="inputName">download</param>
                </result>
            </action>     

    类里的配置

    public class Upload extends ActionSupport{

    //2个属性,第一个是File类型,属性名必须与jsp页面name值同
        private File image;

    //第二个属性必须是第一个属性名字+FileName;
        private String imageFileName;
        private String imageContentType;
      //提供省略get()和set()方法,这里省略
      public String execute() throws Exception{
           FileInputStream fis=new FileInputStream(image);

    //获取项目根目录中img文件夹在硬盘中的绝对路径
            String realPath = ServletActionContext.getServletContext().getRealPath("img");
            String filename=realPath+File.separator+imageFileName;
            FileOutputStream fos=new FileOutputStream(filename);
            byte[] by=new byte[1024];
            int len=0;
            while((len=fis.read(by))!=-1){
                fos.write(by, 0, len);
            }
            fis.close();
            fos.close();
            return "success";      
        }

    public class Download extends ActionSupport{
        private String imgname;
        private String filename;

    // 省略get和set方法

    //方法名必须以get开头

    public InputStream getDownload(){
            return ServletActionContext.getServletContext().getResourceAsStream(imgname+filename);      
        }   
    }

  • 相关阅读:
    Python 模块 itertools
    Python 字符串的encode与decode
    python 模块 hashlib(提供多个不同的加密算法)
    暴力尝试安卓gesture.key
    hdu 1300 Pearls(DP)
    hdu 1232 畅通工程(并查集)
    hdu 1856 More is better(并查集)
    hdu 1198 Farm Irrigation(并查集)
    hdu 3635 Dragon Balls(并查集)
    hdu 3038 How Many Answers Are Wrong(并查集)
  • 原文地址:https://www.cnblogs.com/hmpcly/p/7085332.html
Copyright © 2011-2022 走看看