毕业论文选题系统是基于微信小程序,后端是基于java编程语言,ssm框架,mysql数据库和IDEA工具开发,本系统分为学生,教师,管理员三个角色;学生可以注册登陆系统,查看系统公告,选课论文课题,提交课题论文,查看论文审核,答辩结果等信息;教师可以发布课题,审核学生论文,课题答辩结果,在线回复学生留言;管理员对学生,教师,公告,论文,选题,答辩等进行管理;本系统功能齐全,文档齐全,适合作为微信小程序毕业设计来参考和学习。一.技术环境jdk版本:1.8 及以上ide工具:IDEA ,微信小程序开发工具数据库: mysql5.7 (必须5.7)编程语言: Javatomcat: 8.0 及以上java框架:SSMmaven: 3.6.1前端:layui ,微信详细技术:HTML+CSS+JS+JSP+JAVA+SSM+MYSQL+JQUERY+MAVEN+微信开发工具二.项目文件(项目获取请看文末官网)在这里插入图片描述三.系统功能在这里插入图片描述四.代码示例package com.lmu.controller;/** * 和登陆有关的都在这里 */import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import com.lmu.model.Role;import com.lmu.model.User;import com.lmu.service.RoleService;import com.lmu.service.UserService;import com.lmu.utils.JsonUtils;import com.lmu.utils.UserUtils;import org.apache.commons.collections.map.HashedMap;import org.apache.struts2.ServletActionContext;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Controller;import java.io.IOException;import java.util.HashMap;import java.util.Map;@Controller("loginController")@Scope("prototype")public class LoginController extends ActionSupport { @Autowired private UserService userService; @Autowired private RoleService roleService; private User user; private Map map = new HashMap(); public User getUser() { return user; } public void setUser(User user) { this.user = user; } public UserService getUserService() { return userService; } public void setUserService(UserService userService) { this.userService = userService; } /** * 用户登陆 * @return */ public void index() throws IOException { User user1 = userService.getUser(user); if (user1 != null){ if (user1.getIsSh() == 1){ if (user1.getRole().getEnName().equals("admin")){ ActionContext.getContext().getSession().put("user", user1); } if (user1.getRole().getEnName().equals("js")){ ActionContext.getContext().getSession().put("user1", user1); } if (user1.getRole().getEnName().equals("xs")){ ActionContext.getContext().getSession().put("user2", user1); } map.put("flag", 1); map.put("url", "login_indexs.do"); map.put("id", user1.getId()); JsonUtils.toJson(map); } else { map.put("flag", 2); JsonUtils.toJson(map); } } else { map.put("flag", 3); JsonUtils.toJson(map); } } public String indexs() throws IOException { User u = UserUtils.getUser(); if (u != null){ ActionContext.getContext().put("user", u); String ss = u.getRole().getEnName(); ActionContext.getContext().put("role", u.getRole().getEnName()); } return SUCCESS; } //登陆页面 public String login() { return SUCCESS; } //退出 public String tuichu() { ActionContext ac = ActionContext.getContext(); Map session = ac.getSession(); session.remove("userName"); session.remove("userId"); ServletActionContext.getRequest().getSession().invalidate(); return "login"; }}package com.lmu.controller;/** * 用户新增 */import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;import com.lmu.model.Role;import com.lmu.model.User;import com.lmu.service.RoleService;import com.lmu.service.UserService;import com.lmu.utils.JsonUtils;import com.lmu.utils.Pager;import com.lmu.utils.UserUtils;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Controller;import java.awt.event.FocusEvent;import java.io.IOException;import java.util.Date;import java.util.HashMap;import java.util.Map;@Controller("userController")@Scope("prototype")public class UserController extends ActionSupport implements ModelDriven { @Autowired private UserService userService; @Autowired private RoleService roleService; private User user; private Integer userId; private Map map = new HashMap();/** * list * * @return */ public String list() throws IOException { User user1 = UserUtils.getUser(); if (user1 == null || user1.getId() == null){ ActionContext.getContext().put("login", 1); return SUCCESS; } Pager pagers = null; Role role = user1.getRole(); if (role.getEnName().equals("admin")) { pagers = userService.getList(user); ActionContext.getContext().put("pagers", pagers); ActionContext.getContext().put("user", user1); ActionContext.getContext().put("role", role); ActionContext.getContext().put("bean", user); return SUCCESS; } else if (role.getEnName().equals("xs") || role.getEnName().equals("js")) { pagers = userService.getList(user1); ActionContext.getContext().put("pagers", pagers); ActionContext.getContext().put("bean", user); return SUCCESS; } return null; }/** * 跳转add * * @return */ public String add() { Pager pagers = roleService.pagers(); ActionContext.getContext().put("pagers", pagers); return SUCCESS; } /** * 查询修改 * * @return */ public String edit() { User bean = userService.findById(userId); Pager pagers = roleService.pagers(); ActionContext.getContext().put("bean", bean); ActionContext.getContext().put("pagers", pagers); return SUCCESS; }/** * 审核 * * @return */ public void updateSh() throws IOException { user.setIsSh(1); userService.updates(user); map.put("flag", true); map.put("url", "user_list.do"); JsonUtils.toJson(map); } /** * 更新 * * @return */ public String update() throws IOException { if (user.getPass().equals("")){ user.setPass(null); } userService.updates(user); map.put("flag", true); map.put("url", "user_list.do"); JsonUtils.toJson(map); return SUCCESS; } /** * 保存 * * @return */ public void save() throws IOException { if (userService.getUser(user) != null){ map.put("flag", false); map.put("url", "login_login.do"); JsonUtils.toJson(map); } else { user.setTime(new Date()); userService.save(user); map.put("flag", true); map.put("url", "login_login.do"); JsonUtils.toJson(map); } } public void delete() throws IOException { User user1 = userService.findById(userId); user1.setIsDelete(1); userService.update(user1); map.put("flag", true); map.put("url", "user_list.do"); JsonUtils.toJson(map); } @Override public User getModel() { if (user == null) { user = new User(); } return user; } public Integer getUserId() { return userId; } public void setUserId(Integer userId) { this.userId = userId; } public User getUser() { return user; } public void setUser(User user) { this.user = user; }}