• ssm+mysql实现进销存系统


    作者主页:夜未央5788

     简介:Java领域优质创作者、Java项目、学习资料、技术互助

    文末获取源码

    项目介绍

    进销存库存管理系统源码,采用了ssm框架,功能结构非常简单明了,界面也比较清爽大气,非常适合学生和Java新手拿来学习使用。
    本项目主要分为管理员、销售、采购员三种角色;
    管理员主要功能包括:
    用户信息管理:用户查询、用户添加;
    货物信息管理:货物查询、库存查询;
    入库单信息管理:入库单新建、入库单审核;
    出库信息管理:出库单新建、出库单审核;

    销售主要功能包括:
    出库信息管理:出库单新建;

    采购员主要功能包括:
    货物信息管理:库存查询
    入库单信息管理:入库单新建;

    环境要求:

    1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
    2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
    3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
    4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
    5.是否Maven项目: 否;

    6.数据库:MySql 5.7版本;

    技术栈

    1. 后端:Spring SpringMVC MyBatis

    2. 前端:JSP+css+javascript+bootstrap+jQuery

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
    若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
    3. 将项目中dbconfig.properties配置文件中的数据库配置改为自己的配置;
    4. 运行项目,输入localhost:8080/ERPSystem 登录

    运行截图

     

     

     

     

     

     

     

    相关代码

    用户控制器

    1. @Controller
    2. @RequestMapping("/user/")
    3. public class UserController {
    4. @Autowired
    5. private UserService u;
    6. @Autowired
    7. private HwService h;
    8. @Autowired
    9. private ShService s;
    10. // login
    11. @RequestMapping("tzlogin")
    12. public String tzlogin() {
    13. return "redirect:/";
    14. }
    15. // 登录验证
    16. @ResponseBody
    17. @RequestMapping("login")
    18. public String login(User user, HttpSession session, String requestDate) {
    19. Map map = new HashMap();
    20. JSONObject requestJson = JSONObject.fromObject(requestDate);
    21. map.put("name", requestJson.getString("name"));
    22. map.put("password", requestJson.getString("password"));
    23. user.setName(requestJson.getString("name"));
    24. user.setPassword(requestJson.getString("password"));
    25. User user2 = u.login(user);
    26. if (user2 == null) {
    27. Map reMap = new HashMap();
    28. reMap.put("succ", "false");
    29. JSONObject jsonObject = JSONObject.fromObject(reMap);
    30. return jsonObject.toString();
    31. } else {
    32. if(user2.getT2() == 1){ // 状态不可用
    33. Map reMap = new HashMap();
    34. reMap.put("succ", "no_auth");
    35. JSONObject jsonObject = JSONObject.fromObject(reMap);
    36. return jsonObject.toString();
    37. }
    38. session.setAttribute("t2", user2.getT2());
    39. session.setAttribute("id", user2.getId());
    40. System.out.println("user2" + user2);
    41. session.setAttribute("name", user2.getName());
    42. session.setAttribute("user", user2);
    43. session.setAttribute("t1", user2.getT1());
    44. Map reMap = new HashMap();
    45. reMap.put("succ", "true");
    46. JSONObject jsonObject = JSONObject.fromObject(reMap);
    47. return jsonObject.toString();
    48. }
    49. }
    50. @RequestMapping("sy")
    51. public String denglu(HttpSession session, String t2, Model model, String name, User user) {
    52. int qx = (int) session.getAttribute("t1"); // 角色
    53. // model.addAttribute("list", u.findall());
    54. if (qx == 0) { // 管理员
    55. model.addAttribute("list", u.findall(user));
    56. return "gly/yh";
    57. } else if (qx == 1) { // 管理员
    58. model.addAttribute("list", u.findall(user));
    59. return "gly/yh";
    60. } else if (qx == 2) { // 销售
    61. return "redirect:tzckxs";
    62. } else if (qx == 3) { // 采购员
    63. return "redirect:tzkccg";
    64. }
    65. return "redirect:/";
    66. }
    67. @RequestMapping("touser")
    68. public String touser(User user) throws ParseException {
    69. // SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH");
    70. // String time = df.format(System.currentTimeMillis());
    71. user.setDate(new Date(System.currentTimeMillis()));
    72. user.setT1(2);
    73. user.setT2(0);
    74. u.touser(user);
    75. return "redirect:tzlogin";
    76. }
    77. @RequestMapping("delete")
    78. public String delete(int id) {
    79. u.delete(id);
    80. return "redirect:sy";
    81. }
    82. @RequestMapping("tjyh")
    83. public String tzyh() {
    84. return "gly/upyh";
    85. }
    86. @RequestMapping("insert")
    87. public String insert(User user) throws ParseException {
    88. //SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH");
    89. //String time = df.format(new Date(System.currentTimeMillis()));
    90. user.setDate(new Date(System.currentTimeMillis()));
    91. u.touser(user);
    92. return "redirect:sy";
    93. }

    如果也想学习本系统,下面领取。回复:001ssm  

  • 相关阅读:
    NPM 包开发与优化全面指南
    闲鱼对 Flutter-Native 混合工程解耦的探索
    Java 值传递与引用传递的简介说明
    七、HDFS文件系统的存储原理
    Jmeter压力测试工具,下载、安装、汉化超详细教程
    Win11右键菜单反应慢有延迟解决方法分享
    Redis实战之Redisson使用技巧详解
    AUTOSAR基础篇之StbM
    面试想吊打面试官?阿里架构师教你吃透Spring(Boot、Cloud、MVC)
    如何对需求变更进行精准的风险评估?
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/125513722