基于javaweb+mysql的毕业论文管理系统(java+SSM+JSP+Tomcat+mysql)

毕业设计管理系统
1、本系统使用SSM框架

2、有管理员、教师、学生三种角色,管理员使用admin/admin登录,教师使用t_01/6666登录,学生使用142001/111登录

3、管理员有最大权限,可以进行信息管理、教师管理、学生管理、选题管理、公告管理、查看已上传等;

4、教师角色包括个人信息管理、选题管理、进度管理、学生管理、疑问管理、文档管理、成绩管理

5、学生角色包括个人信息管理、课题管理、进度管理、文档管理、提问管理、查看答辩资格、成绩管理

管理员用户:admin 密码:admin

教师用户:t_01 密码:6666

学生用户:142001 密码:111

环境要求
1.JDK配置

首先安装好JDK,我一般使用1.8版本的JDK。

2.安装IDEA
3.MySQL安装
4. IDEA/Eclipse配置Tomcat 8

MySQL一般安装5.7版本的。请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

适用

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

		try {
			rows = baseMajorService.createMajor(baseMajor);
		} catch(Exception e) {
			
		}		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	/**
	* 修改专业信息
	/**
	 * 根据浏览器的不同进行编码设置,返回编码后的文件名
	 */
	public String getFilename(HttpServletRequest request, String filename) throws Exception {
		// IE不同版本User-Agent中出现的关键词
		String[] IEBrowserKeyWords = { "MSIE", "Trident", "Edge" };
		// 获取请求头代理信息
		String userAgent = request.getHeader("User-Agent");
		for (String keyWord : IEBrowserKeyWords) {
			if (userAgent.contains(keyWord)) {
				// IE内核浏览器,统一为UTF-8编码显示
				return URLEncoder.encode(filename, "UTF-8");
			}
		}
		// 火狐等其它浏览器统一为ISO-8859-1编码显示
		return new String(filename.getBytes("UTF-8"), "ISO-8859-1");
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	
	/**
	 * 修改教师信息
	 */
	@RequestMapping("/admin/updateTeacher.action")
	@ResponseBody
	public String updateTeacher(Teacher teacher) {
		if(teacher.getPower().equals("否")) {
			teacher.setMajorId(null);
			teacher.setMajor("无");
		}
		else {
			BaseMajor baseMajor = baseMajorService.findMajorById(teacher.getMajorId());
			teacher.setMajor(baseMajor.getMajorName());
		}
		int rows = 0;
		try {
			rows = teacherService.editInfo(teacher);
		ScoreProportion scoreProportion = new ScoreProportion();
		scoreProportion.setProportionId("1");
		scoreProportion.settScoreProportion(Integer.parseInt(tScoreProportion)*0.01);
		scoreProportion.setLeaderScoreProportion(Integer.parseInt(leaderScoreProportion)*0.01);
		scoreProportion.setReviewScoreProportion(Integer.parseInt(reviewScoreProportion)*0.01);
		int rows =0;
		try{
			rows = scoreProportionService.update(scoreProportion);
			}catch(Exception e){
				
			}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	        return "OK";
	    }else 
	    	return "FAIL";
	}
}
后台管理员控制层:
@Controller
public class AdminController {
	
	@Autowired
	private TeacherService teacherService;
	@Autowired
	private StudentService studentService;
	@Autowired
	private BaseDeptService baseDeptService;
	@Autowired
			// 设置响应头
			HttpHeaders headers = new HttpHeaders();
			// 通知浏览器以下载的方式打开文件
			headers.setContentDispositionFormData("attachment", filename);
			// 定义以流的形式下载返回文件数据
			headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
			// 使用Sring MVC框架的ResponseEntity对象封装返回下载数据
			result = new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers, HttpStatus.OK);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
			response.setContentType("text/html;charset=utf-8");
			PrintWriter out = response.getWriter();
			out.print("<script language=\"javascript\">alert('下载失败!')</script>");
		} catch (IOException e) {
			e.printStackTrace();
			response.setContentType("text/html;charset=utf-8");
			PrintWriter out = response.getWriter();
			out.print("<script language=\"javascript\">alert('下载失败!')</script>");
		}
		return result;
	}
	/**
	 * 文件上传
	 * @throws IOException 
		}else if(fType.equals("论文")) {
			List<Thesis> list = thesisService.findThesisBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("附件")) {
			List<ThesisAttachment> list = thesisAttachmentService.findThesisAttachmentBysId(student.getsId());
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}
		student = studentService.findStudent(student.getsId(), student.getsPwd());
		Title title = titleService.findTitleBysId(student.getsId());
		String tId = title.gettId();
	//	String tName = title.gettName();
			out.print("<script language=\"javascript\">alert('下载失败!')</script>");
		}
		return result;
	}
	/**
	 * 文件上传
	 * @throws IOException 
	 */
	@RequestMapping("/file/fileUpload.action")
	public ModelAndView fileUpload(HttpSession session,HttpServletResponse response,
			@RequestParam("fType") String fType,
			@RequestParam("uploadfile") List<MultipartFile> uploadfile, HttpServletRequest request) throws IOException {
		Student student = (Student)session.getAttribute("USER_INFO");
		ModelAndView mv = new ModelAndView();
		mv.addObject("fType", fType);
		if(fType.equals("任务书")) {
			List<ProjBook> list = projBookService.findProjBookBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("开题报告")) {
			List<OpenReport> list = openReportService.findOpenReportBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
								ProjBook projBook = new ProjBook();
								projBook.setfId(myFileService.selectByfName(originalFilename).getfId());
								projBook.setsId(student.getsId());
								projBook.setAgree("待通过");
								projBookService.createProjBook(projBook);
							}else if(fType.equals("开题报告")) {
								OpenReport openReport = new OpenReport();
								openReport.setfId(myFileService.selectByfName(originalFilename).getfId());
								openReport.setsId(student.getsId());
								openReport.setAgree("待通过");
								openReportService.createOpenReport(openReport);
							}else if(fType.equals("中期检查")) {
								MidCheck midCheck = new MidCheck();
								midCheck.setfId(myFileService.selectByfName(originalFilename).getfId());
								midCheck.setsId(student.getsId());
								midCheck.setAgree("待通过");
								midCheckService.createMidCheck(midCheck);
							}else if(fType.equals("论文")) {
								SelectTitle selectTitle = selectTitleService.findSelTitleListBysIdAndState(student.getsId(),"同意").get(0);
								Thesis thesis = new Thesis();
								thesis.setfId(myFileService.selectByfName(originalFilename).getfId());
								thesis.setsId(student.getsId());
								thesis.setAgree("待通过");
								thesis.setTitlId(selectTitle.getTitlId());
								thesisService.createThesis(thesis);
	}
	/**
	 * 管理员密码修改
	 */
	@RequestMapping(value = "/admin/editPwd.action")
	@ResponseBody
	public String editPwd(Admin admin) {
		int rows =0;
		try{
			rows = adminService.editInfo(admin);
			}catch(Exception e){
				
			}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 向文件列表跳转

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值