Java Project: Course Online Learning System (java+SpringBoot+thymeleaf+ssm+mysql)

Get the source code: Download it from "Resources" on the homepage of the blog!

Project Introduction

The online learning system implemented by SpringBoot+Spring+Mybatis+Thyleaf has a total of 2 identities.

After the administrator logs in to the system, he can manage all user information, manage role information, add and modify courseware information, manage student learning and training batches, and manage results import
. Training records, check your own grades
 

The SpringBoot framework is used to implement the thymeleaf database layer for the front-end template, and the mybatis framework annotation mode is used

The upload folder is placed in the root directory of the D drive!

Project run

Login address: http://localhost:8080/th/loginAdministrator
account and password: admin admin

Student login account: 1314 Password: 123456

 

 

 

 

 

 

User management control layer:

@Controller
@RequestMapping("/User")
public class UserController {

	@Autowired
	private UserService userService;

	@Autowired
	private PowerService powerService;

	@Autowired
	private RoleService roleService;

	@Autowired
	private NoticeService noticeService;

	@RequestMapping("/Main")
	public String res(HttpServletRequest request){
		String time = DateUtil.getStringToday();
		request.getSession().setAttribute("time", time);

		Notice notice = new Notice();

		List<Notice> list = noticeService.queryAll(notice);

		notice = list.get(0);

		User user = userService.selectByPrimaryKey(notice.getUserid());

		notice.setUserid(user.getName());
		request.getSession().setAttribute("notice", notice);

		return "Main";
	}

	@RequestMapping("/changePa")
	public String res1(){
		return "changePass";
	}


	@RequestMapping("/Login")
	public ModelAndView login(HttpServletRequest request,String id,String password) throws Exception{

		ModelAndView mav = new ModelAndView();

		User user1 = userService.selectByPrimaryKey(id);

		if(user1 == null || !password.equals(user1.getPassword())){
			mav.setViewName("index");
		    request.getSession().setAttribute("info", "error");
			return mav;
		}else{
			Role role = new Role();
			role.setRoleid(user1.getRoleid());
			List<Role> list =roleService.QueryAll(role);
			role =list.get(0);
			request.getSession().setAttribute("roleName", role.getRolename());
			Power power = powerService.selectByPrimaryKey(role.getPowerid());

			if(!StringUtil.isNullOrEmpty(power.getPower())){
				request.getSession().setAttribute("power", power.getPower());
			}

			String time = DateUtil.getStringToday();
			request.getSession().setAttribute("time", time);
			request.getSession().setAttribute("user", user1);
			mav.setViewName("redirect:/User/Main");
		}
		return mav;
	}

	@RequestMapping("/updateStudent")
	public String update(User user){
		userService.updateByPrimaryKey(user);
		return "redirect:/User/student";
	}

	@RequestMapping("/updateTeacher")
	public String updatet(User user){
		userService.updateByPrimaryKey(user);
		return "redirect:/User/teacher";
	}

	@RequestMapping("/updatePa")
	public String updatePa(String userID,String password){
		User user = new User();
		System.out.println(userID);
		User user1 = userService.selectByPrimaryKey(userID);
		user1.setPassword(password);
		userService.updateByPrimaryKey(user1);
		return "Main";
	}

	@RequestMapping("/delete")
	public String delete(String ID){
		userService.deleteByPrimaryKey(ID);
		return "redirect:/User/queryAll";
	}

	@RequestMapping("/teacher")
	public String QueryAllTeacher(HttpServletRequest request,User user){

		List<User> list = userService.QueryAllTeacher(user);
		request.setAttribute("list", list);

	   if(null != user.getName()){
			request.setAttribute("name", user.getName());
		}
	   if(null != user.getMobile()){
			request.setAttribute("mobile", user.getMobile());
		}
		return "teacher";
	}


	@ResponseBody
	@RequestMapping("/jsonteacher")
	public String QueryAllTeacherjson(HttpServletRequest request,User user){

		List<User> list = userService.QueryAllTeacher(user);
		JSONObject json = new JSONObject();

		return json.toJSONString(list);
	}

