• SSM大学生创新项目管理系统


    作者主页:夜未央5788

     简介:Java领域优质创作者、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.数据库:MySql 5.7版本;

    6.是否Maven项目:是;

    技术栈

    1. 后端:Spring+SpringMVC+Mybatis

    2. 前端:JSP+CSS+JavaScript+jQuery+bootstrap

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

    2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

    若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

    3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置;

    4. 运行项目,在浏览器中输入http://localhost:8080/ssm_schoolproject_sys 登录

    运行截图

     管理员角色

     

     

     

     

     

    学生角色

     

     

     

     

    专家角色

     

     

     

     

     

    相关代码

    用户控制器

    1. @Controller
    2. @RequestMapping(value = "/admin/user", method = RequestMethod.GET)
    3. public class UserController {
    4. @Resource
    5. private IUserService userservice;
    6. /**
    7. *
    8. */
    9. @RequestMapping(value = "", method = {RequestMethod.GET, RequestMethod.POST})
    10. public String demo(ModelMap model, User searchParam, Integer page, Integer pageSize) {
    11. PageSearchParam pageSearch = new PageSearchParam();
    12. pageSearch.setPage(page == null ? 1 : page);
    13. pageSearch.setPagesize(pageSize == null ? 20 : pageSize);
    14. pageSearch.setParams(searchParam);
    15. PageResult pageResult = userservice.getPages(pageSearch);
    16. model.addAttribute("datas", pageResult);
    17. return "admin/user/page";
    18. }
    19. @RequestMapping(value = "/add", method = {RequestMethod.GET, RequestMethod.POST})
    20. public String add(HttpServletRequest request, User u, ModelMap model) {
    21. if ("post".equals(request.getMethod().toLowerCase())) {
    22. String msg = userservice.save(u);
    23. if (msg.equals("添加成功")) {
    24. return "redirect:/admin/user";
    25. }
    26. model.addAttribute("msg", msg);
    27. }
    28. return "admin/user/form";
    29. }
    30. //查看
    31. @RequestMapping(value = "/view")
    32. public String view(HttpServletRequest request, ModelMap model, Integer id) {
    33. User record = userservice.getUserById(id);
    34. model.addAttribute("record", record);
    35. model.addAttribute("edit", false);
    36. return "admin/user/form";
    37. }
    38. //更新
    39. @RequestMapping(value = "/update", method = {RequestMethod.GET, RequestMethod.POST})
    40. public String update(HttpServletRequest request, User record, ModelMap model
    41. ) {
    42. if ("post".equals(request.getMethod().toLowerCase())) {
    43. }
    44. userservice.update(record);
    45. return "redirect:/admin/user";
    46. }
    47. //编辑
    48. @RequestMapping(value = "/edit")
    49. public String edit(HttpServletRequest request, ModelMap model, Integer id) {
    50. User record = userservice.getUserById(id);
    51. model.addAttribute("record", record);
    52. model.addAttribute("edit", true);
    53. return "admin/user/form";
    54. }
    55. @RequestMapping(value = "/del")
    56. public String lock(@RequestParam Integer id) {
    57. userservice.delete(id);
    58. return "redirect:/admin/user";
    59. }
    60. }

    专业管理控制器

     

    1. @Controller
    2. @RequestMapping(value = "/admin/pro")
    3. public class AdminProController {
    4. @Resource
    5. private IProService proService;
    6. @Resource
    7. private IXueyuanService xueyuanService;
    8. /**
    9. *列表
    10. */
    11. @RequestMapping(value = "", method = { RequestMethod.GET, RequestMethod.POST })
    12. public String index(HttpServletRequest request, ModelMap model, Pro searchParam, Integer page, Integer pageSize) {
    13. PageSearchParam pageSearch = new PageSearchParam();
    14. pageSearch.setPage(page == null ? 1 : page);
    15. pageSearch.setPagesize(pageSize == null ? 20 : pageSize);
    16. pageSearch.setParams(searchParam);
    17. PageResult pageResult = proService.getPages(pageSearch);
    18. model.addAttribute("datas", pageResult);
    19. model.addAttribute("record", searchParam);
    20. model.addAttribute("xueyuans", xueyuanService.all());
    21. return "admin/pro/page";
    22. }
    23. //新增
    24. @RequestMapping(value = "/add", method = { RequestMethod.GET, RequestMethod.POST })
    25. public String add(HttpServletRequest request, Pro record, ModelMap model) {
    26. if ("post".equals(request.getMethod().toLowerCase())) {
    27. String msg = proService.save(record);
    28. if (msg.equals("添加成功")) {
    29. return "redirect:/admin/pro";
    30. }
    31. model.addAttribute("msg", msg);
    32. }
    33. if(record.getXueyuanid()!=null){
    34. record.setXueyuanname(xueyuanService.getXueyuanById(record.getXueyuanid()).getName());
    35. }
    36. model.addAttribute("xueyuans", xueyuanService.all());
    37. model.addAttribute("record", record);
    38. return "admin/pro/form";
    39. }
    40. @RequestMapping(value = "/save", method = { RequestMethod.GET, RequestMethod.POST })
    41. public String save(HttpServletRequest request, HttpServletResponse response, Pro record) {
    42. request.setAttribute("record", record);
    43. if ("post".equals(request.getMethod().toLowerCase())) {
    44. if(record.getXueyuanid()!=null){
    45. record.setXueyuanname(xueyuanService.getXueyuanById(record.getXueyuanid()).getName());
    46. }
    47. String msg = proService.save(record);
    48. if (msg.equals("添加成功")) {
    49. return "redirect:/admin/pro";
    50. }
    51. request.setAttribute("msg", msg);
    52. }
    53. return "admin/pro/form";
    54. }
    55. //查看
    56. @RequestMapping(value = "/view")
    57. public String view(HttpServletRequest request,ModelMap model,Integer id) {
    58. Pro record = proService.getProById(id);
    59. model.addAttribute("record", record);
    60. model.addAttribute("edit", false);
    61. model.addAttribute("xueyuans", xueyuanService.all());
    62. return "admin/pro/form";
    63. }
    64. //编辑
    65. @RequestMapping(value = "/edit")
    66. public String edit(HttpServletRequest request,ModelMap model,Integer id) {
    67. Pro record = proService.getProById(id);
    68. model.addAttribute("record", record);
    69. model.addAttribute("edit", true);
    70. model.addAttribute("xueyuans", xueyuanService.all());
    71. return "admin/pro/form";
    72. }
    73. //更新
    74. @RequestMapping(value = "/update",method = { RequestMethod.GET, RequestMethod.POST })
    75. public String update(HttpServletRequest request, Pro record, ModelMap model) {
    76. if ("post".equals(request.getMethod().toLowerCase())) {
    77. }
    78. if(record.getXueyuanid()!=null){
    79. record.setXueyuanname(xueyuanService.getXueyuanById(record.getXueyuanid()).getName());
    80. }
    81. proService.update(record);
    82. return "redirect:/admin/pro";
    83. }
    84. //删除
    85. @RequestMapping(value = "/del")
    86. public String del(HttpServletRequest request,ModelMap model,Integer id) {
    87. Pro pro=proService.getProById(id);
    88. proService.delete(id);
    89. return "redirect:/admin/pro";
    90. }
    91. }

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

  • 相关阅读:
    (算法)硬币问题
    【C语言】文件操作
    Java中Long型数据类型对应MySQL数据库中哪种类型?
    全国心力衰竭日:重症心衰的黑科技——永久型人工心脏
    MySQL使用关键字做表名和列名的坑【解决方案】
    只有68g的电竞鼠标,软硬件都能自定义,雷柏VT9Pro上手
    二十四、W5100S/W5500+RP2040树莓派Pico<PHY的状态模式控制>
    【UniApp】-uni-app-处理项目输入数据(苹果计算器)
    【英语:语法基础】B8.核心语法-并列复合句和主从复合句
    如何优雅的使用 GORM 来实现 MySQL 事务
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/125478014