基于javaweb的毕业设计管理系统(java+jsp+javascript+servlet+mysql)

基于javaweb的毕业设计管理系统(java+jsp+javascript+servlet+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

20220819205316

20220819205317

20220819205318

20220819205319

20220819205320

20220819205322

20220819205323

基于javaweb+mysql的毕业设计管理系统(java+JSP+JavaScript+servlet+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项目:否;

技术栈 JSP+CSS+JavaScript+servlet+mysql

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中Connector.java配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:8080/jsp_bysjsys/ 登录 学生账号/密码: student/123456  指导教师账号/密码: teacher/123456  管理员账号/密码:admin/admin

用户管理控制层:

@Controller

public class UserController {

@Autowired

private StudentService studentService;

@Autowired

private TeacherService teacherService;

@Autowired

private AdminService adminService;

/**

  • 用户登录

*/

@RequestMapping(value = “/login.action”, method = RequestMethod.POST)

public String login(String usercode, String password, String role, Model model, HttpSession session) {

if(role.equals(“学生”)) {

Student student = studentService.findStudent(usercode, password);

if(student!=null) {

User user = new User();

user.setRole(role);

session.setAttribute(“USER”, user);

session.setAttribute(“USER_INFO”, student);

return “redirect:student/toindex.action”;

else if(role.equals(“教师”)) {

Teacher teacher = teacherService.findTeacher(usercode, password);

if(teacher!=null) {

User user = new User();

user.setRole(role);

session.setAttribute(“USER”, user);

session.setAttribute(“USER_INFO”, teacher);

return “redirect:teacher/roleset.action”;

else if(role.equals(“管理员”)) {

Admin admin = adminService.findAdmin(usercode, password);

if(admin!=null) {

User user = new User();

user.setRole(role);

session.setAttribute(“USER”, user);

session.setAttribute(“USER_INFO”, admin);

return “redirect:admin/toindex.action”;

model.addAttribute(“msg”, “账号或密码错误,请重新输入!”);

return “login”;

/**

  • 退出登录

*/

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

public String logout(HttpSession session) {

// 清除Session

session.invalidate();

// 重定向到登录页面的跳转方法

return “redirect:tologin.action”;

/**

  • 向用户登陆页面跳转

*/

@RequestMapping(value = “/tologin.action”, method = RequestMethod.GET)

public String toLogin() {

return “login”;

学生管理控制层:

@Controller

public class StudentController {

private static final int PAGE_SIZE = 5;

@Autowired

private StudentService studentService;

@Autowired

private TitleService titleService;

@Autowired

private TeacherService teacherService;

@Autowired

private SelectTitleService selectTitleService;

@Autowired

private ProjBookService projBookService;

@Autowired

private OpenReportService openReportService;

@Autowired

private MidCheckService midCheckService;

@Autowired

private ThesisService thesisService;

@Autowired

private ThesisAttachmentService thesisAttachmentService;

@Autowired

private ScoreProportionService scoreProportionService;

/**

  • 向学生主页面跳转

*/

@RequestMapping(value = “/student/toindex.action”, method = RequestMethod.GET)

public ModelAndView toIndex(HttpSession session) {

Student student = (Student)session.getAttribute(“USER_INFO”);

int sum = titleService.findTitleSum(student.getMajor(),“已审批”);

int s = selectTitleService.findSelTitleListByState(student.getMajor(),“同意”);

int s1 = selectTitleService.findSelTitleListByState(student.getMajor(),“待同意”);

ModelAndView mv = new ModelAndView();

mv.addObject(“sum”, sum);

mv.addObject(“s”, s);

mv.addObject(“s1”, s1);

mv.setViewName(“views/user/student/index”);

return mv;

/**

  • 向个人信息修改页面跳转(学生)

*/

@RequestMapping(value = “/student/topersonInfo.action”)

public String topersonInfo(HttpSession session) {

Student student = (Student)session.getAttribute(“USER_INFO”);

student = studentService.findStudent(student.getsId(), student.getsPwd());

session.setAttribute(“USER_INFO”, student);

return “views/user/student/personInfo”;

/**

  • 学生信息修改

*/

@RequestMapping(value = “/student/editInfo.action”)

@ResponseBody

public String editInfo(Student student) {

int rows =0;

try{

rows = studentService.editInfo(student);

}catch(Exception e){

rows =0;

if(rows > 0){

System.out.println(“OK”);

return “OK”;

}else{

System.out.println(“FAIL”);

return “FAIL”;

/**

  • 向密码修改页面跳转(学生)

*/

@RequestMapping(value = “/student/toeditPwd.action”)

public String toeditPwd(HttpSession session) {

Student student = (Student)session.getAttribute(“USER_INFO”);

student = studentService.findStudentById(student.getsId());

session.setAttribute(“USER_INFO”, student);

return “views/user/student/editPwd”;

/**

  • 学生密码修改

*/

@RequestMapping(value = “/student/editPwd.action”)

@ResponseBody

public String editPwd(Student student) {

int rows =0;

try{

rows = studentService.editInfo(student);

}catch(Exception e){

rows =0;

if(rows > 0){

return “OK”;

}else{

return “FAIL”;

/**

  • 向选题页面跳转(学生)

*/

@RequestMapping(value = “/student/totitlelist.action”)

public ModelAndView totitlelist(HttpSession session, @ModelAttribute(“title”) Title title,

@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {

// pageNo 页码 pageSize 每页记录数

PageHelper.startPage(pageNum, PAGE_SIZE);

Student student = (Student)session.getAttribute(“USER_INFO”);

Listlist = titleService.findTitleListByMajor(title ,(String)student.getMajor());

PageInfo pageInfo = new PageInfo<>(list,5);

ModelAndView mv = new ModelAndView();

mv.addObject(“title”, title);

mv.addObject(“pageInfo”, pageInfo);

mv.setViewName(“views/user/student/titlelist”);

return mv;

/**

  • 查看课题详情ById(学生)

*/

@RequestMapping(“/student/getTitleInfoById.action”)

@ResponseBody

public Title getTitleInfoById(Long titlId) {

Title titleInfo = titleService.findTitleById(titlId);

System.out.println(titleInfo.getMajor());

return titleInfo;

/**

  • 选择课题(学生)

*/

@RequestMapping(“/student/selecttitle.action”)

@ResponseBody

public String Selecttitle(HttpSession session, SelectTitle selectTitle) {

Student student = (Student)session.getAttribute(“USER_INFO”);

selectTitle.setsId(student.getsId());

SelectTitle result = selectTitleService.getSelectTitle(selectTitle);

if(result!=null) {

return “FAIL1”;

Title title = new Title();

title.setTitlId(selectTitle.getTitlId());

List list = selectTitleService.findSelTitleListBysIdAndState(student.getsId(), “待同意”);

if(list.size()!=0) {

return “FAIL4” ;

list = selectTitleService.findSelTitleListBysIdAndState(student.getsId(), “同意”);

if(list.size()!=0) {

return “FAIL2” ;

else {

int rows = 0;

try{

selectTitle.setSeltitlState(“待同意”);

rows = selectTitleService.createSelectTitle(selectTitle);

}catch(Exception e){

rows = 0;

if(rows > 0){

System.out.println(“选择课题成功!!!!”);

return “OK”;

}else{

System.out.println(“选择课题失败!!!!”);

return “FAIL3”;

/**

  • 查看已选课题(学生)

*/

@RequestMapping(“/student/selTitleById.action”)

@ResponseBody

public ModelAndView selTitleById(HttpSession session, @ModelAttribute(“title”) Title title,

@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {

// pageNo 页码 pageSize 每页记录数

PageHelper.startPage(pageNum, PAGE_SIZE);

Student student = (Student)session.getAttribute(“USER_INFO”);

Listlist = titleService.findTitleList(title, (String)student.getsId());

PageInfo pageInfo = new PageInfo<>(list,5);

ModelAndView mv = new ModelAndView();

List list1 = teacherService.findTeacherBydept(student.getDept());

int i = selectTitleService.findSelTitle(student.getsId());

mv.addObject(“title”, title);

mv.addObject(“i”, i);

mv.addObject(“Teacher”, list1);

mv.addObject(“pageInfo”, pageInfo);

mv.setViewName(“views/user/student/selecttitlelist”);

return mv;

/**

  • 删除已选课题(学生退选)

*/

@RequestMapping(“/student/delTitleInfoById.action”)

@ResponseBody

public String delTitleInfoById(HttpSession session ,Long id) {

Student student = (Student)session.getAttribute(“USER_INFO”);

int rows = selectTitleService.deleteCustomer(id,(String)student.getsId());

if(rows > 0){

Title title = new Title();

title.setTitlId(id);

if(titleService.findTitleById(id).getTitlState().equals(“待指导教师审批”)) {

titleService.deleteTitle(id);

else {

title.setSelState(“未被选择”);

titleService.updateTitleSelStateById(title);

return “OK”;

}else{

return “FAIL”;

/**

  • 任务书文件列表(学生)

*/

@RequestMapping(“/student/projBooklist.action”)

public ModelAndView projBooklist(HttpSession session ,@ModelAttribute(“pro

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值