	@RequestMapping("/student")
	public String QueryAllStudent(HttpServletRequest request,User user){

		List<User> list = userService.QueryAllStudent(user);
		request.setAttribute("list", list);

		if(null != user.getName()){
			request.setAttribute("name", user.getName());
		}
		if(null != user.getMobile()){
			request.setAttribute("mobile", user.getMobile());
		}
		return "student";
	}

	@RequestMapping("/addteacher")
	public String  addUser(User user){

	    String passWord = "123456";
		user.setPassword(passWord);
		user.setType(Constans.TEACHER);
		userService.insert(user);
		return "redirect:/User/teacher";
	}

	@RequestMapping("/addstudent")
	public String  addStudent(User user){

		String passWord = "123456";
		user.setPassword(passWord);
		user.setType(Constans.STUDENT);
		userService.insert(user);
		return "redirect:/User/student";
	}

	@ResponseBody
	@RequestMapping("/queryOne")
	public String queryOne(String ID){
		User user = new User();
		user.setId(ID);
		List<User> list = userService.QueryAll(user);
		user = list.get(0);
		JSONObject json = new JSONObject();
		String data = json.toJSONString(user);

		return data;
	}

	@RequestMapping("/quit")
	public ModelAndView quit(HttpServletRequest request) throws Exception{
		ModelAndView mav = new ModelAndView();
		HttpSession session1 = request.getSession();
		session1.invalidate();
		request.getSession().setAttribute("info", "quit");
		mav.setViewName("index");

		return mav;
	}



}

Role management control layer:

@Controller
@RequestMapping("/Role")
public class RoleController {

	@Autowired
	private RoleService depotService;

	@Autowired
	private PowerService powerService;

	@RequestMapping("/update")
	public String update(String id,String rolename,String powerContent){
		Role role = new Role();
		role.setRoleid(id);
		role.setRolename(rolename);
		depotService.update(role);
		List<Role> list = depotService.QueryAll(role);
		Role role1 = list.get(0);
		Power power = new Power();
		if(powerContent.indexOf("110") != -1){
			powerContent = powerContent + ",1100";
		}
		if(powerContent.indexOf("120") != -1){
			powerContent = powerContent + ",1200";
		}
		if(powerContent.indexOf("130") != -1){
			powerContent = powerContent + ",1300";
		}
		if(powerContent.indexOf("140") != -1){
			powerContent = powerContent + ",1400";
		}
		if(powerContent.indexOf("150") != -1){
			powerContent = powerContent + ",1500";
		}
		power.setPower(powerContent);
		power.setRoleid(role1.getPowerid());
		powerService.update(power);
		return "redirect:/Role/queryAll";
	}

	@RequestMapping("/delete")
	public String delete(String ID){
		depotService.deleteByPrimaryKey(ID);
		return "redirect:/Role/queryAll";
	}

	@RequestMapping("/queryAll")
	public String queryAll(HttpServletRequest request,Role role){


		List<Role> list = depotService.QueryAll(role);
		request.setAttribute("list", list);

	   if(null != role.getRolename()){
			request.setAttribute("rolename", role.getRolename());
		}
		return "Role";
	}

	@RequestMapping("/add")
	public String  add(String roleid,String rolename,String powerContent){
		Power power1 = new Power();
		Role role = new Role();
		String powerid = String.valueOf(Math.random()).substring(2, 8);
		role.setRoleid(String.valueOf(Math.random()).substring(2, 6));
		role.setPowerid(powerid);
		role.setRolename(rolename);

		power1.setPower(powerContent);
		power1.setRoleid(powerid);
		power1.setId(String.valueOf(Math.random()).substring(2, 8));

		powerService.insert(power1);
		depotService.insert(role);
		return "redirect:/Role/queryAll";
	}

	@ResponseBody
	@RequestMapping("/queryOne")
	public String queryOne(String ID){
		JSONObject json = new JSONObject();
		Role depot = new Role();
		Power power = new Power();
		power.setId(ID);
		System.out.println(ID);
		depot.setRoleid(ID);

		List<Role> list = depotService.QueryAll(depot);

		Role role1 = list.get(0);
		Power power1 = powerService.selectByPrimaryKey(role1.getPowerid());
		String name = role1.getRolename();

		role1.setPowerid(power1.getPower());

		String data = json.toJSONString(role1);

		return data;
	}

