Java项目:学生信息管理系统(java+SSM+JSP+layui+maven+mysql)——计算机毕业设计
2021/12/18 2:22:33
本文主要是介绍Java项目:学生信息管理系统(java+SSM+JSP+layui+maven+mysql)——计算机毕业设计,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、项目简述
功能包括:
三角色管理: 学生,教师,管理员,在线选课,成绩录入,学生管理,选课管理,教室管理等等。学生管理可以查看所有学生并操作、添加学生;查看学生选报课程详情等等。教师管理可以查看所有教师并操作、添加教师等等。班级管理可以查看所有班级信息并操作、添加班级等等。
二、项目运行
环境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
项目技术:
JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等;
系统用户控制层:
/**
- 系统用户
*/
@RestController
@RequestMapping("/sys/user")
public class SysUserController extends AbstractController {
@Autowired
private SysUserService sysUserService;
@Autowired
private SysUserRoleService sysUserRoleService;
/** * 所有用户列表 */ @RequestMapping("/list") @RequiresPermissions("sys:user:list") public R list(@RequestParam Map<String, Object> params){ PageUtils page = sysUserService.queryPage(params); return R.ok().put("page", page); } /** * 获取登录的用户信息 */ @RequestMapping("/info") public R info(){ return R.ok().put("user", getUser()); } /** * 修改登录用户密码 */ @SysLog("修改密码") @RequestMapping("/password") public R password(String password, String newPassword){ Assert.isBlank(newPassword, "新密码不为能空"); //原密码 password = ShiroUtils.sha256(password, getUser().getSalt()); //新密码 newPassword = ShiroUtils.sha256(newPassword, getUser().getSalt()); //更新密码 boolean flag = sysUserService.updatePassword(getUserId(), password, newPassword); if(!flag){ return R.error("原密码不正确"); } return R.ok(); } /** * 用户信息 */ @RequestMapping("/info/{userId}") @RequiresPermissions("sys:user:info") public R info(@PathVariable("userId") Long userId){ SysUserEntity user = sysUserService.getById(userId); //获取用户所属的角色列表 List<Long> roleIdList = sysUserRoleService.queryRoleIdList(userId); user.setRoleIdList(roleIdList); return R.ok().put("user", user); } /** * 保存用户 */ @SysLog("保存用户") @RequestMapping("/save") @RequiresPermissions("sys:user:save") public R save(@RequestBody SysUserEntity user){ ValidatorUtils.validateEntity(user, AddGroup.class); sysUserService.saveUser(user); return R.ok(); } /** * 修改用户 */ @SysLog("修改用户") @RequestMapping("/update") @RequiresPermissions("sys:user:update") public R update(@RequestBody SysUserEntity user){ ValidatorUtils.validateEntity(user, UpdateGroup.class); sysUserService.update(user); return R.ok(); } /** * 删除用户 */ @SysLog("删除用户") @RequestMapping("/delete") @RequiresPermissions("sys:user:delete") public R delete(@RequestBody Long[] userIds){ if(ArrayUtils.contains(userIds, 1L)){ return R.error("系统管理员不能删除"); } if(ArrayUtils.contains(userIds, getUserId())){ return R.error("当前用户不能删除"); } sysUserService.removeByIds(Arrays.asList(userIds)); return R.ok(); }
}
角色管理控制层:
/**
- 角色管理
*/
@RestController
@RequestMapping("/sys/role")
public class SysRoleController extends AbstractController {
@Autowired
private SysRoleService sysRoleService;
@Autowired
private SysRoleMenuService sysRoleMenuService;
@Autowired
private SysRoleDeptService sysRoleDeptService;
/** * 角色列表 */ @RequestMapping("/list") @RequiresPermissions("sys:role:list") public R list(@RequestParam Map<String, Object> params){ PageUtils page = sysRoleService.queryPage(params); return R.ok().put("page", page); } /** * 角色列表 */ @RequestMapping("/select") @RequiresPermissions("sys:role:select") public R select(){ List<SysRoleEntity> list = sysRoleService.list(); return R.ok().put("list", list); } /** * 角色信息 */ @RequestMapping("/info/{roleId}") @RequiresPermissions("sys:role:info") public R info(@PathVariable("roleId") Long roleId){ SysRoleEntity role = sysRoleService.getById(roleId); //查询角色对应的菜单 List<Long> menuIdList = sysRoleMenuService.queryMenuIdList(roleId); role.setMenuIdList(menuIdList); //查询角色对应的部门 List<Long> deptIdList = sysRoleDeptService.queryDeptIdList(new Long[]{roleId}); role.setDeptIdList(deptIdList); return R.ok().put("role", role); } /** * 保存角色 */ @SysLog("保存角色") @RequestMapping("/save") @RequiresPermissions("sys:role:save") public R save(@RequestBody SysRoleEntity role){ ValidatorUtils.validateEntity(role); sysRoleService.saveRole(role); return R.ok(); } /** * 修改角色 */ @SysLog("修改角色") @RequestMapping("/update") @RequiresPermissions("sys:role:update") public R update(@RequestBody SysRoleEntity role){ ValidatorUtils.validateEntity(role); sysRoleService.update(role); return R.ok(); } /** * 删除角色 */ @SysLog("删除角色") @RequestMapping("/delete") @RequiresPermissions("sys:role:delete") public R delete(@RequestBody Long[] roleIds){ sysRoleService.deleteBatch(roleIds); return R.ok(); }
}
系统配置信息控制层:
/**
-
系统配置信息
*/
@RestController
@RequestMapping("/sys/config")
public class SysConfigController extends AbstractController {
@Autowired
private SysConfigService sysConfigService;/**
-
所有配置列表
*/
@RequestMapping("/list")
@RequiresPermissions(“sys:config:list”)
public R list(@RequestParam Map<String, Object> params){
PageUtils page = sysConfigService.queryPage(params);return R.ok().put(“page”, page);
}
/**
-
配置信息
*/
@RequestMapping("/info/{id}")
@RequiresPermissions(“sys:config:info”)
@ResponseBody
public R info(@PathVariable(“id”) Long id){
SysConfigEntity config = sysConfigService.getById(id);return R.ok().put(“config”, config);
}
/**
-
保存配置
*/
@SysLog(“保存配置”)
@RequestMapping("/save")
@RequiresPermissions(“sys:config:save”)
public R save(@RequestBody SysConfigEntity config){
ValidatorUtils.validateEntity(config);sysConfigService.saveConfig(config);
return R.ok();
}
/**
-
修改配置
*/
@SysLog(“修改配置”)
@RequestMapping("/update")
@RequiresPermissions(“sys:config:update”)
public R update(@RequestBody SysConfigEntity config){
ValidatorUtils.validateEntity(config);sysConfigService.update(config);
return R.ok();
}
/**
-
删除配置
*/
@SysLog(“删除配置”)
@RequestMapping("/delete")
@RequiresPermissions(“sys:config:delete”)
public R delete(@RequestBody Long[] ids){
sysConfigService.deleteBatch(ids);return R.ok();
}
-
}
这篇关于Java项目:学生信息管理系统(java+SSM+JSP+layui+maven+mysql)——计算机毕业设计的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现
- 2024-05-30我们小公司,哪像华为一样,用得上IPD(集成产品开发)?