003.实现用户登录Model层 发布时间:2023-11-09 21:09:09 364 相关标签:
1.创建实体类(entity下) package com.imooc.oa.entity; public class User { private Long userId; //user_id private String username; private String password; private Long employeeId; private Integer salt; @Override public String toString() { return "User{" + "userId=" + userId + ", username='" + username + '\'' + ", password='" + password + '\'' + ", employeeId=" + employeeId + ", salt=" + salt + '}'; } public Long getUserId() { return userId; } public void setUserId(Long userId) { this.userId = userId; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Long getEmployeeId() { return employeeId; } public void setEmployeeId(Long employeeId) { this.employeeId = employeeId; } public Integer getSalt() { return salt; } public void setSalt(Integer salt) { this.salt = salt; } } 2.创建user.xml(resources/user.xml) select * from sys_user where username = #{value} 3.在mybatis-config.xml进行注册 4.创建mapper(com.imooc.oa.entity.User)zaimvc业务中,mapper不包含业务逻辑,只操作数据库 package com.imooc.oa.mapper; import com.imooc.oa.entity.User; import com.imooc.oa.utils.MybatisUtils; public class UserMapper { public User selectByUsername(String username) { User user = (User) MybatisUtils.executeQuery(sqlSession -> sqlSession.selectOne("usermapper.selectByUsername", username)); return user; } } 5.在service中进行业务逻辑(package com.imooc.oa.service) package com.imooc.oa.service; import com.imooc.oa.entity.User; import com.imooc.oa.mapper.UserMapper; import com.imooc.oa.service.exception.LoginException; public class UserService { private UserMapper userMapper = new UserMapper(); /** * 根据前台输入进行登录校验 * @param username 前台输入的用户名 * @param password 前台输入的密码 * @return 校验通过后,包含对应用户数据的User实体类 * @throws LoginException 用户登录异常 */ public User checkLogin(String username , String password){ User user = userMapper.selectByUsername(username); if(user == null){ throw new LoginException("用户名不存在"); } if(!password.equals(user.getPassword())){ throw new LoginException("密码错误"); } return user; } } 5.1在service包下创建自定义异常exception(com.imooc.oa.service.exception) package com.imooc.oa.service.exception; public class LoginException extends RuntimeException{ public LoginException(String message){ super(message);//使用父类的方法 } }
文章来源: https://blog.51cto.com/u_15718681/5871192
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报