	@ResponseBody
	@RequestMapping("/getAll")
	public String getAll(Role role){
		JSONObject json = new JSONObject();
		List<Role> list = depotService.QueryAll(role);

		String jsonq = json.toJSONString(list);

		System.out.println(jsonq);
		return jsonq;
	}


}

 

Course management control layer:

@Controller
@RequestMapping("/Course")
public class CourseController {

    @Autowired
    private CourseService courseService;
    @Autowired
    private CurelationService curelationService;


    @Autowired
    private CoursecommentService coursecommentService;

    @ResponseBody
    @RequestMapping("/queryOneCom")
    public String queryOneCom(String ID){
        Coursecomment course = new Coursecomment();
        course.setId(ID);
        System.out.println("===================================="+ID);
        List<Coursecomment> list = coursecommentService.queryAll(course);
        course = list.get(0);
        JSONObject json = new JSONObject();
        return json.toJSONString(course);
    }



    @RequestMapping("addComment")
    public String addComment(HttpServletRequest request, Coursecomment coursecomment){
        User user = (User) request.getSession().getAttribute("user");
        coursecomment.setCreatetime(DateUtil.getStringToday());
        coursecomment.setUserid(user.getName());
        coursecomment.setId(String.valueOf(Math.random()).substring(2,10));
        coursecommentService.insert(coursecomment);
        return "redirect:/Course/suggeetion";
    }


    @ResponseBody
    @RequestMapping("jsoncourse")
    public String jsoncourse(HttpServletRequest request, Curelation course){
        User user = (User) request.getSession().getAttribute("user");
        /*String type = "1";

        if ("1".equals(user.getType())){
            type="2";
        }
        course.setType(type);
        course.setUserid(user.getId());*/
        List<Curelation> curelationList = curelationService.queryAll(course);
        List<Course> dataList = new ArrayList<>();
        for (int i = 0; i < curelationList.size(); i++) {
            Course curelation = courseService.selectByPrimaryKey(curelationList.get(i).getCourseid());
            dataList.add(curelation);
        }

        JSONObject json = new JSONObject();
        return json.toJSONString(dataList);
    }

    @RequestMapping("suggeetion")
    public String suggeetion(HttpServletRequest request, Coursecomment coursecomment){

        List<Coursecomment> coursecomments = coursecommentService.queryAll(coursecomment);


        request.setAttribute("list",coursecomments);
        return "suggeetion";
    }

    @RequestMapping("view")
    public String view(HttpServletRequest request){
        User user = (User) request.getSession().getAttribute("user");

        String type = "1";

        if ("1".equals(user.getType())){
            type="2";
        }

        List<Map<String,String>> list=curelationService.courseview(type,user.getId());
        request.setAttribute("list",list);
        return "courseview";
    }

    @RequestMapping("deletecomment")
    public String deletecomment(String ID){
        coursecommentService.deleteByPrimaryKey(ID);
        return "redirect:/Course/suggeetion";
    }



    @RequestMapping("queryAll")
    public String queryAll(HttpServletRequest request, Course course){
        List<Course> list = courseService.queryAll(course);
        request.setAttribute("list",list);

        return "course";
    }

