首页>代码>vue+ssm前后分离的入职测试系统>/springlogin/src/it/com/action/InitAction.java
package it.com.action;

import it.com.dao.PowerControl;
import it.com.dao.UserDao;
import net.sf.json.JSONArray;

import java.io.IOException;
import java.io.PrintWriter;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
@org.springframework.stereotype.Controller

public class InitAction{
	@Resource(name="ud")
	UserDao ud;
	@Resource
	PowerControl power;
	
	
public PowerControl getPower() {
		return power;
	}

	public void setPower(PowerControl power) {
		this.power = power;
	}

public UserDao getUd() {
		return ud;
	}

	public void setUd(UserDao ud) {
		this.ud = ud;
	}
/*=====================================================================	登录注册忘记密码=============================================*/
	@RequestMapping(value="login.action")
	public void handleRequest(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
		System.out.println("进入server");
		System.out.println("hhhhh");
		String username=arg0.getParameter("username");
		String userpass1=arg0.getParameter("password");
		  BigInteger bigInteger=null;//高精度数据类型
		try {
			MessageDigest md = MessageDigest.getInstance("MD5");//说明加密类型
		 byte[] inputData = userpass1.getBytes();//字符转换成字节
		 md.update(inputData); //加密
		 bigInteger = new BigInteger(md.digest());//转换成高精度数字类型 
		 System.out.println("MD加密后:" + bigInteger.toString()); //输出
		} catch (NoSuchAlgorithmException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String userpass=bigInteger.toString();
		System.out.println(username+"-------"+userpass);
		int loginNum=ud.login(username,userpass);
		System.out.println(loginNum);
		PrintWriter out=arg1.getWriter();
		out.println(loginNum);
	}
	@RequestMapping(value="getqusetion.action")
	public void getqusetion(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
		List list=ud.GetQusetion();
		PrintWriter out=arg1.getWriter();
		JSONArray jsonArray=JSONArray.fromObject(list);
		out.println(jsonArray);
	}
	@RequestMapping(value="selectuser.action")
	public void selectuser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
		String name=arg0.getParameter("username");
		List list=ud.selectuserOn(name);
		PrintWriter out=arg1.getWriter();
		if (list.size()!=0) {
			out.println("1");
		}else {
			out.println("2");
		}
	}
	@RequestMapping(value="insert.action")
	public void insertUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
		String name=arg0.getParameter("username");
		PrintWriter out=arg1.getWriter();
			String pass1=arg0.getParameter("password");
			  BigInteger bigInteger=null;//高精度数据类型
				try {
					MessageDigest md = MessageDigest.getInstance("MD5");//说明加密类型
					 byte[] inputData = pass1.getBytes();//字符转换成字节
				     md.update(inputData); //加密
				     bigInteger = new BigInteger(md.digest());//转换成高精度数字类型 
				     System.out.println("MD加密后:" + bigInteger.toString()); //输出
				} catch (NoSuchAlgorithmException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				String pass=bigInteger.toString();
			int qusetion1=Integer.parseInt(arg0.getParameter("qusetion1"));
			String answer1=arg0.getParameter("answer1");
			int qusetion2=Integer.parseInt(arg0.getParameter("qusetion2"));
			String answer2=arg0.getParameter("answer2");
			int qusetion3=Integer.parseInt(arg0.getParameter("qusetion3"));
			String answer3=arg0.getParameter("answer3");
			String phone=arg0.getParameter("phone");
			String email=arg0.getParameter("email");
			String sfzid=arg0.getParameter("sfzid");
			String logo=arg0.getParameter("logoimg");
			System.out.println();
			ud.InsertUser( name,pass,sfzid,phone,email,logo);
			List<Map> list=ud.FindMsg(name);
			int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
			System.out.println(list.get(0).get("nameid"));
			ud.InsertSecurity(answer1,qusetion1,nameid);
			ud.InsertSecurity(answer2,qusetion2,nameid);
			ud.InsertSecurity(answer3,qusetion3,nameid);

		}

