基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+tomcat+mysql)
基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+tomcat+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+SSM+Maven的毕业论文管理系统(java+SSM+Maven+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版本的。
文件管理控制层:
@Controller
public class FileController {
@Autowired
private MyFileService fileService;
@Autowired
private SelectTitleService selectTitleService;
@Autowired
private TeacherService teacherService;
@Autowired
private ProjBookService projBookService;
@Autowired
private OpenReportService openReportService;
@Autowired
private MidCheckService midCheckService;
@Autowired
private ThesisService thesisService;
@Autowired
private ThesisAttachmentService thesisAttachmentService;
@Autowired
private StudentService studentService;
@Autowired
private TitleService titleService;
@Autowired
private MyFileService myFileService;
/**
- 根据浏览器的不同进行编码设置,返回编码后的文件名
*/
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”);
/**
- 预览文档(pdf)
*/
@RequestMapping(“/file/toPdfProjBook.action”)
public ModelAndView toPdfProjBook(Long num1, String num2) {
Myfile file = fileService.toPdfProjBook(num1);
Teacher teacher = teacherService.findTeacherById(num2);
String fPath = file.getfPath();
String fPath2 = StringUtils.substringBeforeLast(fPath, “.”);
fPath2 = fPath2 + “.pdf”;
System.out.println(“检查是否存在此pdf文件” + fPath2);
File file2 = new File(fPath2);
if(!file2.exists()) {
WordToPdf w = new WordToPdf();
w.wordToPDF(fPath, fPath2);
String f = file.getfName();
f = f.substring(0, f.indexOf(“.”));
f = f + “.pdf”;
String t = teacher.gettId();
ModelAndView mv = new ModelAndView();
mv.addObject(“f”, f);
mv.addObject(“t”, t);
System.out.println(f+t);
mv.setViewName(“views/pdf”);
return mv;
/**
- 文件下载
*/
@RequestMapping(“/file/filedown.action”)
public ResponseEntity<byte[]> downfile(HttpSession session, HttpServletRequest request,
HttpServletResponse response) throws Exception {
String fId = request.getParameter(“fId”);
ProjBook projBook = null;
Myfile myfile = new Myfile();
long l = Long.parseLong(fId);
myfile = fileService.selectById(l);
String filename = myfile.getfName();
projBook = projBookService.findProjBookByfId(l);
User user =(User) session.getAttribute(“USER”);
String path = null;
if(user.getRole().equals(“学生”)) {
System.out.println(“进来了”);
Student student = (Student) session.getAttribute(“USER_INFO”);
List list = projBookService.findProjBookList(projBook, (String) student.getsId());
String tId = list.get(0).gettId();
String tName = list.get(0).gettName();
System.out.println(tId);
System.out.println(tName);
tName = tId;
path = request.getServletContext().getRealPath(“/upload/”);
path = path + tName + “\”;
else if(user.getRole().equals(“教师”)) {
String tId = request.getParameter(“tId”);
String tName = request.getParameter(“tName”);
tName = tId;
path = request.getServletContext().getRealPath(“/upload/”);
path = path + tName + “\”;
System.out.println("地址是 " + path);
// 指定要下载的文件所在路径
ResponseEntity<byte[]> result = null;
try {
// 创建该文件对象
File file = new File(path + File.separator + filename);
// 对文件名编码,防止中文文件乱码
filename = this.getFilename(request, filename);
// 设置响应头
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(“<scriipt language=“javascriipt”>alert(‘下载失败!’)”);
} catch (IOException e) {
e.printStackTrace();
response.setContentType(“text/html;charset=utf-8”);
PrintWriter out = response.getWriter();
out.print(“<scriipt language=“javascriipt”>alert(‘下载失败!’)”);
return result;
/**
文件上传
@throws IOException
*/
@RequestMapping(“/file/fileUpload.action”)
public ModelAndView fileUpload(HttpSession session,HttpServletResponse response,
@RequestParam(“fType”) String fType,
@RequestParam(“uploadfile”) List uploadfile, HttpServletRequest request) throws IOException {
Student student = (Student)session.getAttribute(“USER_INFO”);
ModelAndView mv = new ModelAndView();
mv.addObject(“fType”, fType);
if(fType.equals(“任务书”)) {
List list = projBookService.findProjBookBysIdAndAgree(student.getsId(), “待通过”);
if(list.size()!=0) {
mv.addObject(“FAIL”, “FAIL1”);
mv.setViewName(“views/error”);
return mv;
}else if(fType.equals(“开题报告”)) {
List list = openReportService.findOpenReportBysIdAndAgree(student.getsId(), “待通过”);
if(list.size()!=0) {
mv.addObject(“FAIL”, “FAIL1”);
mv.setViewName(“views/error”);
return mv;
}else if(fType.equals(“中期检查”)) {
List list = midCheckService.findMidCheckBysIdAndAgree(student.getsId(), “待通过”);
if(list.size()!=0) {
mv.addObject(“FAIL”, “FAIL1”);
mv.setViewName(“views/error”);
return mv;
}else if(fType.equals(“论文”)) {
List list = thesisService.findThesisBysIdAndAgree(student.getsId(), “待通过”);
if(list.size()!=0) {
mv.addObject(“FAIL”, “FAIL1”);
mv.setViewName(“views/error”);
return mv;
}else if(fType.equals(“附件”)) {
List 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();
String t = tId;
String s = student.getsId() + student.getsName();
s = s + fType;
// 判断所上传文件是否存在
if (!uploadfile.isEmpty() && uploadfile.size() > 0) {
//循环输出上传的文件
for (MultipartFile file : uploadfile) {
String name1 = t;
// 获取上传文件的原始名称
String originalFilename = file.getOriginalFilename();
System.out.println("上传文件原始文件名是: "+ originalFilename);
int c = originalFilename.indexOf(“.”);
String s1 = originalFilename.substring©;
String s2 = originalFilename.substring(0, c);
s2 = s;
originalFilename = s2 + s1;
//获取上传文件后缀名
String dirPath =
request.getServletContext().getRealPath(“/upload/”+name1);
System.out.println(dirPath);
File filePath = new File(dirPath);
// 如果保存文件的地址不存在,就先创建目录
if (!filePath.exists()) {
filePath.mkdirs();
String newFilename = dirPath + “\” + originalFilename;
System.out.println(“文件保存地址” + newFilename +“\n”);
File filePath2 = new File(newFilename);
int i = 0;
String s3 = null;
while(filePath2.exists()) {
i++;
s3 = s2+ “(” + String.valueOf(i) +“)”;
originalFilename = s3 + s1;
System.out.println("文件已存在,重新命名为: "+originalFilename); //文件名
newFilename = dirPath + “\” + originalFilename;
System.out.println("新文件地址是: " +newFilename);
filePath2 = new File(newFilename);
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);//设置日期格式
String nowtime = df.format(new Date());
System.out.println(nowtime);// new Date()为获取当前系统时间
try {
// 使用MultipartFile接口的方法完成文件上传到指定位置
file.transferTo(new File(newFilename));
// String newFilenamePdf = s3 + “.pdf”;
// System.out.println("生成的pdf文件名是: "+ newFilenamePdf);
// newFilenamePdf = dirPath + “\” + newFilenamePdf;
// System.out.println("生成的pdf文件的保存地址是: "+newFilenamePdf);
// WordToPdf w = new WordToPdf();
// w.wordToPDF(newFilename, newFilenamePdf);
Myfile myfile = new Myfile();
myfile.setfName(originalFilename);
myfile.setfPath(newFilename);
Date date = df.parse(nowtime);
myfile.setUploadDatetime(date);
myfile.setfType(fType);
myFileService.createMyfile(myfile);
if(fType.equals(“任务书”)) {
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);
}else if(fType.equals(“附件”)) {
ThesisAttachment thesisAttachment = new ThesisAttachment();
thesisAttachment.setfId(myFileService.selectByfName(originalFilename).getfId());
thesisAttachment.setsId(student.getsId());
thesisAttachmentService.createThesisAttachment(thesisAttachment);
} catch (Exception e) {
e.printStackTrace();
mv.setViewName(“views/error”);
return mv;
// 跳转到成功页面
mv.setViewName(“views/success”);
return mv;
}else{
mv.setViewName(“views/error”);
return mv;
/**
- 删除文件
*/
@RequestMapping(“/file/filedelete.action”)
@ResponseBody
public String filedelete(HttpSession session,HttpServletRequest request ,Long fId) {
Myfile myfile = fileService.selectById(fId);
File file = new File(myfile.getfPath());
if (file.isFile() && file.exists()) {
file.delete();
int rows = fileService.delete(fId);
if(rows > 0){
return “OK”;
}else
return “FAIL”;
后台管理员控制层:
@Controller
public class AdminController {
@Autowired
private TeacherService teacherService;
@Autowired
private StudentService studentService;
@Autowired
private BaseDeptService baseDeptService;
@Autowired
private BaseMajorService baseMajorService;
@Autowired
private AdminService adminService;
@Autowired
private TitleService titleService;
@Autowired
private MyFileService myFileService;
@Autowired
private ScoreProportionService scoreProportionService;
/**
- 向管理员主页面跳转
*/
@RequestMapping(value = “/admin/toindex.action”, method = RequestMethod.GET)
public String toIndex() {
return “views/user/admin/index”;
/**
- 向教师列表跳转
*/
@RequestMapping(value = “/admin/toteacherlist.action”)
public ModelAndView teacherlist(@ModelAttribute(“teacher”) Teacher teacher,
@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {
List list = teacherService.Teacherlist(teacher);
List list1 = baseDeptService.deptlist();
PageInfo pageInfo = new PageInfo<>(list,10);
ModelAndView mv = new ModelAndView();
mv.addObject(“pageInfo”, pageInfo);
mv.addObject(“BaseDept”, list1);
mv.setViewName(“views/user/admin/teacherlist”);
return mv;
/**
- 系部下拉框选中值改变时获取对应专业
*/
@RequestMapping(value=“/admin/changeDept.action”)
@ResponseBody
public List changeDept(String deptId){
List list = null;
try{
list = baseMajorService.findMajorBydeptId(deptId);
}catch(Exception e){
return list;
/**
- 系部下拉框选中值改变时获取对应专业
*/
@RequestMapping(value=“/admin/changeDept1.action”)
@ResponseBody
public List changeDept1(String dept){
List list = null;
BaseDept baseDept = baseDeptService.findDeptByName(dept);
try{
list = baseMajorService.findMajorBydeptId(baseDept.getDeptId());
}catch(Exception e){
return list;
/**
- 通过tId获取教师信息详情
*/
@RequestMapping(“/admin/getTeacherBytId.action”)
@ResponseBody
public Teacher getTeacherBytId(String tId) {
Teacher teacher = teacherService.findTeacherById(tId);
return teacher;
/**
- 添加教师
*/
@RequestMapping(“/admin/createTeacher.action”)
@ResponseBody
public String createTeacher(Teacher teacher) {
teacher.settPwd(“123”);
teacher.settState(1);
BaseDept baseDept = baseDeptService.findDeptById(teacher.getDeptId());
teacher.setDept(baseDept.getDeptName());
if(teacher.getMajorId()!=null && !teacher.getMajorId().equals(“”)) {
BaseMajor baseMajor = baseMajorService.findMajorById(teacher.getMajorId());
teacher.setMajor(baseMajor.getMajorName());
}else {
teacher.setMajor(“无”);
if(teacher.getPower().equals(“否”)) {
teacher.setMajorId(null);
int rows = 0;
try {
rows = teacherService.createTeacher(teacher);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 删除教师
*/
@RequestMapping(“/admin/deleteTeacher.action”)
@ResponseBody
public String deleteTeacher(String tId, int s) {
int rows = 0;
try {
Teacher teacher = new Teacher();
teacher.settId(tId);
teacher.settState(s);
rows = teacherService.editInfo(teacher);
} catch(Exception e) {
if(rows > 0){
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);
} catch (Exception e){
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 向学生列表跳转
*/
@RequestMapping(value = “/admin/tostudentlist.action”)
public ModelAndView studentlist(@ModelAttribute(“student”) Student student,
@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {
List list = studentService.Studentlist(student);
List list1 = baseDeptService.deptlist();
PageInfo pageInfo = new PageInfo<>(list,10);
ModelAndView mv = new ModelAndView();
mv.addObject(“pageInfo”, pageInfo);
mv.addObject(“BaseDept”, list1);
mv.setViewName(“views/user/admin/studentlist”);
return mv;
/**
- 通过sId获取学生信息
*/
@RequestMapping(“/admin/getStudentBysId.action”)
@ResponseBody
public Student getStudentBysId(String sId) {
Student student = studentService.findStudentById(sId);
return student;
/**
- 修改学生信息
*/
@RequestMapping(“/admin/updateStudent.action”)
@ResponseBody
public String updateStudent(Student student) {
BaseMajor baseMajor = baseMajorService.findMajorById(student.getMajorId());
student.setMajor(baseMajor.getMajorName());
int rows = studentService.editInfo(student);
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 删除学生
*/
@RequestMapping(“/admin/deleteStudent.action”)
@ResponseBody
public String deleteStudent(String sId, int s) {
int rows = 0;
try {
Student student = new Student();
student.setsId(sId);
student.setsState(s);
rows = studentService.editInfo(student);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 添加学生
*/
@RequestMapping(“/admin/createStudent.action”)
@ResponseBody
public String createStudent(Student student) {
student.setsPwd(“123”);
student.setsState(1);
BaseMajor baseMajor = baseMajorService.findMajorById(student.getMajorId());
BaseDept baseDept = baseDeptService.findDeptById(baseMajor.getDeptId());
student.setMajor(baseMajor.getMajorName());
student.setDept(baseDept.getDeptName());
int rows = 0;
try {
rows = studentService.createStudent(student);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 向系部列表跳转
*/
@RequestMapping(value = “/admin/todeptlist.action”)
public ModelAndView deptlist(@ModelAttribute(“baseDept”) BaseDept baseDept,
@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {
List list1 = baseDeptService.findDeptByName1(baseDept);
PageInfo pageInfo = new PageInfo<>(list1,10);
ModelAndView mv = new ModelAndView();
mv.addObject(“pageInfo”, pageInfo);
mv.setViewName(“views/user/admin/deptlist”);
return mv;
/**
- 新建系部
*/
@RequestMapping(value = “/admin/createDept.action”)
@ResponseBody
public String createDept(BaseDept baseDept) {
baseDept.setDeptState(1);
int rows = 0;
try {
rows = baseDeptService.createDept(baseDept);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 删除/恢复系部
*/
@RequestMapping(“/admin/deleteDept.action”)
@ResponseBody
public String deleteDept(String deptId,int s) {
int rows = 0;
try {
rows = baseDeptService.editInfo(deptId,s);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 通过deptId获取系部详情
*/
@RequestMapping(“/admin/getDeptById.action”)
@ResponseBody
public BaseDept getDeptById(String deptId) {
BaseDept baseDept = baseDeptService.findDeptById(deptId);
return baseDept;
/**
- 修改系部信息
*/
@RequestMapping(“/admin/updateDept.action”)
@ResponseBody
public String updateDept(BaseDept baseDept) {
String oldName = baseDeptService.findDeptById(baseDept.getDeptId()).getDeptName();
int rows = 0;
rows = baseDeptService.editInfo1(baseDept);
if(rows > 0){
teacherService.editInfo1(baseDept);
studentService.editInfo1(baseDept,oldName);
return “OK”;
}else{
return “FAIL”;
/**
- 向专业列表跳转
*/
@RequestMapping(value = “/admin/tomajorlist.action”)
public ModelAndView majorlist(String deptId,@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {
List list1 = baseMajorService.findMajorBydeptId1(deptId);
PageInfo pageInfo = new PageInfo<>(list1,10);
ModelAndView mv = new ModelAndView();
mv.addObject(“pageInfo”, pageInfo);
mv.addObject(“deptId”, deptId);
mv.setViewName(“views/user/admin/majorlist”);
return mv;
/**
- 通过majorId获取专业详情
*/
@RequestMapping(“/admin/getMajorById.action”)
@ResponseBody
public BaseMajor getMajorById(String majorId) {
BaseMajor baseMajor = baseMajorService.findMajorById(majorId);
return baseMajor;
/**
- 新建专业
*/
@RequestMapping(value = “/admin/createMajor.action”)
@ResponseBody
public String createMajor(BaseMajor baseMajor) {
baseMajor.setMajorState(1);
int rows = 0;
try {
rows = baseMajorService.createMajor(baseMajor);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 修改专业信息
*/
@RequestMapping(“/admin/updateMajor.action”)
@ResponseBody
public String updateMajor(BaseMajor baseMajor) {
int rows = 0;
String oldName = baseMajorService.findMajorById(baseMajor.getMajorId()).getMajorName();
rows = baseMajorService.editMajor(baseMajor);
if(rows > 0){
teacherService.editInfo2(baseMajor);
studentService.editInfo2(baseMajor);
titleService.updateTitleMajor(baseMajor.getMajorName(),oldName);
return “OK”;
}else{
return “FAIL”;
/**
- 删除/恢复专业
*/
@RequestMapping(“/admin/deleteMajor.action”)
@ResponseBody
public String deleteMajor(String majorId,int s) {
int rows = 0;
try {
rows = baseMajorService.editMajor1(majorId,s);
} catch(Exception e) {
if(rows > 0){
return “OK”;
}else{
return “FAIL”;
/**
- 向管理员修改密码界面跳转
*/
@RequestMapping(“/admin/toeditPwd.action”)
public String toeditPwd(HttpSession session) {
Admin admin = (Admin)session.getAttribute(“USER_INFO”);
admin = adminService.getAdmin(admin.getAdminId());
session.setAttribute(“USER_INFO”, admin);
return “views/user/admin/editPwd”;
/**
- 管理员密码修改
*/
@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”;
/**
- 向文件列表跳转
*/
@RequestMapping(value = “/admin/tofilelist.action”)
public ModelAndView filelist(@ModelAttribute(“myfile”) Myfile myfile,
@RequestParam(value=“pageNum”,required=false,defaultValue=“1”) int pageNum) {
PageHelper.startPage(pageNum, 10);
List list = myFileService.filelist(myfile);
PageInfo pageInfo = new PageInfo<>(list,10);
ModelAndView mv = new ModelAndView();
mv.addObject(“pageInfo”, pageInfo);
mv.setViewName(“views/user/admin/filelist”);
return mv;
/**
- 向成绩比重页面跳转
*/
@RequestMapping(value = “/admin/scoreproportion.action”)
public ModelAndView scoreproportion() {
ScoreProportion scoreProportion = scoreProportionService.getScoreProportion(“1”);
ModelAndView mv = new ModelAndView();
int tScoreProportion = (int) Math.round(scoreProportion.gettScoreProportion() * 100);
int leaderScoreProportion = (int) Math.round(scoreProportion.getLeaderScoreProportion() * 100);
int reviewScoreProportion = (int) Math.round(scoreProportion.getReviewScoreProportion() * 100);
mv.addObject(“tScoreProportion”, tScoreProportion);
mv.addObject(“leaderScoreProportion”, leaderScoreProportion);
mv.addObject(“reviewScoreProportion”, reviewScoreProportion);
mv.setViewName(“views/user/admin/scoreproportion”);
return mv;
/**
- 保存成绩比重
*/
@RequestMapping(value = “/admin/saveScoreProportion.action”)
@ResponseBody
public String saveScoreProportion(String tScoreProportion,String leaderScoreProportion,String reviewScoreProportion) {
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”;
用户管理控制层:
@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”;
基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+tomcat+mysql)相关推荐
- 基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+mysql+layui)
基于javaweb的毕业设计毕业论文管理系统(java+ssm+jsp+mysql+layui) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...
- 基于javaweb的中药药方管理系统(java+ssm+jsp+bootstrap+mysql)
基于javaweb的中药药方管理系统(java+ssm+jsp+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...
- 基于javaweb的酒吧后台管理系统(java+ssm+jsp+html+mysql)
基于javaweb的酒吧后台管理系统(java+ssm+jsp+html+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclip ...
- 基于javaweb的医院住院管理系统(java+ssm+jsp+bootstrap+mysql)
基于javaweb的医院住院管理系统(java+ssm+jsp+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...
- 基于javaweb的智能餐厅管理系统(java+ssm+jsp+bootstrap+mysql)
基于javaweb的智能餐厅管理系统(java+ssm+jsp+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...
- 基于javaweb的员工考勤管理系统(java+ssm+jsp+bootstrap+mysql)
基于javaweb的员工考勤管理系统(java+ssm+jsp+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/my ...
- Java项目:毕业论文管理系统(java+SSM+JSP+Tomcat+mysql)
源码获取:博客首页 "资源" 里下载! 毕业设计管理系统 1.本系统使用SSM框架 2.有管理员.教师.学生三种角色,管理员使用admin/admin登录,教师使用t_01/666 ...
- 基于javaweb的高校运动会管理系统(java+ssm+jsp+js+jquery+mysql)
基于javaweb的高校运动会管理系统(java+ssm+jsp+js+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/m ...
- 基于javaweb的医药信息管理系统(java+ssm+html+easyui+mysql)
基于javaweb的医药信息管理系统(java+ssm+html+easyui+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myec ...
最新文章
- 电脑运行慢的原因汇总
- c++ 写x64汇编 5参数_Vs配置汇编开发环境,智能提示、代码颜色应有尽有~来打我呀...
- 6月统计|.NET薪资一旦高起来,岂是其他语言能比的!
- IDEA主题设置与eclipse代码风格一致
- java8 64x下载_jdk8 u102 64位下载
- leetcode 646 python
- 设计灵感|什么样的登录页能让用户感到体贴?
- (转载)Tuxedo中间件简介
- 对话马丁·福勒(Martin Fowler)——第六部分:性能与过程调优
- memcmp的用法 详讲
- UVM中p_sequencer和m_sequencer的用法及其区别
- Vue3生命周期及事件写法
- python学习 -女神或者男神把微信消息撤回后好慌,有了这个妈妈再也不担心你看不到女神或者男神撤回的消息了(超详解)...
- html td 的横向与纵向合并
- 世界上最大的问题,就是最大的商业机会
- 如何手搭Hadoop集群
- arduino(19 ):使用ESP32连接 PS3 蓝牙手柄,需要在windows 上先连接成功,然后在修改mac地址,才可以连接成功,但是目前正在测试中,需要在windows上配对成功。
- SpringBoot项目打包成jar后读取包内文件报错问题解决方法
- 悉尼大学计算机科学本科学费多少,2020年悉尼大学开设了哪些IT专业?学费是多少?入学要求有哪些?...
- 如何解决U盘无法停用通用卷设备