Java 实战项目锤炼之校园宿舍管理系统的实现流程
作者:qq_1334611189 时间:2023-10-15 07:00:58
一、项目简述
功能:宿舍管理员,最高管理员,学生三个身份,包括学 生管理,宿舍管理员管理,考勤管理,宿舍楼管理,缺勤 记录管理,个人信息修改等等功能。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。
项目技术: JSP + Entity+ Servlert + html+ css + JavaScript + JQuery + Ajax 等等。
用户登录操作代码:
用户登录操作:
@Controller
public class LoginController {
@Autowired
private UserService userService;
@Autowired
private TeacherService teacherService;
@Autowired
private StudentService studentService;
//跳转登录页面
@GetMapping("/login")
public String login() {
return "login";
}
//登录操作
@PostMapping("/login")
@ResponseBody
public Map<String, Object> login(String userName, String password, String captcha, String type, HttpSession session) {
//判断用户名、密码、用户类型、验证码是否为空
if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(password) || StringUtils.isEmpty(captcha) || StringUtils.isEmpty(type)) {
return MapControl.getInstance().error("用户名或密码不能为空").getMap();
}
//获取系统生成的验证码
String _captcha = (String) session.getAttribute("captcha");
//先判断验证码是否正确
if (!(captcha.toLowerCase()).equals(_captcha.toLowerCase())) {
//验证码错误
return MapControl.getInstance().error("验证码错误").getMap();
}
//判断用户类型
if ("1".equals(type)) { //管理员验证登录
User user = userService.login(userName, MD5Utils.getMD5(password)); //对密码进行加密处理,因为数据库中存储的是加密后的密码
if (user != null) {
session.setAttribute("user", user);
session.setAttribute("type", 1);
return MapControl.getInstance().success().add("data", user).getMap();
} else {
return MapControl.getInstance().error("用户名或密码错误").getMap();
}
}
if ("2".equals(type)) { //老师验证登录
Teacher teacher = teacherService.login(userName, MD5Utils.getMD5(password));
if (teacher != null) {
session.setAttribute("user", teacher);
session.setAttribute("type", "2");
return MapControl.getInstance().success().add("data", teacher).getMap();
} else {
return MapControl.getInstance().error("用户名或密码错误").getMap();
}
}
if ("3".equals(type)) { //学生验证登录
Student student = studentService.login(userName, MD5Utils.getMD5(password));
if (student != null) {
session.setAttribute("user", student);
session.setAttribute("type", "3");
return MapControl.getInstance().success().add("data", student).getMap();
} else {
return MapControl.getInstance().error("用户名或密码错误").getMap();
}
}
return MapControl.getInstance().getMap();
}
}
用户登出操作代码:
用户登出操作:
@Controller
public class LogoutController {
//退出操作
@RequestMapping("/logout")
public String logout(HttpSession session) {
//让session失效
session.invalidate();
//重定向到登录页
return "redirect:login";
}
}
来源:https://blog.csdn.net/m0_59687645/article/details/121223512
标签:Java,校园宿舍管理,管理系统,实战
0
投稿
猜你喜欢
JDK源码中一些实用的“小技巧”总结
2022-10-21 08:17:50
Android实现圆形渐变加载进度条
2021-07-17 18:38:06
Android 自定义底部上拉控件的实现方法
2023-08-18 18:41:19
C# Socket 发送&接收&返回 简单应用实例
2022-09-18 20:08:20
Java系统变量参数获取设置System.getProperties()的方法
2021-07-22 04:52:47
pagehelper插件显示total为-1或1的问题
2021-11-04 01:02:39
Java 由浅入深带你掌握图的遍历
2022-05-21 07:21:44
java实现PDF转图片的方法
2021-05-24 04:29:59
RxJava 触发流基本原理源码解析
2023-06-24 06:02:57
JAVA JDK8 List获取属性列表
2023-04-12 04:32:42
简单了解Spring Framework5.0新特性
2021-08-06 02:21:46
浅谈如何在项目中使用Spring Cloud Alibaba Sentinel组件
2022-07-12 14:32:17
一文详解Reactor模型与实现示例
2023-11-13 12:22:09
C++实现哈夫曼树编码解码
2022-02-13 15:48:09
Android实现向Launcher添加快捷方式的方法
2022-09-14 09:26:41
如何自定义hibernate validation注解示例代码
2021-08-31 12:05:51
Java反射机制在Spring IOC中的应用详解
2023-11-10 14:09:32
MyBatis的SQL执行结果和客户端执行结果不一致问题排查
2022-12-30 20:37:22
Android开发中自定义 editText下划线
2023-03-30 13:40:35
三种Android单击事件onclick的实现方法
2022-05-21 16:54:03