基于javaweb的SSM+Maven大学生创新项目管理系统(java+ssm+bootstrap+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

510023342402

520023342402

530023342402

540023342402

550023342402

560023342402

基于javaweb的SSM+Maven大学生创新项目管理系统(java+ssm+bootstrap+jsp+mysql)

项目介绍

本项目包含管理员、学生、专家三种角色; 管理员角色包含以下功能: 管理员登录,学院管理,专业管理,班级管理,用户管理,创新计划查看,查看项目申请,项目申请审核等功能。

学生角色包含以下功能: 学生登录,查看创新计划,申请和查看我的项目,创新创业计划书填写等功能。

专家角色包含以下功能: 专家登录,查看创新计划,申请项目,学生项目列表,管理预算记录等功能。

环境需要

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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
@RequestMapping(value = "/edit")
public String edit(HttpServletRequest request, ModelMap model, Integer id) {
Preuser record = preuserService.getPreuserById(id);
model.addAttribute("record", record);
model.addAttribute("edit", true);
model.addAttribute("xueyuans", xueyuanService.all());
model.addAttribute("clazzs", clazzService.all());
model.addAttribute("pros", proService.all());
return "admin/preuser/form";
}

//更新
@RequestMapping(value = "/update", method = {RequestMethod.GET, RequestMethod.POST})
public String update(HttpServletRequest request, Preuser record, ModelMap model) {
if ("post".equals(request.getMethod().toLowerCase())) {
Preuser preuser = new Preuser();
PageSearchParam pageSearch = new PageSearchParam();
pageSearch.setPage(1);
pageSearch.setPagesize(11);
pageSearch.setParams(preuser);
PageResult pageResult = preuserService.getPages(pageSearch);
String msg = "";
if (pageResult.getData().size() > 0 ) {
msg = "用户名已存在";
request.setAttribute("msg", msg);
model.addAttribute("record", record);
model.addAttribute("edit", false);
model.addAttribute("xueyuans", xueyuanService.all());
model.addAttribute("clazzs", clazzService.all());
model.addAttribute("pros", proService.all());
return "admin/preuser/form";

} else {
if (record.getXueyuanid() != null) {
record.setXueyuanname(xueyuanService.getXueyuanById(record.getXueyuanid()).getName());
}
if (record.getClazzid() != null) {
record.setClazzname(clazzService.getClazzById(record.getClazzid()).getName());
}
if (record.getProid() != null) {
record.setProname(proService.getProById(record.getProid()).getName());
}
preuserService.update(record);
return "redirect:/admin/preuser";
}
} else {
model.addAttribute("record", record);
model.addAttribute("edit", false);
model.addAttribute("xueyuans", xueyuanService.all());
model.addAttribute("clazzs", clazzService.all());
model.addAttribute("pros", proService.all());
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
    }
return "admin/comment/form";
}


//查看
@RequestMapping(value = "/view")
public String view(HttpServletRequest request, ModelMap model, Integer id) {
Comment record = commentService.getCommentById(id);
model.addAttribute("record", record);
model.addAttribute("edit", false);
model.addAttribute("projects", projectService.all());
model.addAttribute("users", preuserService.all());
return "admin/comment/form";
}

//编辑
@RequestMapping(value = "/edit")
public String edit(HttpServletRequest request, ModelMap model, Integer id) {
Comment record = commentService.getCommentById(id);
model.addAttribute("record", record);
model.addAttribute("edit", true);
model.addAttribute("projects", projectService.all());
model.addAttribute("users", preuserService.all());
return "admin/comment/form";
}

//更新
@RequestMapping(value = "/update", method = {RequestMethod.GET, RequestMethod.POST})
public String update(HttpServletRequest request, Comment record, ModelMap model) {
if ("post".equals(request.getMethod().toLowerCase())) {

}
if (record.getProjectid() != null) {
record.setProjectname(projectService.getProjectById(record.getProjectid()).getName());
}
if (record.getPreuserid() != null) {
record.setPreusername(preuserService.getPreuserById(record.getPreuserid()).getName());
}
commentService.update(record);
return "redirect:/admin/comment";
}

//删除
@RequestMapping(value = "/del")
public String del(HttpServletRequest request, ModelMap model, Integer id) {
Comment comment = commentService.getCommentById(id);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

}
return "admin/files/page";
}

