makeupload1.java

来自「JAVA邮件系统」· Java 代码 · 共 86 行

JAVA
86
字号
import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class MakeUpload1 extends HttpServlet 
{

    public void doPost(HttpServletRequest request,
                      HttpServletResponse response)
        throws IOException
    {
		doGet(request,response);
	}
	
	public void doGet(HttpServletRequest request,
                      HttpServletResponse response)
        throws IOException
    {
		HtmlOut htmlOut = new HtmlOut (response);
		
		// 得到名字和口令
		String name;
		String pass;
		name = CommonMethods.GetUserName(request);
		pass = CommonMethods.GetUserPass(request);

		Person p=new Person();
		p.setName (name);
		if( p.getName ()==null || (!p.checkPassword(pass))
			||(!p.IsSuperMan ()&&!p.IsManager ()) )
		{
	    	htmlOut.setErrorID (htmlOut.SHOW_SIMPLE_MESSAGE ,"",
								"请先登录!","/manage/");
			htmlOut.outHtml();
			return;
		}
		
		MimeSplit allParam = new MimeSplit();
		allParam.dealWithIt(getUploadFile(request));
		String sD = allParam.getMimeKey("dir");
		String sFile= allParam.getMimeKey("file");
		if( sFile==null ){
			htmlOut.addString ("数据不全!");
			htmlOut.outHtml();
			return;
		}

		byte[] sFileContent = allParam.getMimeKeyContent ("file");
		String sDir=CommonMethods.sHtmlPath;
				
		if(sD==null)
			sD="";
		if( sD.indexOf(':')==-1 )
			sDir += sD;
		else
			sDir = sD;
		sDir += sFile;
		CommonMethods.WriteToDisk (sFileContent,sDir);
		htmlOut.setErrorID (htmlOut.SHOW_SIMPLE_MESSAGE ,"","已成功上载文件","/WebManage");
		htmlOut.outHtml();
	}
	
	MailBuff getUploadFile( HttpServletRequest request )
	{
		int nBufferLength=10240;
		MailBuff mb = new MailBuff (nBufferLength,nBufferLength);
		try{
			byte[] b1=new byte[nBufferLength];
			int nSize=0;
			ServletInputStream sis = request.getInputStream();
			try {
				while((nSize=sis.read(b1,0,nBufferLength))>0){
					mb.append (b1,0,nSize);
				}
			}catch(Exception ex) {
			}
		}catch(Exception e){
			return null;
		}
		return mb;
	}
}
	

⌨️ 快捷键说明

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