• 基于javaweb的火车票预订系统(java+jdbc+jsp+servlet+html+mysql)


    基于javaweb的火车票预订系统(java+jdbc+jsp+servlet+html+mysql)

    运行环境

    Java≥8、MySQL≥5.7、Tomcat≥8

    开发工具

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

    适用

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

    功能说明

    20220519192719

    20220519192721

    20220519192723

    20220519192725

    20220519192727

    20220519192729

    20220519192731

    基于javaweb+jsp的火车票预订系统(java+JDBC+JSP+Servlet+html+mysql)

    一、项目运行 环境配置:

    Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

    项目技术:

    JSP + Servlert + html+ css + JavaScript + JQuery + Ajax 等等;

    个人中心Controller:

    /**

    • 个人中心Controller

    */

    @Controller

    public class UserInforController {

    @Autowired

    private UserInforServiceImpl userInforService = null;

    /**

    • 修改密码操作

    • @param oldPassword

    • @param newPassword

    • @param rePassword

    • @param httpSession

    • @return

    */

    @RequestMapping(“changePassword.do”)

    @ResponseBody

    public Map changePassword(String oldPassword, String newPassword,

    String rePassword, HttpSession httpSession){

    HashMap map = new HashMap();

    if (newPassword.equals(rePassword)){

    SystemManager admin = (SystemManager) httpSession.getAttribute(“admin”);

    String encodeByMD5 = MD5Utils.encodeByMD5(oldPassword);

    if (encodeByMD5.equals(admin.getSmPassword())){

    String newPasswords = MD5Utils.encodeByMD5(newPassword);

    admin.setSmPassword(newPasswords);

    userInforService.updateSystemManagePassword(admin.getSmId(),admin);

    map.put(“type”,“success”);

    map.put(“msg”,“密码修改成功”);

    return map;

    }else{

    map.put(“type”,“error”);

    map.put(“msg”,“原密码错误”);

    return map;

    }else{

    map.put(“type”,“error”);

    map.put(“msg”,“两次密码不一致”);

    return map;

    /**

    • 员工修改个人密码

    • @param oldPassword

    • @param newPassword

    • @param rePassword

    • @param httpSession

    • @return

    */

    @RequestMapping(“changeEmployeePassword.do”)

    @ResponseBody

    public Map changeEmployeePassword(String oldPassword, String newPassword,

    String rePassword, HttpSession httpSession){

    HashMap map = new HashMap();

    if (newPassword.equals(rePassword)){

    Integer eid = (Integer) httpSession.getAttribute(“employeeId”);

    try {

    userInforService.updateEmployeePassword(eid, oldPassword, newPassword);

    map.put(“type”,“success”);

    map.put(“msg”,“密码修改成功”);

    return map;

    } catch (CustomException e) {

    map.put(“type”,“error”);

    map.put(“msg”,“原密码错误”);

    return map;

    }else{

    map.put(“type”,“error”);

    map.put(“msg”,“两次密码不一致”);

    return map;

    /**

    • 查看个人信息

    • @param httpSession

    • @return

    */

    @RequestMapping(“inforEmployee.do”)

    public @ResponseBody EmployeeCustomVo getInforEmployee(HttpSession httpSession){

    Integer id = (Integer) httpSession.getAttribute(“employeeId”);

    EmployeeCustomVo employeeCustomVo = userInforService.getInforEmployee(id);

    return employeeCustomVo;

    /**

    • 修改个人信息

    • @param httpSession

    • @param employee

    • @return

    */

    @ResponseBody

    @RequestMapping(“updateInforEmployee.do”)

    public Message updateInforEmployee(HttpSession httpSession, Employee employee){

    Integer id = (Integer) httpSession.getAttribute(“employeeId”);

    employee.seteId(id);

    if(userInforService.updateEmploueeById(id,employee)<=0) {

    return Message.error(“修改信息失败”);

    return Message.success();

    /**

    • 个人工资信息

    • @param pageNum

    • @param limit

    • @param year

    • @param httpSession

    • @return

    • @throws Exception

    */

    @RequestMapping(“employeeSalaryList.do”)

    @ResponseBody

    public EmployeeSalaryVO findSelective(

    @RequestParam(value=“page”, defaultValue=“1”)int pageNum,

    @RequestParam(value=“limit”, defaultValue=“10”) int limit,

    @RequestParam(value=“year”, defaultValue=“1”) String year,

    HttpSession httpSession) throws Exception {

    Integer eId = (Integer) httpSession.getAttribute(“employeeId”);

    //pageNum:起始页面 pageSize:每页的大小

    PageHelper.startPage(pageNum,limit);

    //查找条件,一定要紧跟在startPage后

    List salaryList = userInforService.getEmployeeSalaryList(eId, year);

    PageInfo pageResult = new PageInfo(salaryList);

    //设置前台需要的数据

    EmployeeSalaryVO employeeSalaryVO = new EmployeeSalaryVO();

    employeeSalaryVO.setCode(0);

    employeeSalaryVO.setMsg(“”);

    employeeSalaryVO.setCount((int) pageResult.getTotal());

    employeeSalaryVO.setData(pageResult.getList());

    return employeeSalaryVO;

    管理员和员工登陆控制:

    /**

    • @Author: admin

    • @Descriiption: 管理员和员工登陆控制

    **/

    @Controller

    public class LoginController {

    @Autowired

    private LoginServiceImpl loginService = null;

    /**

    • @Author: admin

    • @Descriiption: 验证码变更

    • @Date: 14:33 2021/10/5

    • @Param: [request, response]

    • @Return: void

    **/

    @RequestMapping(value = “/changeCode.do”)

    @ResponseBody

    public void getIdentifyingCode(HttpServletRequest request, HttpServletResponse response)

    throws ServletException, IOException

    // 验证码存储在session的identifyingCode,属性中

    CaptchaUtil.outputCaptcha(request, response);

    // 获取员工登陆界面

    @RequestMapping(“/”)

    public String getLoginPage(){

    return “employee/login.html”;

    // 获取管理员登陆界面

    @RequestMapping(“/admin.do”)

    public String getAdminLoginPage(HttpServletRequest request){

    String realPath = request.getServletContext().getRealPath(“/”);

    request.getSession().setAttribute(“realPath”, realPath);

    return “admin/adminLogin.html”;

    /**

    • 员工登录操作

    • @param model

    • @param httpSession

    • @param username

    • @param password

    • @param identifyingcode

    • @return

    */

    @RequestMapping(value = “/employeeLogin.do”)

    @ResponseBody

    public Message employeeLogin(HttpSession httpSession, String username,

    String password, String identifyingcode)

    if(StringUtils.isEmpty(username)) {

    return Message.error(“请填写工号”);

    if(StringUtils.isEmpty(password)) {

    return Message.error(“请填写密码”);

    if(StringUtils.isEmpty(identifyingcode)) {

    return Message.error(“请填写验证码”);

    String code = (String) httpSession.getAttribute(“identifyingCode”);

    if(!identifyingcode.equalsIgnoreCase(code)){

    return Message.error(“验证码错误”);

    Employee employee = loginService.findEmployeeByIdAndPassword(username, password);

    if(employee==null) {

    return Message.error(“工号或密码错误”);

    httpSession.setAttribute(“employeeId”,employee.geteId());

    return Message.success(“员工登录成功”);

    @RequestMapping(value = “/loginSuccess.do”)

    public String loginSucceses(Model model) throws Exception

    return “employee/index.html”;

    /**

    • 管理员登录操作

    • @param model

    • @param httpSession

    • @param username

    • @param password

    • @param identifyingcode

    • @return

    */

    @RequestMapping(value = “/adminLogin.do”)

    @ResponseBody

    public Message adminLogin(HttpSession httpSession, String username,

    String password, String identifyingcode)

    if(StringUtils.isEmpty(username)) {

    return Message.error(“请填写账号”);

    if(StringUtils.isEmpty(password)) {

    return Message.error(“请填写密码”);

    if(StringUtils.isEmpty(identifyingcode)) {

    return Message.error(“请填写验证码”);

    String code = (String) httpSession.getAttribute(“identifyingCode”);

    if(identifyingcode.equalsIgnoreCase(code)){

    SystemManager manager = loginService.findSystemManagerByIdAndPassword(username, password);

    if(manager==null) {

    return Message.error(“账号或密码错误”);

    // 保存到session

    httpSession.setAttribute(“admin”,manager);

    return Message.success(“登录成功”);

    }else {

    return Message.error(“验证码错误”);

    @RequestMapping(value = “/getAdminAccount.do”)

    @ResponseBody

    public String getAdminAccount(HttpSession httpSession){

    SystemManager systemManager = (SystemManager) httpSession.getAttribute(“admin”);

    // SystemManager manager = loginService.findSystemManagerById(id);

    return systemManager.getSmAccount();

    @RequestMapping(value = “/getEmployeeAccount.do”)

    @ResponseBody

    public Map getEmployeeAccount(HttpSession httpSession){

    Integer id = (Integer) httpSession.getAttribute(“employeeId”);

    Employee employee = loginService.findEmployeeById(id);

    HashMap map = new HashMap();

    map.put(“account”,employee.geteAccount());

    map.put(“name”,employee.geteName());

    return map;

    @RequestMapping(value = “/logout.do”)

    public String logout(HttpSession httpSession){

    httpSession.removeAttribute(“employeeId”);

    return “redirect:/”;

    @RequestMapping(value = “/logoutAdmin.do”)

    public String logoutAdmin(HttpSession httpSession){

    httpSession.removeAttribute(“admin”);

    return “redirect:/admin.do”;

    用户管理操作:

    /**

    • 用户管理操作

    */

    @Controller

    @RequestMapping(“/user”)

    public class UserController {

    @Autowired

    private UserService userService;

    /**

    • 用户添加页面

    • @return

    */

    @GetMapping(“/add”)

    public String create() {

    return “user/add”;

    /**

    • 用户添加操作

    • @param user

    • @return

    */

    @PostMapping(“/add”)

    @ResponseBody

    public Map add(@RequestBody User user) {

    if(StringUtils.isEmpty(user.getUserName())){

    return MapControl.getInstance().error(“请填写用户名”).getMap();

    if(StringUtils.isEmpty(user.getName())){

    return MapControl.getInstance().error(“请填写名称”).getMap();

    if(StringUtils.isEmpty(user.getUserPwd())){

    return MapControl.getInstance().error(“请填写密码”).getMap();

    int result = userService.create(user);

    if (result <= 0) {

    return MapControl.getInstance().error().getMap();

    return MapControl.getInstance().success().getMap();

    /**

    • 根据id删除

    • @param id

    • @return

    */

    @PostMapping(“/delete/{id}”)

    @ResponseBody

    public Map delete(@PathVariable(“id”) Integer id) {

    int result = userService.delete(id);

    if (result <= 0) {

    return MapControl.getInstance().error().getMap();

    return MapControl.getInstance().success().getMap();

    //批量删除

    @PostMapping(“/delete”)

    @ResponseBody

    public Map delete(String ids) {

    int result = userService.delete(ids);

    if (result <= 0) {

    return MapControl.getInstance().error().getMap();

    return MapControl.getInstance().success().getMap();

    /**

    • 编辑用户信息操作

    • @param user

    • @return

    */

    @PostMapping(“/edit”)

    @ResponseBody

    public Map edit(@RequestBody User user) {

    if(StringUtils.isEmpty(user.getUserName())){

    return MapControl.getInstance().error(“请填写用户名”).getMap();

    if(StringUtils.isEmpty(user.getName())){

    return MapControl.getInstance().error(“请填写名称”).getMap();

    if(StringUtils.isEmpty(user.getUserPwd())){

    return MapControl.getInstance().error(“请填写密码”).getMap();

    int result = userService.update(user);

    if (result <= 0) {

    return MapControl.getInstance().error().getMap();

    return MapControl.getInstance().success().getMap();

    /**

    • 根据id查询,跳转修改页面

    • @param id

    • @param modelMap

    • @return

    */

    @GetMapping(“/edit/{id}”)

    public String edit(@PathVariable(“id”) Integer id, ModelMap modelMap) {

    User user = userService.detail(id);

    modelMap.addAttribute(“user”, user);

    return “user/edit”;

    //查询所有

    @PostMapping(“/query”)

    @ResponseBody

    public Map query(@RequestBody User user) {

    List list = userService.query(user);

    Integer count = userService.count(user);

    return MapControl.getInstance().success().page(list, count).getMap();

    //跳转列表页面

    @GetMapping(“/list”)

    public String list() {

    return “user/list”;


  • 相关阅读:
    学习vue一些小记
    算法-卡尔曼滤波之卡尔曼滤波的其他三个方程
    【原创】解决centos7 根目录/ 使用率100%的问题,导致无法正常运行 Docker 守护进程
    Centos7修改主机名hostname
    leetcode 刷题 log day 42
    显示控件——字符显示之数据变量
    map和set的简易封装(纯代码)
    网络安全(黑客)自学
    对话框管理器第四章:对话框消息循环
    elementor系统要求
  • 原文地址:https://blog.csdn.net/m0_68551656/article/details/127562931