基于javaweb的课程在线学习系统(java+springboot+thymeleaf+ssm+mysql)

基于javaweb的课程在线学习系统(java+springboot+thymeleaf+ssm+mysql)

运行环境

Java≥8、MySQL≥5.7

开发工具

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

适用

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

功能说明

20220519001000

20220519001001

20220519001002

20220519001003

20220519001004

20220519001006

基于javaweb+SpringBoot的课程在线学习系统(java+SpringBoot+thymeleaf+ssm+mysql)

项目介绍

采用SpringBoot+Spring+Mybatis+Thyeleaf实现的在线学习系统,一共2个身份。

管理员登录系统后可以管理所有用户信息,管理角色信息,添加修改管理课件信息,学生学习培训批次管理,成绩导入管理 学生登录系统后可以查询自己的个人信息,查询课件列表学习,查询我的培训记录,查询自己的成绩

采用SpringBoot框架实现 前台模板用的thymeleaf 数据库层采用mybatis框架 注解模式

upload文件夹放入D盘根目录!

项目运行

登录地址: http://localhost:8080/th/login 管理员账号和密码: admin     admin

学生登录账号: 1314 密码: 123456

用户管理控制层:

@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 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 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 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 list = userService.QueryAllTeacher(user);

JSONObject json = new JSONObject();

return json.toJSONString(list);

@RequestMapping(“/student”)

public String QueryAllStudent(HttpServletRequest request,User user){

List 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 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;

角色管理控制层:

@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 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 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 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 list = depotService.QueryAll(role);

String jsonq = json.toJSONString(list);

System.out.println(jsonq);

return jsonq;

课程管理控制层:

@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 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 curelationList = curelationService.queryAll(course);

List 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 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 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 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 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 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 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 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 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 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”;


a)构架 该系统采用表示层、业务逻辑层、数据访问层三层构架。 1、在系统主页面,用户可以通过已有的账号密码进行登录,验证成功则进入个人信息页面;也可以进行忘记密码之后的重置操作,验证成功则完成重置并返回系统主页面再次登录。 2、在个人信息页面,用户可以修改当前账号密码,验证成功则完成修改则返回系统主页面。在此之外,不同身份的用户可以有不同的操作。 管理员:查看现有帐号信息,对帐号进行增、删等操作。 教师:查看课程信息,包括预览、下载课件,查看作业情况(提交、批改意见、评分)等;修改课程信息,包括上传、重传课件,下载作业,提交作业批改意见、评分,发布新作业要求,更新系统公告等。 学生:查看课程信息,包括预览、下载课件,查看作业情况(提交、批改意见、评分)等;修改课程信息,包括上传、重传作业等。 b)系统流程 1、表示层效果采用HTML5、CSS等语言和前端框架jQuery,实现用户交互界面。交互界面包括用户登录界面,个人信息展示页面,课程、课件、作业查看页面等。 2、业务逻辑层利用Servlet,JSP来处理来自前端的请求,获取数据库数据,并作出相应的处理,将处理数据提交到前端,显示给用户。 3、数据访问层利用Hibernate架构操作数据库,通过应用程序经过Hiberante持久层来访问数据库。数据访问层的关键是确定表结构和表属性,便于业务逻辑层进行对数据库的查询,良好的数据库结构,对数据操作有很大的用处。 c)系统结构
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值