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

📄 userimport.java

📁 mail sent and revesive system jsp+mysql
💻 JAVA
字号:
package fengyun.Fastmail.beans.admin;

import java.io.*;
import java.util.*;
import java.sql.ResultSet;
import javax.servlet.http.*;
import fengyun.Fastmail.util.*;
import fengyun.Fastmail.beans.*;
//导入文件格式:姓名;学号;账号;密码
//Import File Rule: username;cardNumber;userid;password
public class UserImport {
  private static BeansConstants CONST = BeansConstants.getInstance();
  private static String userList = null;
  private static String userAdded = null;
  private static String userError = null;
  public static void poccess(HttpServletRequest request) {
    FileReader fr = null;
	BufferedReader br = null;
	MultipartRequest multi = null;
	Enumeration files = null;
	try {
	  multi = new MultipartRequest(request, ".");
	  files = multi.getFileNames();
	} catch (Exception ex) {
	      System.err.println("UserImport.poccess():");
	      ex.printStackTrace(System.err);
	}
	while (files.hasMoreElements()) {
	  String name = (String)files.nextElement();
	  File file = multi.getFile(name);
	  if (file != null) {
	    try {
    	  fr = new FileReader(file);
	      br = new BufferedReader(fr);
		  StringBuffer added = new StringBuffer();
		  StringBuffer error = new StringBuffer();
    	  String line = br.readLine();
	      while (line!=null) {
		    User user = new User(line);
		    if (user.exist()) {
		      error.append(line+"<br> Error: user already exist<br>");
		    } else { 
			  int status = userAdd(user);
			  switch(status) {
		  	  case CONST.OK : { added.append(line+"<br>"); break; }
		  	  case CONST.SQL_ERROR : { error.append(line+"<br>Error: sql error<br>"); break; }
	 	  	  case CONST.CHMODERROR : { error.append(line+"<br>Error: change mode error<br>"); break; }
		  	  case CONST.MAILDIREXISTS : { error.append(line+"<br>Error: maildir already exists<br>"); break; }
		  	  case CONST.CANTCREATEFOLD : { error.append(line+"<br>Error: maildir create error<br>"); break; }
		  	  default :{ added.append(line+"<br>"); break; }
			  }
		    }
			line = br.readLine();
		  }
		  userAdded = added.toString();
		  userError = error.toString();
	    } catch (Exception ex) {
	      System.err.println("UserImport.poccess():");
	      ex.printStackTrace(System.err);
	    } finally {
	   	  try { br.close(); } catch (Exception ex) {}
    	  try { fr.close(); } catch (Exception ex) {}
	    }
      }
	}
  }
  public static String getAdded() { return userAdded; }
  public static String getError() { return userError; }
  public static int userAdd(User user) {
    java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat (CONST.entimeformat);
    String regdate = formatter.format(new java.util.Date());
    String userid = user.getUserid();
    if (user.isReady()) {
	  StringBuffer profilesql = new StringBuffer("insert into profile (userid,regdate,username,certificateType,cardNumber,signup) values ('");
	  profilesql.append(userid + "','");
	  profilesql.append(regdate + "','");
	  profilesql.append(user.getUsername() + "',2,'");
	  profilesql.append(user.getCardNumber() + "','N')");
	  int spread = java.lang.Math.abs(new java.util.Random().nextInt()) % CONST.maxspread + 1;
	  String home = CONST.userhome + java.io.File.separator + spread + java.io.File.separator + userid;
	  StringBuffer mailboxsql = new StringBuffer("insert into mailbox (userid,password,home) values ('");
	  mailboxsql.append(userid + "',");
	  mailboxsql.append("password('" + user.getPassword() + "'),'");
	  mailboxsql.append(home + "')");
	  String[] folderlist = {"insert into folderlist (userid,folderindex,folderid,foldername,type) values ('" + userid + "',10000,'rev','收件箱',0)",
							 "insert into folderlist (userid,folderindex,folderid,foldername,type) values ('" + userid + "',20000,'snt','发件箱',0)",
							 "insert into folderlist (userid,folderindex,folderid,foldername,type) values ('" + userid + "',30000,'src','原稿箱',0)",
							 "insert into folderlist (userid,folderindex,folderid,foldername,type) values ('" + userid + "',40000,'dsb','垃圾箱',0)"};
	  try { //添加到数据库
		Mysql mysql = new Mysql();
		mysql.executeUpdate(profilesql.toString());
		mysql.executeUpdate(mailboxsql.toString());
		for(int i = 0;i < folderlist.length;i++) {
			mysql.executeUpdate(folderlist[i]);
		}
		mysql.close();
		mysql = null;
	  } catch (Exception ex) {
		ex.printStackTrace();
		return CONST.SQL_ERROR;
	  }
	  int status = MaildirMake.make(home + java.io.File.separator + CONST.maildir);
	  switch(status) {
	  case MaildirMake.OK : { return CONST.OK; }
	  case MaildirMake.CHANGEMOD_ERROR : { return CONST.CHMODERROR; }
	  case MaildirMake.MAILDIR_EXISTS : { return CONST.MAILDIREXISTS; }
	  case MaildirMake.CREATE_ERROR : { return CONST.CANTCREATEFOLD; }
	  default :{ return CONST.OK; }
	}
	} else {
	  return CONST.FORM_ERROR;
	}
  }
}

⌨️ 快捷键说明

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