我是靠谱客的博主 年轻可乐,这篇文章主要介绍Java 实战项目之学生信息管理系统的实现流程,现在分享给大家,希望可以做个参考。

一、项目简述

功能包括: 用户的登录注册,学生信息管理,教师信息管理,班级信 息管理,采用mvcx项目架构,覆盖增删改查,包括学生, 教币班级的信息导出上传导入等等功能。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + maven等等。

用户信息管理控制器:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
/** * 用户管理控制器 */ @RequestMapping("/user/") @Controller public class UserController { @Autowired private IUserService userService; @Autowired private IRoleService roleService; @Resource private ProcessEngineConfiguration configuration; @Resource private ProcessEngine engine; @GetMapping("/index") @ApiOperation("跳转用户页接口") @PreAuthorize("hasRole('管理员')") public String index(String menuid,Model model){ List<Role> roles = queryAllRole(); model.addAttribute("roles",roles); model.addAttribute("menuid",menuid); //用户首页 return "views/user/user_list"; } @GetMapping("/listpage") @ApiOperation("查询用户分页数据接口") @ApiImplicitParams({ @ApiImplicitParam(name = "UserQuery", value = "用户查询对象", defaultValue = "userQuery对象") }) @ResponseBody @PreAuthorize("hasRole('管理员')") public PageList listpage(UserQuery userQuery){ return userService.listpage(userQuery); } //添加用户 @PostMapping("/addUser") @ApiOperation("添加用户接口") @ResponseBody public Map<String,Object> addUser(User user){ Map<String, Object> ret = new HashMap<>(); ret.put("code",-1); if(StringUtils.isEmpty(user.getUsername())){ ret.put("msg","请填写用户名"); return ret; } if(StringUtils.isEmpty(user.getPassword())){ ret.put("msg","请填写密码"); return ret; } if(StringUtils.isEmpty(user.getEmail())){ ret.put("msg","请填写邮箱"); return ret; } if(StringUtils.isEmpty(user.getTel())){ ret.put("msg","请填写手机号"); return ret; } if(StringUtils.isEmpty(user.getHeadImg())){ ret.put("msg","请上传头像"); return ret; } if(userService.addUser(user)<=0) { ret.put("msg", "添加用户失败"); return ret; } ret.put("code",0); ret.put("msg","添加用户成功"); return ret; } /** * 修改用户信息操作 * @param user * @return */ @PostMapping("/editSaveUser") @ApiOperation("修改用户接口") @PreAuthorize("hasRole('管理员')") @ResponseBody public Message editSaveUser(User user){ if(StringUtils.isEmpty(user.getUsername())){ return Message.error("请填写用户名"); } if(StringUtils.isEmpty(user.getEmail())){ return Message.error("请填写邮箱"); } if(StringUtils.isEmpty(user.getTel())){ return Message.error("请填写手机号"); } try { userService.editSaveUser(user); return Message.success(); } catch (Exception e) { e.printStackTrace(); return Message.error("修改用户信息失败"); } } //添加用户 @GetMapping("/deleteUser") @ApiOperation("删除用户接口") @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "如:88",required = true) }) @PreAuthorize("hasRole('管理员')") @ResponseBody public AjaxResult deleteUser(@RequestParam(required = true) Long id){ AjaxResult ajaxResult = new AjaxResult(); try { userService.deleteUser(id); } catch (Exception e) { e.printStackTrace(); return new AjaxResult("删除失败"); } return ajaxResult; } @PostMapping(value="/deleteBatchUser") @ApiOperation("批量删除用户接口") @PreAuthorize("hasRole('管理员')") @ResponseBody public AjaxResult deleteBatchUser(String ids){ String[] idsArr = ids.split(","); List list = new ArrayList(); for(int i=0;i<idsArr.length;i++){ list.add(idsArr[i]); } try{ userService.batchRemove(list); return new AjaxResult(); }catch(Exception e){ return new AjaxResult("批量删除失败"); } } //查询所有角色 public List<Role> queryAllRole(){ return roleService.queryAll(); } //添加用户的角色 @PostMapping("/addUserRole") @ApiOperation("添加用户角色接口") @ApiImplicitParams({ @ApiImplicitParam(name = "paramMap", value = "如:{userId:1,[1,2,3,4]]}") }) @ResponseBody public AjaxResult addUserRole(@RequestBody Map paramMap){ AjaxResult ajaxResult = new AjaxResult(); String userId = (String)paramMap.get("userId"); List roleIds = (List) paramMap.get("roleIds"); try { //添加用户对应的角色 roleService.addUserRole(userId,roleIds); return ajaxResult; }catch (Exception e){ e.printStackTrace(); return new AjaxResult("保存角色失败"); } } //添加用户 @RequestMapping("/regSaveUser") @ResponseBody public Long addTeacher(User user){ System.out.println("保存用户...."+user); userService.addUser(user); //保存工作流程操作 IdentityService is = engine.getIdentityService(); // 添加用户组 org.activiti.engine.identity.User userInfo = userService.saveUser(is, user.getUsername()); // 添加用户对应的组关系 Group stuGroup = new GroupEntityImpl(); stuGroup.setId("stuGroup"); Group tGroup = new GroupEntityImpl(); tGroup.setId("tGroup"); if(user.getType() == 2) { //保存老师组 userService.saveRel(is, userInfo, tGroup); } if(user.getType() == 3) { //保存学生组 userService.saveRel(is, userInfo, stuGroup); } Long userId = user.getId(); return userId; } /** * 修改密码页面 * @return */ @RequestMapping(value="/update_pwd",method=RequestMethod.GET) public String updatePwd(){ return "views/user/update_pwd"; } /** * 修改密码操作 * @param oldPwd * @param newPwd * @return */ @ResponseBody @PostMapping("/update_pwd") public Message updatePassword(@RequestParam(name="oldPwd",required=true)String oldPwd, @RequestParam(name="newPwd",required=true)String newPwd){ String username = CommonUtils.getLoginUser().getUsername(); User userByUserName = userService.findUserByUserName(username); if(userByUserName!=null){ String password = userByUserName.getPassword(); BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(); boolean matches = bCryptPasswordEncoder.matches(oldPwd, password); if(!matches){ return Message.error("旧密码不正确");//true } userByUserName.setPassword(bCryptPasswordEncoder.encode(newPwd)); if(userService.editUserPassword(userByUserName)<=0){ return Message.error("密码修改失败"); } } return Message.success(); } /** * 清除缓存 * @param request * @param response * @return */ @ResponseBody @PostMapping("/clear_cache") public Message clearCache(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setHeader("Cache-Control","no-store"); response.setHeader("Pragrma","no-cache"); response.setDateHeader("Expires",0); return Message.success(); } }

教师管理接口控制器:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
@RequestMapping("/teacher") @Controller @Api(tags = "教师管理接口") public class TeacherController { @Autowired private IUserService userService; @Autowired private IClassesService classesService; @Resource private ProcessEngine engine; @Autowired private IOperaterLogService operaterLogService; //老师列表 @RequestMapping("/index") public String index(Model model){ //用户首页 model.addAttribute("classes",classesService.queryAll()); return "views/teacher/teacher_list"; } @RequestMapping("/listpage") @ResponseBody public PageList listpage(UserQuery userQuery){ userQuery.setType(2L);//2表示老师 return userService.listpage(userQuery); } /** * 添加教师操作 * @param user * @return */ @PostMapping("/addTeacher") @ApiOperation("添加教师接口") @ResponseBody @PreAuthorize("hasRole('管理员')") public Message addTeacher(User user){ if(StringUtils.isEmpty(user.getUsername())){ return Message.error("请填写用户名"); } if(StringUtils.isEmpty(user.getPassword())){ return Message.error("请填写密码"); } if(StringUtils.isEmpty(user.getEmail())){ return Message.error("请填写邮箱"); } if(StringUtils.isEmpty(user.getTel())){ return Message.error("请填写手机号"); } User userByUserName = userService.findUserByUserName(user.getUsername()); if(userByUserName!=null){ return Message.error("用户名已存在"); } user.setType(2); if(userService.addUser(user)<=0){ return Message.error("教师添加失败"); } //保存工作流程操作 IdentityService is = engine.getIdentityService(); // 添加用户组 org.activiti.engine.identity.User userInfo = userService.saveUser(is, user.getUsername()); Group tGroup = new GroupEntityImpl(); tGroup.setId("tGroup"); userService.saveRel(is, userInfo, tGroup); operaterLogService.add("添加教师成功,教师名称:"+user.getUsername()); return Message.success(); } /** * 修改教师操作 * @param user * @return */ @PostMapping("/editSaveStu") @ApiOperation("修改教师接口") @PreAuthorize("hasRole('管理员')") @ResponseBody public Message editSaveStu(User user){ if(StringUtils.isEmpty(user.getUsername())){ return Message.error("请填写用户名"); } if(StringUtils.isEmpty(user.getEmail())){ return Message.error("请填写邮箱"); } if(StringUtils.isEmpty(user.getTel())){ return Message.error("请填写手机号"); } User userByUserName = userService.findUserByUserName(user.getUsername()); if(userByUserName!=null){ if(!userByUserName.getId().equals(user.getId())){ return Message.error("该用户名已存在"); } } try { userService.editSaveUser(user); operaterLogService.add("编辑教师成功,教师名称:"+user.getUsername()); return Message.success(); } catch (Exception e) { e.printStackTrace(); return Message.error("教师信息编辑失败"); } } }

学生管理接口控制器:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
@RequestMapping("/student") @Controller @Api(tags = "学生管理接口") public class StudentController { @Autowired private IUserService userService; @Autowired private ICourseService courseService; @Autowired private IClassesService classesService; @Resource private ProcessEngine engine; @Autowired private IOperaterLogService operaterLogService; //老师列表 //后台查询学生列表 @RequestMapping("/index") public String index(Model model){ //用户首页 model.addAttribute("courses",courseService.queryAll()); model.addAttribute("classes",classesService.queryAll()); return "views/student/student_list"; } @RequestMapping("/listpage") @ResponseBody public PageList listpage(UserQuery userQuery){ userQuery.setType(3L);//2表示老学生 return userService.listpage(userQuery); } /** * 添加学生操作 * @param user * @return */ @PostMapping("/addSaveStu") @ApiOperation("添加学生接口") @PreAuthorize("hasRole('管理员')") @ResponseBody public Message addSaveStudent(User user){ if(StringUtils.isEmpty(user.getUsername())){ return Message.error("请填写用户名"); } if(StringUtils.isEmpty(user.getPassword())){ return Message.error("请填写密码"); } if(StringUtils.isEmpty(user.getEmail())){ return Message.error("请填写邮箱"); } if(StringUtils.isEmpty(user.getTel())){ return Message.error("请填写手机号"); } if(StringUtils.isEmpty(user.getStunum())){ return Message.error("请填写学号"); } User userByUserName = userService.findUserByUserName(user.getUsername()); if(userByUserName!=null){ return Message.error("用户名已存在"); } if(userService.findByStuNum(user.getStunum())!=null){ return Message.error("该学号已存在"); } user.setType(3); if(userService.addUser(user)<=0){ return Message.error("学生添加失败"); } //保存工作流程操作 IdentityService is = engine.getIdentityService(); // 添加用户组 org.activiti.engine.identity.User userInfo = userService.saveUser(is, user.getUsername()); // 添加用户对应的组关系 Group stuGroup = new GroupEntityImpl(); stuGroup.setId("stuGroup"); userService.saveRel(is, userInfo, stuGroup); operaterLogService.add("添加学生成功,学生名称:"+user.getUsername()); return Message.success(); } //修改用户editSaveUser @PostMapping("/editSaveStu") @ApiOperation("修改学生接口") @PreAuthorize("hasRole('管理员')") @ResponseBody public Message editSaveStu(User user){ if(StringUtils.isEmpty(user.getUsername())){ return Message.error("请填写用户名"); } if(StringUtils.isEmpty(user.getEmail())){ return Message.error("请填写邮箱"); } if(StringUtils.isEmpty(user.getTel())){ return Message.error("请填写手机号"); } User userByUserName = userService.findUserByUserName(user.getUsername()); if(userByUserName!=null){ if(!userByUserName.getId().equals(user.getId())){ return Message.error("该用户名已存在"); } } try { userService.editSaveUser(user); operaterLogService.add("编辑学生成功,学生名称:"+user.getUsername()); return Message.success(); } catch (Exception e) { e.printStackTrace(); return Message.error("学生编辑失败"); } } //editSaveStuXk @PostMapping("/editSaveStuXk") @ApiOperation("修改用户接口") @ApiImplicitParams({ @ApiImplicitParam(name = "User", value = "学生选课") }) @ResponseBody public AjaxResult editSaveStuXk(User user){ try { userService.editSaveXk(user); operaterLogService.add("修改学生选课成功,学生名称:"+user.getUsername()); return new AjaxResult(); } catch (Exception e) { e.printStackTrace(); } return new AjaxResult("修改失败"); } }

到此这篇关于Java 实战项目之学生信息管理系统的实现流程的文章就介绍到这了,更多相关Java 学生信息管理系统内容请搜索靠谱客以前的文章或继续浏览下面的相关文章希望大家以后多多支持靠谱客!

最后

以上就是年轻可乐最近收集整理的关于Java 实战项目之学生信息管理系统的实现流程的全部内容,更多相关Java 实战项目之学生信息管理系统内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(107)

评论列表共有 0 条评论

立即
投稿
返回
顶部