	@RequestMapping(value="forgetpass.action")
	public void forgetpass(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
		String name=arg0.getParameter("username");
		int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
		System.out.println(nameid);
		List<Map> list=ud.FindQusetionByNameid(nameid);
		System.out.println(list.size()+"----=========");
		Random randomNum=new Random();
		int num1,num2;
		while (true) {
			num1=randomNum.nextInt(list.size());
			num2=randomNum.nextInt(list.size());
			if(num1!=num2) {
				break;
			}
		}
		System.out.println(num1+"---"+num2);
		System.out.println(list.toString());
		List<Map> newlist=new ArrayList<Map>();
		System.out.println(list.get(num1));
		System.out.println(list.get(num2));
		newlist.add(list.get(num1));
		newlist.add(list.get(num2));
		
		JSONArray jsonArray=JSONArray.fromObject(newlist);
		PrintWriter out=arg1.getWriter();
		out.println(jsonArray);
	}
	@RequestMapping(value="VerificationSecurity.action")
	public void VerificationSecurity(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			String name=arg0.getParameter("username");
			PrintWriter out=arg1.getWriter();
			int qusetion1=Integer.parseInt(arg0.getParameter("qusetion1"));
			String answer1=arg0.getParameter("answer1");
			int qusetion2=Integer.parseInt(arg0.getParameter("qusetion2"));
			String answer2=arg0.getParameter("answer2");
			int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
			System.out.println(ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer")+"---"+answer1+"---"+ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2));
			if (ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer").equals(answer1)&&ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2)) {
				out.println(0);
			}else if (ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer").equals(answer1)) {
				out.println(1);
			} else if (ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2)) {
				out.println(2);
			} else {
				out.println(3);
			}

		}

/*====================================模块初始化用户信息================================*/
	/*登录初始化用户信息*/
	@RequestMapping(value="initUser.action")
	public void initUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			String name=arg0.getParameter("name");
			PrintWriter out=arg1.getWriter();
			List user=ud.FindMsg(name);

			JSONArray jsonArray=JSONArray.fromObject(user);
			out.println(jsonArray);
		}
	/*登录初始化 修改用户信息*/
	@RequestMapping(value="updateUser.action")
	public void updateUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			String name=arg0.getParameter("username");
			String phone=arg0.getParameter("phone");
			String email=arg0.getParameter("email");
			String logo=arg0.getParameter("logo");
			String sfzid=arg0.getParameter("sfzid");
			PrintWriter out=arg1.getWriter();
			ud.UpdateUserMsgyByYzid(name, sfzid, logo, phone, email);
			out.println("success");
		}

