package com.hhxy.springboot.controller;
import com.hhxy.springboot.pojo.User;
import com.hhxy.springboot.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("")
public class UserController {
@Autowired
UserService userService;
// 登录用户
@RequestMapping("/loginUser")
@ResponseBody
public Integer loginUser(HttpServletRequest httpServletRequest, String user_id, String user_password) {
HttpSession session = httpServletRequest.getSession();
if(userService.login(user_id, user_password) > 0) {
session.setAttribute("USER_TOKEN", user_id+"---"+user_password);
return 1;
}else {
return 0;
}
}
// 判断是否登录用户
@RequestMapping("/isLoginUser")
@ResponseBody
public Integer isLoginAdmin(HttpServletRequest httpServletRequest) {
HttpSession session = httpServletRequest.getSession();
if(session.getAttribute("USER_TOKEN") == null) {
return 0;
}else {
return 1;
}
}
// 退出用户登录
@RequestMapping("/quitLoginUser")
@ResponseBody
public Integer quitLoginAdmin(HttpServletRequest httpServletRequest) {
HttpSession session = httpServletRequest.getSession();
session.removeAttribute("USER_TOKEN");
return 1;
}
// 添加用户
@RequestMapping("/addUser")
@ResponseBody
public Integer addUser(User user) {
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = sf.format(new Date());
user.setUser_time(time);
return userService.addUser(user);
}
// 删除用户
@RequestMapping("/deleteUser")
@ResponseBody
public Integer deleteUser(String user_id) {
return userService.deleteUser(user_id);
}
// 更新用户信息
@RequestMapping("/updateUser")
@ResponseBody
public Integer updateUser(User user) {
return userService.updateUser(user);
}
// 分页查询所有用户信息
@RequestMapping("/getAllUser")
@ResponseBody
public List<User> getAllUser(Integer start, Integer count) {
return userService.getAllUser(start, count);
}
// 分页查询所有用户信息个数
@RequestMapping("/getAllUserCount")
@ResponseBody
public Integer getAllUserCount() {
return userService.getAllListCount();
}
// 通过id得到用户信息
@RequestMapping("/getIdUser")
@ResponseBody
public List<User> getIdUser(String user_id) {
return userService.getIdUser(user_id);
}
// 获取当前登录用户信息
@RequestMapping("/getIdUserNow")
@ResponseBody
public List<User> getIdUserNow(HttpServletRequest httpServletRequest) {
return userService.getIdUser(httpServletRequest.getSession().getAttribute("USER_TOKEN").toString().split("---")[0]);
}
// 模糊搜索用户信息
@RequestMapping("/getSearchUser")
@ResponseBody
public List<User> getSearchUser(String search, Integer start, Integer count) {
return userService.getSearchUser(search,start,count);
}
// 模糊搜索用户信息数量
@RequestMapping("/getSearchUserCount")
@ResponseBody
public Integer getSearchUserCount(String search) {
return userService.getSearchUserCount(search);
}
// 更改用户密码
@RequestMapping("/updateUserPassword")
@ResponseBody
public Integer updateUserPassword(HttpServletRequest httpServletRequest, String oldPassword, String newPassword) {
HttpSession session = httpServletRequest.getSession();
if(oldPassword.equals(session.getAttribute("USER_TOKEN").toString().split("---")[1])) {
User user = getIdUser(session.getAttribute("USER_TOKEN").toString().split("---")[0]).get(0);
user.setUser_password(newPassword);
return updateUser(user);
}else {
return 0;
}
}
// 用户更改个人信息
@RequestMapping("/updateUserPart")
@ResponseBody
public Integer updateUserPart(HttpServletRequest httpServletRequest, String phone, String sex) {
HttpSession session = httpServletRequest.getSession();
User user = getIdUser(session.getAttribute("USER_TOKEN").toString().split("---")[0]).get(0);
user.setUser_phone(phone);
user.setUser_sex(sex);
return updateUser(user);
}
}
javaWeb期末考察项目:工资管理系统
1星 需积分: 0 96 浏览量
更新于2023-01-09
收藏 3.55MB ZIP 举报
:“javaWeb期末考察项目:工资管理系统”
在这个项目中,学生们被要求构建一个基于JavaWeb技术的工资管理系统,以此来检验他们在整个学期中对JavaWeb开发的掌握程度。这个系统采用现代化的技术栈,旨在提供高效、稳定且易于使用的功能,以便管理和追踪员工的工资信息。
:
该项目的核心技术栈包括SpringBoot、layui、H5、CSS、JS以及ajax。SpringBoot是Java企业级应用开发的首选框架,它简化了配置,提供了快速开发新应用的能力。layui则是一个流行的前端UI框架,为开发人员提供了丰富的组件和美观的设计,用于创建用户友好的界面。
在前端部分,使用HTML5(H5)进行页面结构设计,CSS(层叠样式表)用于美化和布局,JavaScript(JS)处理动态交互,而ajax则用于实现无刷新的数据异步更新,提高用户体验。通过ajax,用户可以无需刷新整个页面就能获取或提交数据,这对于实时更新如工资计算这样的功能至关重要。
后端采用servlet和MyBatis技术。Servlet是JavaWeb中的标准组件,负责接收和响应客户端请求,处理业务逻辑。MyBatis是一个持久层框架,它允许开发者将SQL语句与Java代码分离,使得数据库操作更为灵活且易于维护。
数据库方面,选用的是MySQL,这是一种广泛使用的开源关系型数据库管理系统,以其高性能、易用性和稳定性著称。在工资管理系统中,MySQL将存储员工的个人信息、工资详情等核心数据。
【知识点详解】:
1. **SpringBoot**:SpringBoot简化了Spring应用的初始搭建以及开发过程,通过自动配置、起步依赖和内嵌容器等特性,让开发变得更加简单高效。
2. **layui**:layui是一款基于HTML5的前端UI框架,包含丰富的组件,如表格、按钮、表单、提示等,适合用于快速构建企业级应用的前端界面。
3. **H5(HTML5)**:HTML5是HTML的最新版本,增强了对多媒体的支持,提供了新的元素和API,使网页开发更加现代化和标准化。
4. **CSS**:CSS用于定义网页的外观和布局,通过选择器和规则,可以实现各种视觉效果,如颜色、字体、布局等。
5. **JS(JavaScript)**:JavaScript是一种解释型编程语言,主要用于网页和网络应用的动态化,可以实现用户交互、页面控制等功能。
6. **ajax**:异步JavaScript和XML,实际应用中常与JSON一起使用,用于实现页面局部刷新,提高用户交互体验。
7. **servlet**:JavaWeb中的服务器端组件,用于接收和响应HTTP请求,是JavaEE应用中的基础。
8. **MyBatis**:MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。
9. **MySQL**:MySQL是一个开源、免费的关系型数据库,适合中小型应用,具有高性能、高可用性和可扩展性。
以上这些技术的组合,构建了一个完整的JavaWeb工资管理系统,覆盖了从前端展示到后端数据处理的全过程,展示了JavaWeb开发的综合能力。
APTX4869
- 粉丝: 1
- 资源: 1
最新资源
- NSKeyValueObservationException如何解决.md
- 基于Java的环境保护与宣传网站论文.doc
- 前端开发中的JS快速排序算法原理及实现方法
- 常见排序算法概述及其性能比较
- 形状分类31-YOLO(v5至v11)、COCO、CreateML、Darknet、Paligemma、VOC数据集合集.rar
- 2018年最新 ECshop母婴用品商城新版系统(微商城+微分销+微信支付)
- BookShopTuto.zip
- 论文复现:结合 CNN 和 LSTM 的滚动轴承剩余使用寿命预测方法
- MySQL中的数据库管理语句-ALTER USER.pdf
- 冒泡排序算法解析及优化.md
- 2024年智算云市场发展与生态分析报告
- qwewq23132131231
- 《木兰诗》教学设计.docx
- 《台阶》教学设计.docx
- 《卖油翁》文言文教学方案.docx
- 《老王》教学设计方案.docx