现在的位置: 首页 > 综合 > 正文

上传文件

2014年02月27日 ⁄ 综合 ⁄ 共 2514字 ⁄ 字号 评论关闭

package action;


import java.io.BufferedOutputStream;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Date;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;


@SuppressWarnings("serial")
public class FileuploadAction extends ActionSupport {

 @SuppressWarnings("unused")
 private static final long serialversionUID=572146812454l;
 private static final int Buffered_SIZE=100*1024;
    private File myFile;                                                            //文件
    private String contentType;                                                 //内容类型
    private String fileName;                                                      //文件名称
    private String imageFileName;                                           //图片文件名称
    private String caption;                                                     //标题
    public void setMyFileContentType(String contentType)  {
        this .contentType = contentType;
   } 
   
    public void setMyFileFileName(String fileName)  {
        this .fileName = fileName;
   } 
       
    public void setMyFile(File myFile)  {
        this .myFile = myFile;
   } 
   
    public String getImageFileName()  {
        return imageFileName;
   } 
   
    public String getCaption()  {
        return caption;
   }

     public void setCaption(String caption)  {
        this .caption = caption;
   } 
   
 
     private static void copy(File src, File dst)  {
         try  {
            InputStream in = null ;
            OutputStream out = null ;
             try  {                
                in = new BufferedInputStream( new FileInputStream(src), Buffered_SIZE);
                out = new BufferedOutputStream( new FileOutputStream(dst), Buffered_SIZE);
                 byte [] br = new byte [Buffered_SIZE];
                 while (in.read(br) > 0 )  {
                    out.write(br);
                } 
             } finally  {
                 if ( null != in)  {
                    in.close();
                } 
                  if ( null != out)  {
                    out.close();
                } 
            } 
         } catch (Exception e)  {
            e.printStackTrace();
        } 
    } 
    
     private static String getExtention(String fileName)  {
         int pos = fileName.lastIndexOf( "." );
         return fileName.substring(pos);
    } 
 
    @Override
     public String execute()      {        
        imageFileName = new Date().getTime() + getExtention(fileName);
        File imageFile = new File(ServletActionContext.getServletContext().getRealPath( "/Images" ) + "/" + imageFileName);
        copy(myFile, imageFile);
           return SUCCESS;
    } 
}

  <body>
    This is my JSP page. <br>
        <s:fielderror/>                               <!-- //输出错误信息标签 --> 
        
  <s:form method="post" action="fileUpload"  enctype ="multipart/form-data">      <!-- // enctype="multipart/form-data"上传文件必须这样写  -->
  <s:file name="myFile" label="文件位置"/>
  <s:textfield name="capion" label="文件名称"/>
  <br>
  <s:submit value="提交"/>
  </s:form>
  </body>

  <body>
  <s:iterator>
  <p><a href="http://www.hao123.com/" target="_parent">图片:</a></p>
   <div style="padding:3px; border:solid 1px #cccccc; text-align:center;width:200; height:200">
   <a href="http://www.hao123.com/" target="_self">
   <img src="Images/<s:property value="imageFileName"/>"/>
   </a>
   <br/>
   <s:property value="caption"/>
   
  </div>
  <p><a href="http://www.hao123.com/" target="_top">文件名称:</a></p>
  <a href="http://www.hao123.com/" target="_blank"><s:property value="imageFileName"/></a>
  </s:iterator>
  </body>

抱歉!评论已关闭.