package com.su.controller;
import com.su.pojo.Admin;
import com.su.pojo.PageInfo;
import com.su.service.AdminService;
import com.su.util.MD5Util;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.List;
@Controller
public class AdminController {
@Autowired
private AdminService adminService ;
//登录功能 账号 zxk 密码 zxk123
@RequestMapping(value = "/login")
public String Login(Model model, Admin admin, HttpSession session){
//把密码加密再判断
admin.setA_password(MD5Util.MD5EncodeUtf8(admin.getA_password()));
Admin ad= adminService.findAmin(admin);
if (ad!=null){
session.setAttribute("ad",ad);//把用户加入session
return "homepage";
}
model.addAttribute("msg", "用户名或密码错误,请重新登录!");
return "login";
}
//退出功能
@RequestMapping(value = "/loginOut")
public String LoginOut(HttpSession session){
session.invalidate();
return "login";
}
//查看管理员(分页+搜索)
/**
*
* @param a_username:管理员名字
* @param a_describe:管理员级别
* @param pageIndex :用来分页
* @param a_id:管理员id
* @param pageSize :显示条数
* @param model
* @return
*/
@RequestMapping("/findAdmin")
public String findAdmin(String a_username, String a_describe, Integer pageIndex,
Integer a_id , Integer pageSize, Model model,HttpSession session){
PageInfo<Admin> pageInfo = adminService.findPageInfo(a_username, a_describe, a_id, pageIndex, pageSize);
model.addAttribute("ai",pageInfo);
if (a_username!=null && !a_username.trim().equals("")){
model.addAttribute("a_username",a_username);
}
if (a_describe!=null && !a_describe.trim().equals("")){
model.addAttribute("a_describe",a_describe);
}
return "admin/admin_list";
}
//添加管理员功能
@RequestMapping("/addAdmin")
public String addAdmin(@RequestBody Admin admin){
/*
*遇到两个问题
* 1.前端传的是JSon,利用@RequestBody返回admin
* 2.发现主键为null,即管理员id=null 这个不是错误原因不加也行,但是突然学到了两个参数
* 需要使用mybatis在xml中的 keyProperty="a_id" useGeneratedKeys="true"
* */
//加密密码
admin.setA_password(MD5Util.MD5EncodeUtf8(admin.getA_password()));
int i = adminService.addAdmin(admin);
return "admin/admin_list";
}
//编辑管理员信息==>第一步先根据id查询信息
@RequestMapping("findAdminById")
public String findAdminById(Integer a_id,HttpSession session){
Admin adminById = adminService.findAdminById(a_id);
session.setAttribute("a",adminById);
return "admin/admin_edit";
}
//==>第二步修改管理信息
@RequestMapping("/updateAdmin")
public String updateAdmin(Admin admin, HttpServletRequest request,HttpServletResponse response) throws IOException {
//把密码md5加密==注意判断一下密码是否修改,如果没修改就不用加密了
String pass=adminService.findAdminById(admin.getA_id()).getA_password();
if (!admin.getA_password().equals(pass)){
//密码变动,加密
System.out.println("密码修改===>");
admin.setA_password(MD5Util.MD5EncodeUtf8(admin.getA_password()));
}
int i = adminService.updateAdmin(admin);
//遇到第一个小问题,pojo中手机号是Integer,而最大只能到十位数,所以到达10位以上可能会出现400错误
//解决办法,修改手机号为long
request.getSession().setAttribute("edit_sucess","修改成功");
return "redirect:/findAdmin";
}
//删除管理员
@RequestMapping("/deleteAdmin")
public String deleteAdmin(@RequestParam("a_id") Integer id){
int i = adminService.deleteAdmin(id);
return "admin/admin_list";
}
//导出管理员
/*
* 1.查询全部管理员生成一个集合
* 2.把集合生成json传递个前端
*
* */
@RequestMapping("/exportadminlist")
@ResponseBody
public List<Admin> exportadminlist(){
List<Admin> all = adminService.getAll();
return all;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
java毕业设计—基于ssm的学生宿舍管理系统源码+数据库.zip已获导师指导并通过的高分毕业设计项目主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、软件工具、项目说明等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! 技术实现 后台框架:SSM 数据库:MySQL 开发环境:JDK、IDEA java毕业设计—基于ssm的学生宿舍管理系统源码+数据库.zip已获导师指导并通过的高分毕业设计项目主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、软件工具、项目说明等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! java毕业设计—基于ssm的学生宿舍管理系统源码+数据库.zip已获导师指导并通过的高分毕业设计项目主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、软件工具、项目说明等,该项目可以直接
资源推荐
资源详情
资源评论
收起资源包目录
java毕业设计-基于SSM的学生宿舍管理系统源码+数据库.zip (591个子文件)
AdminController.class 5KB
AdminController.class 5KB
DormitoryController.class 4KB
DormitoryController.class 4KB
ClassController.class 4KB
ClassController.class 4KB
StudentCleancontroller.class 3KB
StudentCleancontroller.class 3KB
DormrepairController.class 3KB
DormrepairController.class 3KB
DormCleanController.class 3KB
DormCleanController.class 3KB
DormrepairServiceimpl.class 3KB
DormrepairServiceimpl.class 3KB
DormitoryServiceimpl.class 3KB
DormitoryServiceimpl.class 3KB
ClassServiceimpl.class 3KB
ClassServiceimpl.class 3KB
StudentController.class 3KB
StudentController.class 3KB
AdminServiceimpl.class 3KB
AdminServiceimpl.class 3KB
StudentCleanServiceimpl.class 3KB
StudentCleanServiceimpl.class 3KB
Student.class 3KB
Student.class 3KB
StudentClean.class 3KB
StudentClean.class 3KB
Dormitory.class 3KB
Dormitory.class 3KB
StudentServiceimpl.class 3KB
StudentServiceimpl.class 3KB
DormCleanServiceimpl.class 3KB
DormCleanServiceimpl.class 3KB
DormRepair.class 2KB
DormRepair.class 2KB
VisitorController.class 2KB
VisitorController.class 2KB
Admin.class 2KB
Admin.class 2KB
DormClean.class 2KB
DormClean.class 2KB
VisitorServiceimpl.class 2KB
VisitorServiceimpl.class 2KB
MD5Util.class 2KB
MD5Util.class 2KB
PageInfo.class 2KB
PageInfo.class 2KB
Class.class 2KB
Class.class 2KB
Visitor.class 2KB
Visitor.class 2KB
DormitoryDao.class 1KB
DormitoryDao.class 1KB
ClassDao.class 1KB
ClassDao.class 1KB
DormitoryService.class 1KB
DormitoryService.class 1KB
AdminDao.class 1KB
AdminDao.class 1KB
StudentCleanDao.class 1KB
StudentCleanDao.class 1KB
StudentDao.class 1022B
StudentDao.class 1022B
ClassService.class 1008B
ClassService.class 1008B
DormrepairDao.class 1002B
DormrepairDao.class 1002B
DormCleanDao.class 991B
DormCleanDao.class 991B
StudentCleanService.class 980B
StudentCleanService.class 980B
DormrepairService.class 937B
DormrepairService.class 937B
DormCleanService.class 926B
DormCleanService.class 926B
VisitorDao.class 768B
VisitorDao.class 768B
AdminService.class 754B
AdminService.class 754B
VisitorService.class 702B
VisitorService.class 702B
StudentService.class 648B
StudentService.class 648B
aaaaaaa.class 616B
cccc.class 535B
testtt.class 442B
testtt.class 442B
layui.css 68KB
layui.css 68KB
layer.css 14KB
layer.css 14KB
layui.mobile.css 10KB
layui.mobile.css 10KB
xadmin.css 8KB
xadmin.css 8KB
laydate.css 7KB
laydate.css 7KB
usersLogin.css 2KB
usersLogin.css 2KB
共 591 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
- weixin_456747022023-03-29非常有用的资源,有一定的参考价值,受益匪浅,值得下载。
- EDGViper2023-02-13资源很不错,内容和描述一致,值得借鉴,赶紧学起来!
程序员张小妍
- 粉丝: 1w+
- 资源: 2539
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功