    @RequestMapping("/receive")
    public String receive(HttpServletRequest request, HttpServletResponse response, MultipartFile file){

        try {
            //也可以用request获取上传文件
            //MultipartFile  fileFile = request.getFile("file"); //这里是页面的name属性
            //转换成输入流
            InputStream is = file.getInputStream();
            //得到excel
            Workbook workbook = Workbook.getWorkbook(is);
            //得到sheet
            Sheet sheet = workbook.getSheet(0);
            //得到列数
            int colsNum = sheet.getColumns();
            //得到行数
            int rowsNum = sheet.getRows();
            //单元格
            Cell cell;
            Cell cell1;

            List<Map> list = new ArrayList<>();
            Map<Integer, String> map = new HashMap<Integer, String>();
            for (int i = 1; i < rowsNum; i++) {//我的excel第一行是标题,所以 i从1开始
                cell  = sheet.getCell(0,i);
                cell1 = sheet.getCell(5,i);
                Curelation curelation = new Curelation();

                curelation.setId(cell.getContents());
                curelation.setScore(cell1.getContents());
                curelationService.updateByPrimaryKey(curelation);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } catch (BiffException e) {
            e.printStackTrace();
        }
        return "redirect:/Course/queryCourse";
    }

    @RequestMapping("/queryCourse")
    public String queryScore(HttpServletRequest request,Curelation curelation){

        curelation.setType("1");
        List<Curelation> list = curelationService.queryAll(curelation);
        request.setAttribute("list",list );
        return "ScoreList";
    }

    @RequestMapping("/teacher")
    public String teacher(HttpServletRequest request){
        User user = (User) request.getSession().getAttribute("user");
        Course course = new Course();
        course.setCourseteacher(user.getName());
        List<Course> courseList = courseService.queryAll(course);
        request.setAttribute("list",courseList);
        return "teacherDeal";
    }

    @RequestMapping("/student")
    public String student(HttpServletRequest request){
        Course course = new Course();
        course.setStatus("1");
        List<Course> courseList = courseService.queryAll(course);
        request.setAttribute("list",courseList);
        return "studentChoose";
    }


    @RequestMapping("/upload")
    public  String upload(){

        return "uploadScore";
    }


    @RequestMapping("/Export")
    public void Export(HttpServletResponse response, User user){

        response.setContentType("application/binary;charset=UTF-8");
        try {
            ServletOutputStream out = response.getOutputStream();
            String fileName1 = "学生信息";
            String fileName2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
            String fileName = fileName1+fileName2;
            response.setHeader("Content-disposition", "attachment; filename=" +new String(fileName.getBytes("gbk"),"iso8859-1") + ".xls");
            String[] titles = { "成绩编号","学生编号", "学生姓名", "课程编号", "课程名称", "成绩" };
            courseService.export(titles, out,user);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }



    @RequestMapping("delete")
    public String delete(String ID){
        courseService.deleteByPrimaryKey(ID);
        return "redirect:/Course/queryAll";
    }

    @RequestMapping("update")
    public String update(Course course){
        courseService.updateByPrimaryKey(course);
        return "redirect:/Course/queryAll";
    }

    @Transactional
    @RequestMapping("update1")
    public String update1(HttpServletRequest request,Course course){
        course.setStatus("1");
        courseService.updateByPrimaryKey(course);
        User user = (User) request.getSession().getAttribute("user");
        Curelation curelation1 = new Curelation();
        curelation1.setCourseid(course.getId());
        curelation1.setUserid(user.getId());
        List<Curelation> curelationList = curelationService.queryAll(curelation1);
        if(curelationList.size()==0){
            Curelation curelation = new Curelation();
            curelation.setUserid(user.getId());
            curelation.setCourseid(course.getId());
            curelation.setId(String.valueOf(Math.random()).substring(2, 10));
            curelation.setType("2");
            curelationService.insert(curelation);
        }
        return "redirect:/Course/teacher";
    }

    @RequestMapping("update2")
    public String update2(HttpServletRequest request,Course course){
        User user = (User) request.getSession().getAttribute("user");
        Curelation curelation = new Curelation();
        curelation.setUserid(user.getId());
        curelation.setCourseid(course.getId());
        List<Curelation> curelationList = curelationService.queryAll(curelation);
        if(curelationList.size() == 0){
            curelation.setId(String.valueOf(Math.random()).substring(2, 10));
            curelation.setType("1");
            curelationService.insert(curelation);
        }else{
            Curelation curelation1 = curelationList.get(0);
            curelation1.setUserid(user.getId());
            curelation1.setCourseid(course.getId());
            System.out.println(curelation1.toString());
            curelationService.updateByPrimaryKey(curelation1);
        }
        return "redirect:/Course/student";
    }

    @ResponseBody
    @RequestMapping("/queryOne")
    public String queryOne(String ID){
        Course course = new Course();
        course.setId(ID);
        List<Course> list = courseService.queryAll(course);
        course = list.get(0);
        JSONObject json = new JSONObject();
        return json.toJSONString(course);
    }

    @RequestMapping("add")
    public String addCourse(Course course){
        course.setId(String.valueOf(Math.random()).substring(2, 10));
        System.out.println(course.toString());
        courseService.insert(course);
        return "redirect:/Course/queryAll";
    }

}

Get the source code: Download it from "Resources" on the homepage of the blog!

Guess you like

Origin blog.csdn.net/yuyecsdn/article/details/124131074