⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 senddocaction.java

📁 功能是公安和学校的管理系统,用struts+hibernate+spring等匡架组成,在eclepse就能编译
💻 JAVA
字号:
package com.comingnet.action;

import com.comingnet.bean.NoticeAppFiles;
import com.comingnet.bean.UserInfor;
import com.comingnet.intercepter.UserSessionAware;
import com.opensymphony.xwork2.ActionSupport;
import com.db.*;

import java.io.*;
import java.sql.*;
import java.util.ArrayList;
import java.util.Date;

import org.apache.struts2.ServletActionContext;
public class sendDocAction extends ActionSupport implements UserSessionAware{
	private UserInfor userSession=null;
	private String auid_test="5";
    private String fwbt;
    private String rev_xm;
    private String rev_id;
    private String EditorDefault;
    private String[] imageFileName;
	private File[] 	 myFile;
	private String[] myFileFileName;
	private String[] myFileContentType;
	private static final int BUFFER_SIZE = 16 * 1024;
    
	private ArrayList<NoticeAppFiles> files;
   
	public ArrayList<NoticeAppFiles> getFiles() {
		return files;
	}
	public void setFiles(ArrayList<NoticeAppFiles> files) {
		this.files = files;
	}
	public String[] getImageFileName() {
		return imageFileName;
	}
	public void setImageFileName(String[] imageFileName) {
		this.imageFileName = imageFileName;
	}
	public File[] getMyFile() {
		return myFile;
	}
	public void setMyFile(File[] myFile) {
		this.myFile = myFile;
	}
	public String[] getMyFileContentType() {
		return myFileContentType;
	}
	public void setMyFileContentType(String[] myFileContentType) {
		this.myFileContentType = myFileContentType;
	}
	public String[] getMyFileFileName() {
		return myFileFileName;
	}
	public void setMyFileFileName(String[] myFileFileName) {
		this.myFileFileName = myFileFileName;
	}
	public String getAuid_test() {
		return auid_test;
	}
	public void setAuid_test(String auid_test) {
		this.auid_test = auid_test;
	}
	public String getEditorDefault() {
		return EditorDefault;
	}
	public void setEditorDefault(String editorDefault) {
		EditorDefault = editorDefault;
	}
	public String getFwbt() {
		return fwbt;
	}
	public void setFwbt(String fwbt) {
		this.fwbt = fwbt;
	}
	public String getRev_id() {
		return rev_id;
	}
	public void setRev_id(String rev_id) {
		this.rev_id = rev_id;
	}
	public String getRev_xm() {
		return rev_xm;
	}
	public void setRev_xm(String rev_xm) {
		this.rev_xm = rev_xm;
	}
	public UserInfor getUserSession() {
		return userSession;
	}
	public void setUserSession(UserInfor userSession) {
		this.userSession = userSession;
	}
    
    public String execute()
    {
    	
    	if(myFileFileName!=null)
    	{
    	  saveFilesInFolder();
    	  for(int i=0;i<myFileFileName.length;i++)
    		{
    		  System.out.println("文件名:"+myFileFileName[i]);
    		}
    	}
    	UserInfor userinfor=getUserSession();
		int userid=userinfor.getUserid();
		String userxm=userinfor.getUserxm();
		
        Connection conn=null;
        PreparedStatement stmt=null;
        try
        {
        	int fwid=KeyGenerator.getInstance().getNextKey("m_fwwz");
        	conn=DBUtils.getConnection();
        	stmt=conn.prepareStatement("insert into m_fwwz(fwid,fwbt,fwnr,fwsjxm_js,fwsjid_js,fwfjrid,fwfjrxm) values(?,?,?,?,?,?,?)");
        	stmt.setInt(1,fwid);
        	stmt.setString(2,getFwbt());
        	stmt.setString(3,getEditorDefault());
        	stmt.setString(4,getRev_xm());
        	stmt.setString(5,","+getRev_id());
        	stmt.setInt(6,userid);
        	stmt.setString(7,userxm);
        	stmt.executeUpdate();
			
        	DBUtils.closeStatement(stmt);
        	
        	
        	if(files != null){
  			  for(int i=0; i<files.size(); i++){
  				 stmt = conn.prepareStatement("insert into docappendix(docappid, fwid, oldname, newname) values (?,?,?,?)");
  				 stmt.setInt(1, KeyGenerator.getInstance().getNextKey("docappendix"));
  				 stmt.setInt(2, fwid);
  				 stmt.setString(3,files.get(i).getOldFilename());
  				 stmt.setString(4, files.get(i).getNewFilename());
  				 stmt.executeUpdate();
  				 DBUtils.closeStatement(stmt);
  			  }
  		   }		
        	
        	
        }catch(Exception e)
        {
        	System.out.println(e);
        }finally
        {
        	DBUtils.closeStatement(stmt);
        	DBUtils.closeConnection(conn);
        }
    	
    	return SUCCESS;
    	
    }
    
    
    
    
    
	/**
	 * 将上传的文件保存到notice/uploadFile文件夹中,并更名为:当前时间+文件序号+扩展名
	 *
	 */
	private void saveFilesInFolder(){
		if(myFile!=null){
			if(myFile.length != 0){
				imageFileName = new String[myFile.length];
				files = new ArrayList<NoticeAppFiles>();
			}
			for(int i=0; i<myFile.length; i++){
				NoticeAppFiles file = new NoticeAppFiles();
				file.setOldFilename(myFileFileName[i]);
				imageFileName[i] = new Date().getTime()+ i + getExtention(myFileFileName[i]);//保证在同一时间内上传的文件不重名
				file.setNewFilename(imageFileName[i]);
				File imageFile = new File(ServletActionContext.getServletContext().getRealPath("/notice/uploadFile")+ "/" + imageFileName[i]);
				copy(myFile[i], imageFile);
				files.add(file);
			}
		}
	}

    
    
    /**
	 * 将文件复制到给定的文件夹
	 * @param src	原文件
	 * @param dst	目标文件
	 */
	private static void copy(File src, File dst) {
		InputStream in = null;
		OutputStream out = null;
		try {
			in = new BufferedInputStream(new FileInputStream(src), BUFFER_SIZE);
			out = new BufferedOutputStream(new FileOutputStream(dst),
					BUFFER_SIZE);
			byte[] buffer = new byte[BUFFER_SIZE];
			while (in.read(buffer) > 0) {
				out.write(buffer);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if (null != in)
					in.close();
				if (null != out)
					out.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}
	
	/**
	 * 获取文件的扩展名
	 * @param fileName	包含扩展名的文件名
	 * @return	文件的扩展名
	 */
	private static String getExtention(String fileName) {
		int pos = fileName.lastIndexOf(".");
		return fileName.substring(pos);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -