package com.ssm.web.controller;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpSession;
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.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ssm.po.Role;
import com.ssm.po.User;
import com.ssm.service.RoleService;
import com.ssm.service.UserService;
/*
* 用户控制类
*/
@Controller
public class UserController {
//依赖注入
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
//查询所有状态的全体用户
@RequestMapping(value="/findUserList.action")
public String findUserList(String keywords,Integer userListRoleId,Model model){
// 获取角色列表
List<Role> roleList = roleService.findRoleList();
model.addAttribute("roleList", roleList);
// 获取用户列表
List<User> userList=userService.findUserList(keywords,userListRoleId);
model.addAttribute("userList", userList);
model.addAttribute("keywords", keywords);
model.addAttribute("userListRoleId", userListRoleId);
return "user/user_list";
}
//转向添加用户
@RequestMapping(value="/toAddUser.action")
public String toAddUser(Model model){
//获取角色列表,用于添加用户页面中的用户角色下拉列表
List<Role> roleList=roleService.findRoleList();
model.addAttribute("roleList", roleList);
return "user/add_user";
}
//判断登录账号是否已存在
@RequestMapping(value = "/checkLoginName.action")
@ResponseBody
public User checkLoginName(@RequestBody User user, Model model) {
User checkUser = userService.getUserByLoginName(user.getLoginName());
if (checkUser!=null) {
//登录账号已存在
return checkUser;
}else{
checkUser=new User();
checkUser.setUserId(0);
return checkUser;
}
}
//添加用户
@RequestMapping(value = "/addUser.action", method = RequestMethod.POST)
public String addUser(User user, Model model) {
// 获取角色列表
List<Role> roleList = roleService.findRoleList();
model.addAttribute("roleList", roleList);
model.addAttribute("user", user);
//检查登录账号是否已存在
User checkUser = userService.getUserByLoginName(user.getLoginName());
if (checkUser!=null) {
// 登录账号已存在,重新转回添加用户页面
model.addAttribute("checkUserLoginNameMsg", "登录账号已存在,请重新输入");
return "user/add_user";
}else{
// 登录账号可用
Date date = new Date();
user.setRegisterTime(date);
//默认设置用户为启用状态"2"
user.setStatus("2");
//调用UserService实例中的添加用户方法
int rows = userService.addUser(user);
if (rows > 0) {
// 添加成功,转向用户列表页面
return "redirect:findUserList.action";
} else {
// 添加失败,重新转回添加用户页面
return "user/add_user";
}
}
}
// 转向修改用户页面
@RequestMapping(value = "/toEditUser.action")
public String toEditUser(Integer userId, Model model) {
//通过userId获取用户
User user = userService.getUserByUserId(userId);
if (user != null) {
model.addAttribute("user", user);
// 获取角色列表
List<Role> roleList = roleService.findRoleList();
model.addAttribute("roleList", roleList);
return "user/edit_user";
}else{
return "redirect:findUserList.action";
}
}
//修改用户
@RequestMapping(value = "/editUser.action", method = RequestMethod.POST)
public String editUser(User user, Model model) {
// 获取角色列表
Date date = new Date();
user.setRegisterTime(date);
// 默认设置用户为启用状态"2"
user.setStatus("2");
int rows = userService.editUser(user);
if (rows > 0) {
// 添加成功,转向用户列表页面
return "redirect:findUserList.action";
} else {
List<Role> roleList = roleService.findRoleList();
model.addAttribute("roleList", roleList);
model.addAttribute("user", user);
// 修改失败,转回修改用户页面
return "user/edit_user";
}
}
//删除用户(前台页面中通过ajax方式调用此方法)
@RequestMapping(value = "/delUser.action")
@ResponseBody
public User delUser(@RequestBody User user, Model model) {
int rows = userService.delUser(user.getUserId());
if (rows>0) {
return user;
}else{
//此处设置userId为0,只是作为操作失败的标记用
user.setUserId(0);
return user;
}
}
//禁用用户(更新status字段值 为'3',前台页面中通过ajax方式调用此方法)
@RequestMapping(value = "/disableUser.action")
@ResponseBody
public User disableUser(@RequestBody User user, Model model) {
int rows = userService.setUserStatus(user);
if (rows>0) {
return user;
}else{
//此处设置userId为0,只是作为操作失败的标记用
user.setUserId(0);
return user;
}
}
//启用用户(更新status字段值 为'2',前台页面中通过ajax方式调用此方法)
@RequestMapping(value = "/enableUser.action")
@ResponseBody
public User enableUser(@RequestBody User user, Model model) {
int rows = userService.setUserStatus(user);
if (rows>0) {
return user;
}else{
//此处设置userId为0,只是作为操作失败的标记用
user.setUserId(0);
return user;
}
}
//用户登录
@RequestMapping(value="/login.action",method=RequestMethod.POST)
public String login(String loginName,String password,Model model,HttpSession session){
//通过用户名和密码查询用户
User user=userService.findUser(loginName, password);
if(user!=null){
if (user.getStatus().equals("2")) {
//用户被启用时,允许登录到后台
session.setAttribute("login_user", user);
return "main";
} else {
//账号未启用或被禁用时,不允许登录到后台
model.addAttribute("msg", "账号未启用或被禁用,请联系管理员!");
return "../../login";
}
}
//账号或密码错误时,不允许登录到后台
model.addAttribute("msg","账号或密码错误,请重新登录!");
return "../../login";
}
//退出登录
@RequestMapping(value="/logout.action")
public String logout(HttpSession session){
//清空session
session.invalidate();
return "../../login";
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
spring+springMVC+MyBatis教学视频与源码
共780个文件
jar:231个
xml:104个
class:95个
需积分: 22 1 下载量 196 浏览量
2022-03-06
11:45:52
上传
评论
收藏 114.27MB RAR 举报
温馨提示
spring+springMVC+MyBatis教学视频与源码
资源详情
资源评论
资源推荐
收起资源包目录
spring+springMVC+MyBatis教学视频与源码 (780个子文件)
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
log4j. properties 326B
NewsController.class 6KB
UserController.class 6KB
MybatisTest.class 6KB
MybatisTest.class 6KB
MybatisTest.class 4KB
News.class 4KB
JdbcTemplateTest.class 4KB
JdbcTemplateTest.class 4KB
UserDaoImpl.class 3KB
MyAspect.class 3KB
NewsServiceImpl.class 3KB
User.class 3KB
UserDaoImpl.class 2KB
UserController.class 2KB
LoginInterceptor.class 2KB
LoginInterceptor.class 2KB
MyAspect.class 2KB
UserServiceImpl.class 2KB
Student.class 2KB
UserController.class 2KB
RoleController.class 2KB
Course.class 2KB
PageBean.class 2KB
MybatisAssociatedTest.class 2KB
UserInterceptor.class 2KB
Interceptor2.class 2KB
Interceptor1.class 2KB
Role.class 2KB
Banji.class 2KB
StudentController.class 2KB
Customer.class 2KB
CustomerController.class 2KB
User.class 1KB
User.class 1KB
User.class 1KB
User.class 1KB
User.class 1KB
User.class 1KB
UserDaoTest.class 1KB
TransactionTest.class 1KB
CourseController.class 1KB
User.class 1KB
MybatisUtils.class 1KB
MybatisUtils.class 1KB
RoleServiceImpl.class 1KB
Category.class 1KB
ControllerTest.class 1KB
UserController.class 1KB
ControllerTest.class 1KB
MybatisUtils.class 1KB
StudentIdCard.class 1KB
CategoryServiceImpl.class 1KB
Student.class 1KB
AnnotationAssembleTest.class 1004B
ScopeTest.class 983B
TestAnnotation.class 982B
User.class 962B
User.class 962B
TestXmlAspectJ.class 961B
XmlAssembleTest.class 954B
CommonController.class 910B
UserServiceImpl.class 861B
DI.class 856B
NewsDao.class 850B
IoC.class 847B
UserController.class 841B
UserDao.class 823B
UserServiceImpl.class 813B
Banji.class 795B
UserServiceImpl.class 790B
User.class 768B
UserDaoImpl.class 768B
UserDaoImpl.class 758B
HelloController.class 747B
UserVo.class 710B
UserDaoImpl.class 672B
UserService.class 637B
NewsService.class 592B
UserDaoImpl.class 545B
UserDao.class 433B
RoleDao.class 396B
UserDao.class 353B
CategoryService.class 311B
CategoryDao.class 300B
RoleService.class 300B
Scope.class 268B
UserService.class 183B
UserMapper.class 180B
UserDao.class 171B
UserDao.class 171B
UserDao.class 156B
UserService.class 143B
共 780 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
无处安放的小曾
- 粉丝: 78
- 资源: 27
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0