/*==========================================	用户管理  初始化 及 增删改 =======================================*/
	
	/*初始化页面遍历所有用户 及记录登录用户信息*/
	@RequestMapping(value="main.action")
	public void initList(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			int begin=Integer.parseInt(arg0.getParameter("begin"));
			int size=Integer.parseInt(arg0.getParameter("size"));
			int beginNum=(begin-1)*size;
			String name=arg0.getParameter("name");
			
			PrintWriter out=arg1.getWriter();
			List<Map> list=ud.SelectAllUsersByLimit(beginNum, size);
			//当前管理员不具备的权限
			List<Map> nameidList=ud.selectuserOn(name);
			int nameid=(int)nameidList.get(0).get("nameid");
			/*System.out.println(nameidList.get(0).get("nameid"));*/
			List<Map> powerNull = power.findpowerNotHave(nameid);
			boolean flag1=true;
			boolean flag2=true;
			boolean flag3=true;
			boolean delete=true;
			for (Map power : powerNull) {
				if(power.get("powerid").toString().equals("1")) {
					flag1=false;
				}
				if(power.get("powerid").toString().equals("2")) {
					flag2=false;
				}
				if(power.get("powerid").toString().equals("3")) {
					flag3=false;
				}
				if(power.get("powerid").toString().equals("4")) {
					delete=false;
				}
			}
			
			for (Map map : list) {
				if(flag1==false) {
					map.put("phone", "******");
				}
				if(flag2==false) {
					map.put("email", "******");
				}
				if(flag3==false) {
					map.put("sfzid", "******");
				}
			}
			int total=ud.SelectAllUsers().size();
			System.out.println(list);
			JSONArray json1=JSONArray.fromObject(list);
			//转json的时候,字符串的引号存在转义的问题,注意一下
			out.print("{\"total\":"+total+",\"users\":");
			out.println(json1);
			out.print(",\"delete\":"+delete);
	        out.print("}"); 
		}
	
	//手机找回密码
	@RequestMapping(value="findphoneByname.action")
	public void findphoneByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
		String name=request.getParameter("username");
	
		String phone=ud.selectphoneByname(name);
		char[] strs =phone.toCharArray();
		StringBuffer phoneshow = new StringBuffer();
		for (int i = 0; i < phone.length(); i++) {
			if(i>=3) {
				strs[i]='*';
			}
			phoneshow.append(strs[i]);
		}
		PrintWriter out = response.getWriter();
		out.print(phoneshow);
	}
	//邮箱找回密码
	@RequestMapping(value="findmailByname.action")
	public void findmailByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
		String name=request.getParameter("username");
		
		String email=ud.selectemailByname(name);
		char[] strs =email.toCharArray();
		StringBuffer emailshow = new StringBuffer();
		for (int i = 0; i < email.length(); i++) {
			if(i>=3) {
				strs[i]='*';
			}
			emailshow.append(strs[i]);
		}
		PrintWriter out = response.getWriter();
		out.print(emailshow);
	}
	//找回密码修改页
	@RequestMapping(value="updatePasswordByname.action")
	public void updatePasswordByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
		String name=request.getParameter("username");
		String password=ud.md5(request.getParameter("password"));
		String email=request.getParameter("email");
		String phone=request.getParameter("phone");
		String sfz=request.getParameter("sfz");
		ud.updatePasswordByname(password, phone, email, sfz, name);
		PrintWriter out = response.getWriter();
		out.println("success");
		
	}
	
	
	
/*================================================模板action===========================================================*/
	@RequestMapping(value="testinit.action")
	public void innitxx(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			String name=arg0.getParameter("username");
			PrintWriter out=arg1.getWriter();
			List<Map> list=ud.GetQusetion();
			JSONArray jsonArray=JSONArray.fromObject(list);
			out.println(jsonArray);
		}
	
	@RequestMapping(value="add.action")
	public void addList(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			String wenti=arg0.getParameter("wenti");
			String type=arg0.getParameter("type");

			ud.InsertSecurityByAdmin(wenti,type);
			PrintWriter out=arg1.getWriter();
			out.println("success");
		}
	@RequestMapping(value="remove.action")
	public void removeListByYzid(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			int yzid=Integer.parseInt(arg0.getParameter("yzid"));
			System.out.println(yzid);
			ud.DeleteSecurityByYzid(yzid);
			PrintWriter out=arg1.getWriter();
			out.println("success");
	}
	
	@RequestMapping(value="edit.action")
	public void UpdateByYzid(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
			int yzid=Integer.parseInt(arg0.getParameter("yzid"));
			String security=arg0.getParameter("wenti");
			String type=arg0.getParameter("type");
			System.out.println(yzid);
			ud.UpdateSecurityByYzid(yzid, security, type);
			PrintWriter out=arg1.getWriter();
			out.println("success");
	}

}
/*================================================模板action===========================================================*/
最近下载更多
2206371875  LV7 2024年3月14日
364550246  LV15 2023年11月7日
最代码-宋家辉  LV61 2022年10月24日
29723247  LV8 2022年8月4日
330786215  LV14 2022年4月18日
13940562934  LV22 2021年12月29日
Demo1111  LV30 2021年10月7日
ouzhizi  LV4 2021年8月18日
Kentucky  LV5 2021年7月23日
Lawrence  LV4 2021年7月4日
最近浏览更多
zolscy  LV24 2024年11月28日
897258976  LV8 2024年8月29日
TY0165  LV20 2024年6月24日
XiaoSong888  LV3 2024年5月30日
lilitu  LV6 2024年5月29日
alljavaers 2024年4月17日
暂无贡献等级
2206371875  LV7 2024年3月14日
zackery  LV9 2023年11月26日
364550246  LV15 2023年11月7日
330786215  LV14 2023年6月29日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友