//新增
@RequestMapping(value = "/add", method = {RequestMethod.GET, RequestMethod.POST})
public String add(HttpServletRequest request, Files record, ModelMap model) {
if ("post".equals(request.getMethod().toLowerCase())) {
String msg = filesService.save(record);
if (msg.equals("添加成功")) {
return "redirect:/admin/files";
}
model.addAttribute("msg", msg);
}
if (record.getProjectid() != null) {
record.setProjectname(projectService.getProjectById(record.getProjectid()).getName());
}
model.addAttribute("projects", projectService.all());
model.addAttribute("record", record);
return "admin/files/form";
}

@RequestMapping(value = "/save", method = {RequestMethod.GET, RequestMethod.POST})
public String save(HttpServletRequest request, HttpServletResponse response, Files record, @RequestParam(value = "file", required = false) MultipartFile file) {
request.setAttribute("record", record);
if ("post".equals(request.getMethod().toLowerCase())) {
if (file != null) {
if (file.getSize() != 0) {
String url = "";

try {
String staticPath =
request.getSession().getServletContext().getRealPath("static/admhttps://yms-1257401191.cos.ap-nanjing.myqcloud.com/");
String fileName = file.getOriginalFilename();
String[] filestr = fileName.split("\\.");
String fileurl = System.currentTimeMillis() + "." + filestr[1];
java.io.File targetFile = new java.io.File(staticPath, fileurl);
file.transferTo(targetFile);
url = "http://localhost:" + request.getLocalPort() +
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
    //更新
@RequestMapping(value = "/update", method = {RequestMethod.GET, RequestMethod.POST})
public String update(HttpServletRequest request, Comment record, ModelMap model) {
if ("post".equals(request.getMethod().toLowerCase())) {

}
if (record.getProjectid() != null) {
record.setProjectname(projectService.getProjectById(record.getProjectid()).getName());
}
if (record.getPreuserid() != null) {
record.setPreusername(preuserService.getPreuserById(record.getPreuserid()).getName());
}
commentService.update(record);
return "redirect:/admin/comment";
}

//删除
@RequestMapping(value = "/del")
public String del(HttpServletRequest request, ModelMap model, Integer id) {
Comment comment = commentService.getCommentById(id);
commentService.delete(id);
return "redirect:/admin/comment";
}
}
package com.ognice.controller.admin;


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
        Project projectById = projectService.getProjectById(record.getProjectid());
if (record.getProjectid() != null) {
record.setProjectname(projectById.getName());

}
if (record.getPreuserid() != null) {
record.setPreusername(preuserService.getPreuserById(record.getPreuserid()).getName());
}
if (record.getStatus() == 1) {
projectById.setProcess(1);
projectById.setStatus(1);
if (projectById.getTeaid() == null) {
projectById.setStatus(2);
}
projectService.update(projectById);
}
String msg = projectapplyService.save(record);

if (msg.equals("添加成功")) {
return "redirect:/admin/project";
}
request.setAttribute("msg", msg);
}
return "admin/projectapply/form";
}


//查看
@RequestMapping(value = "/view")
public String view(HttpServletRequest request, ModelMap model, Integer id) {
Projectapply record = projectapplyService.getProjectapplyById(id);
model.addAttribute("record", record);
model.addAttribute("edit", false);
model.addAttribute("projects", projectService.all());
model.addAttribute("preusers", preuserService.all());
return "admin/projectapply/form";
}

//编辑
@RequestMapping(value = "/edit")
public String edit(HttpServletRequest request, ModelMap model, Integer id) {
Projectapply record = projectapplyService.getProjectapplyById(id);
model.addAttribute("record", record);
model.addAttribute("edit", true);
model.addAttribute("projects", projectService.all());
model.addAttribute("preusers", preuserService.all());
return "admin/projectapply/form";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
        endapplyService.delete(id);
return "redirect:/admin/endapply";
}
}
package com.ognice.controller.admin;


/**
* 创新计划管理 controller
* @version 1.0
*/
@Controller
@RequestMapping(value = "/admin/plan")
public class AdminPlanController {
@Resource
private IPlanService planService;
/**
*列表
*/
@RequestMapping(value = "", method = { RequestMethod.GET, RequestMethod.POST })
public String index(HttpServletRequest request, ModelMap model, Plan searchParam, Integer page, Integer pageSize) {
PageSearchParam pageSearch = new PageSearchParam();
pageSearch.setPage(page == null ? 1 : page);
pageSearch.setPagesize(pageSize == null ? 20 : pageSize);
pageSearch.setParams(searchParam);
PageResult pageResult = planService.getPages(pageSearch);
model.addAttribute("datas", pageResult);
model.addAttribute("record", searchParam);
return "admin/plan/page";


项目链接:
https://javayms.github.io?id=281122522008200oo
https://javayms.pages.dev?id=281122522008200oo