基于javaweb+mysql的springboot学生管理系统(java+springboot+maven+mybatis+vue+mysql)

基于javaweb+mysql的springboot学生管理系统(java+springboot+maven+mybatis+vue+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥10

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行

前端:WebStorm/VSCode/HBuilderX等均可

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SpringBoot学生管理系统(java+springboot+maven+mybatis+vue+mysql)

一、项目简述

本系统功能包括: 学生管理,教师管理,课程管理,成绩管理,系统管理等等。

二、项目运行

环境配置:

Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。

项目技术:

Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等。

return "admin/user/add";

@RequiresPermissions("sys:user:add")

@PostMapping("add")

@ResponseBody

@SysLog("保存新增系统用户数据")

public ResponseEntity add(@RequestBody  User user){

if(StringUtils.isBlank(user.getLoginName())){

return ResponseEntity.failure("登录名不能为空");

if(user.getRoleLists() == null || user.getRoleLists().size() == 0){

return  ResponseEntity.failure("用户角色至少选择一个");

if(userService.userCount(user.getLoginName())>0){

return ResponseEntity.failure("登录名称已经存在");

//        if(StringUtils.isNotBlank(user.getEmail())){


result.setData(list);

result.setCount(count);

return result;

//  根据教师编号查询教师信息

@RequestMapping("/selTeacherId")

public String selTeacherId(Integer id, Model model){

List<TeacherDB> tea = lxxTeacherService.selTeacherId(id);

//  查询政治面貌

List<PoliticsTypeDB> selpol = lxxStudentService.selPolitics();

model.addAttribute("tea",tea);

model.addAttribute("selpol",selpol);

return "view/teacher/updTeacher";

//  根据教师编号查询教师详细信息

@RequestMapping("add")

public String add(ModelMap modelMap){

Map<String,Object> map =  new HashMap();

map.put("parentId",null);

map.put("isShow",false);

List<Menu> menuList = menuService.selectAllMenus(map);

modelMap.put("menuList",menuList);

return "admin/role/add";

@RequiresPermissions("sys:role:add")

@PostMapping("add")

@ResponseBody

@SysLog("保存新增角色数据")

public ResponseEntity add(@RequestBody Role role){


@RequestMapping("admin/system/user")

public class UserController {

@Autowired

UserService userService;

@Autowired

RoleService roleService;

@Autowired

UploadService uploadService;

@RequestMapping("list")

@SysLog("跳转系统用户列表页面")

public String list(){

List<PoliticsTypeDB> selpol = lxxStudentService.selPolitics();

model.addAttribute("tea",tea);

model.addAttribute("selpol",selpol);

return "view/teacher/selTchMessage";

//  修改教师信息

@RequestMapping("/updateTeacher")

@ResponseBody

public LayuiResult<TeacherDB> updTeacher(TeacherDB teacherDB, String birthday) throws Exception{

LayuiResult result= new LayuiResult();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

Date date=format.parse(birthday);
User u = userService.findUserById(r.getCreateId());

if(StringUtils.isBlank(u.getNickName())){

u.setNickName(u.getLoginName());

r.setCreateUser(u);

if(StringUtils.isNotBlank(r.getUpdateId())){

User u  = userService.findUserById(r.getUpdateId());

if(StringUtils.isBlank(u.getNickName())){

u.setNickName(u.getLoginName());

r.setUpdateUser(u);

});

return roles;


userService.deleteUser(user);

return ResponseEntity.success("操作成功");

@RequiresPermissions("sys:user:delete")

@PostMapping("deleteSome")

@ResponseBody

@SysLog("删除系统用户数据(多个)")

public ResponseEntity deleteSome(@RequestBody List<User> users){

if(users == null || users.size()==0){

return ResponseEntity.failure("请选择需要删除的用户");

for (User u : users){

if(u.getAdminUser()){

return ResponseEntity.failure("不能删除超级管理员");


return ResponseEntity.failure("用户ID不能为空");

if(StringUtils.isBlank(user.getLoginName())){

return ResponseEntity.failure("登录名不能为空");

if(user.getRoleLists() == null || user.getRoleLists().size() == 0){

return  ResponseEntity.failure("用户角色至少选择一个");

User oldUser = userService.findUserById(user.getId());

if(StringUtils.isNotBlank(user.getEmail())){

if(!user.getEmail().equals(oldUser.getEmail())){

if(userService.userCount(user.getEmail())>0){

return ResponseEntity.failure("该邮箱已被使用");

if(StringUtils.isNotBlank(user.getLoginName())){

if(!user.getLoginName().equals(oldUser.getLoginName())) {


User user = userService.findUserById(MySysUser.id());

byte[] hashPassword = Encodes.sha1(oldPwd.getBytes(), Encodes.SHA1, Encodes.decodeHex(user.getSalt()), Constants.HASH_INTERATIONS);

String password = Encodes.encodeHex(hashPassword);

if(!user.getPassword().equals(password)){

return ResponseEntity.failure("旧密码错误");

user.setPassword(newPwd);

Encodes.entryptPassword(user);

userService.updateById(user);

return ResponseEntity.success("操作成功");

}else {

//小程序修改密码

User user = userService.findUserByLoginName(userName);

byte[] hashPassword = Encodes.sha1(oldPwd.getBytes(), Encodes.SHA1, Encodes.decodeHex(user.getSalt()), Constants.HASH_INTERATIONS);

if (userService.userCount(user.getTel()) > 0) {

return ResponseEntity.failure("该手机号已经被绑定");

userService.updateById(user);

return ResponseEntity.success("操作成功");

@RequestMapping("changePassword")

public String changePassword(ModelMap modelMap){

modelMap.put("currentUser",userService.getById(MySysUser.id()));

return "admin/user/changePassword";

@CrossOrigin

@SysLog("用户修改密码")

@PostMapping("changePassword")


userPageData.setCount(userPage.getTotal());

userPageData.setData(userPage.getRecords());

return userPageData;

@RequestMapping("add")

public String add(ModelMap modelMap){

List<Role> roleList = roleService.selectAll();

modelMap.put("roleList",roleList);

return "admin/user/add";

@RequiresPermissions("sys:user:add")

@PostMapping("add")


//  查询政治面貌

List<PoliticsTypeDB> selpol = lxxStudentService.selPolitics();

model.addAttribute("tea",tea);

model.addAttribute("selpol",selpol);

return "view/teacher/selTchMessage";

//  修改教师信息

@RequestMapping("/updateTeacher")

@ResponseBody

public LayuiResult<TeacherDB> updTeacher(TeacherDB teacherDB, String birthday) throws Exception{

LayuiResult result= new LayuiResult();


if(file == null){

return ResponseEntity.failure("上传文件为空 ");

String url = null;

Map map = new HashMap();

try {

url = uploadService.upload(file);

map.put("url", url);

map.put("name", file.getOriginalFilename());

} catch (Exception e) {

e.printStackTrace();

return ResponseEntity.failure(e.getMessage());


public PageData<Role> list(@RequestParam(value = "page",defaultValue = "1")Integer page,

@RequestParam(value = "limit",defaultValue = "10")Integer limit,

ServletRequest request){

Map map = WebUtils.getParametersStartingWith(request, "s_");

PageData<Role> rolePageData = new PageData<>();

QueryWrapper<Role> roleWrapper = new QueryWrapper<>();

roleWrapper.eq("del_flag",false);

if(!map.isEmpty()){

String keys = (String) map.get("key");

if(StringUtils.isNotBlank(keys)) {

roleWrapper.like("name", keys);

IPage<Role> rolePage = roleService.page(new Page<>(page,limit),roleWrapper);

result.setCount(count);

return result;

//  根据教师编号查询教师信息

@RequestMapping("/selTeacherId")

public String selTeacherId(Integer id, Model model){

List<TeacherDB> tea = lxxTeacherService.selTeacherId(id);

//  查询政治面貌

List<PoliticsTypeDB> selpol = lxxStudentService.selPolitics();

model.addAttribute("tea",tea);

model.addAttribute("selpol",selpol);


modelMap.put("menuList",menuList);

modelMap.put("menuIds",menuIds);

return "admin/role/edit";

@RequiresPermissions("sys:role:edit")

@PostMapping("edit")

@ResponseBody

@SysLog("保存编辑角色数据")

public ResponseEntity edit(@RequestBody Role role){

if(StringUtils.isBlank(role.getId())){

return ResponseEntity.failure("角色ID不能为空");


return ResponseEntity.failure("登录名不能为空");

if(user.getRoleLists() == null || user.getRoleLists().size() == 0){

return  ResponseEntity.failure("用户角色至少选择一个");

if(userService.userCount(user.getLoginName())>0){

return ResponseEntity.failure("登录名称已经存在");

//        if(StringUtils.isNotBlank(user.getEmail())){

//            if(userService.userCount(user.getEmail())>0){

//                return ResponseEntity.failure("该邮箱已被使用");

//            }

//        }

//        if(StringUtils.isNoneBlank(user.getTel())){


public ResponseEntity edit(@RequestBody  User user){

if(StringUtils.isBlank(user.getId())){

return ResponseEntity.failure("用户ID不能为空");

if(StringUtils.isBlank(user.getLoginName())){

return ResponseEntity.failure("登录名不能为空");

if(user.getRoleLists() == null || user.getRoleLists().size() == 0){

return  ResponseEntity.failure("用户角色至少选择一个");

User oldUser = userService.findUserById(user.getId());

if(StringUtils.isNotBlank(user.getEmail())){

if(!user.getEmail().equals(oldUser.getEmail())){

if(userService.userCount(user.getEmail())>0){

return ResponseEntity.failure("该邮箱已被使用");

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值