关于控制器的讲解如下:
在登录校验处理的控制器中,我们一共提供了三种方式
第一种:
@RequestMapping("/doLogin")
public String doLogin(User user, Model model) throws UnsupportedEncodingException{
//得到的是乱码(jsp页面将参数按照UTF-8编码后传入后台,后台解析的时候使用的是ISO-8859-1解析,因此乱码)
//String loginacct = user.getLoginacct();
//将乱码字符串按照错误的编码方式转换为原始的字节码
//byte[] bs = loginacct.getBytes("ISO-8859-1");
//将原始的字节码按照正确的编码转换为正确的文字
//loginacct = new String(bs, "UTF-8");
//一、获取表单数据
//1)HttpServletRequest
//2)在方法参数列表中增加表单对应的参数,名称相同(String loginacct, String userpswd)
//3)将表单数据封装为实体类对象
//二、查询用户信息
User dbUser = userService.queryForLogin(user);
//三、判断用户信息是否存在
if(dbUser != null) {
//登录成功,跳转到主页面(转发)
return "main";
} else {
//登录失败,跳转回到登录页面,提示错误信息
String errorMsg = "登录账号或密码不正确,请重新输入";
//用于保存错误信息