diff --git a/springboot/springboot.iml b/springboot/springboot.iml
index 1404bede..10f8a46e 100644
--- a/springboot/springboot.iml
+++ b/springboot/springboot.iml
@@ -1,77 +1,14 @@
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/springboot/src/main/java/com/example/common/RoleEnum.java b/springboot/src/main/java/com/example/common/RoleEnum.java
new file mode 100644
index 00000000..e610c744
--- /dev/null
+++ b/springboot/src/main/java/com/example/common/RoleEnum.java
@@ -0,0 +1,6 @@
+package com.example.common;
+
+public enum RoleEnum {
+ ADMIN, // 管理员
+ STUDENT // 学生
+}
diff --git a/springboot/src/main/java/com/example/controller/CourseController.java b/springboot/src/main/java/com/example/controller/CourseController.java
new file mode 100644
index 00000000..8a62b3f2
--- /dev/null
+++ b/springboot/src/main/java/com/example/controller/CourseController.java
@@ -0,0 +1,30 @@
+package com.example.controller;
+
+import com.example.common.Result;
+import com.example.entity.Course;
+import com.example.service.CourseService;
+import com.github.pagehelper.PageInfo;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@RestController
+@RequestMapping("/course")
+
+public class CourseController {
+
+ @Resource
+ private CourseService courseService;
+
+ @GetMapping("/selectPage")
+ public Result selectPage(@RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "5") Integer pageSize) {
+ PageInfo pageInfo = courseService.selectPage(pageNum, pageSize);
+ return Result.success(pageInfo);
+ }
+
+
+}
diff --git a/springboot/src/main/java/com/example/controller/StudentController.java b/springboot/src/main/java/com/example/controller/StudentController.java
new file mode 100644
index 00000000..a719b10e
--- /dev/null
+++ b/springboot/src/main/java/com/example/controller/StudentController.java
@@ -0,0 +1,4 @@
+package com.example.controller;
+
+public class StudentController {
+}
diff --git a/springboot/src/main/java/com/example/controller/WebController.java b/springboot/src/main/java/com/example/controller/WebController.java
index cfeb9c92..b7df655f 100644
--- a/springboot/src/main/java/com/example/controller/WebController.java
+++ b/springboot/src/main/java/com/example/controller/WebController.java
@@ -1,8 +1,12 @@
package com.example.controller;
+import cn.hutool.core.util.ObjectUtil;
import com.example.common.Result;
+import com.example.common.RoleEnum;
+import com.example.entity.Account;
import com.example.entity.Admin;
import com.example.service.AdminService;
+import com.example.service.StudentService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -16,6 +20,8 @@ public class WebController {
@Resource
private AdminService adminService;
+ @Resource
+ private StudentService studentService;
/**
* 默认请求接口
@@ -28,9 +34,28 @@ public class WebController {
/**
* 登录接口
*/
-@PostMapping("/login")
- public Result login(@RequestBody Admin admin) {
- Admin dbAdmin=adminService.login(admin);
+ @PostMapping("/login")
+ public Result login(@RequestBody Account account) {
+ Account dbAccount;
+ if (RoleEnum.ADMIN.name().equals(account.getRole())) { // 管理员登录
+ dbAccount = adminService.login(account);
+ } else if (RoleEnum.STUDENT.name().equals(account.getRole())) { // 学生登录
+ dbAccount = studentService.login(account);
+ } else {
+ return Result.error("角色错误");
+ }
+ return Result.success(dbAccount);
+ }
+
+ /**
+ * 注册接口
+ */
+ @PostMapping("/register")
+ public Result register(@RequestBody Account account) {
+ if (ObjectUtil.isEmpty(account.getUsername()) || ObjectUtil.isEmpty(account.getPassword())) {
+ return Result.error("账号或密码必填");
+ }
+ studentService.register(account);
return Result.success();
}
diff --git a/springboot/src/main/java/com/example/entity/Admin.java b/springboot/src/main/java/com/example/entity/Admin.java
index 86a6c4b9..f4f402ba 100644
--- a/springboot/src/main/java/com/example/entity/Admin.java
+++ b/springboot/src/main/java/com/example/entity/Admin.java
@@ -1,13 +1,24 @@
package com.example.entity;
-public class Admin extends Account {
+public class Admin {
private Integer id;
- private String username;//帐号
- private String password;//密码
+ //账号
+ private String username;
+ //密码
+ private String password;
+
private String name;
private String role;
+ public String getRole() {
+ return role;
+ }
+
+ public void setRole(String role) {
+ this.role = role;
+ }
+
public Integer getId() {
return id;
}
@@ -16,43 +27,27 @@ public class Admin extends Account {
this.id = id;
}
- @Override
public String getUsername() {
return username;
}
- @Override
public void setUsername(String username) {
this.username = username;
}
- @Override
public String getPassword() {
return password;
}
- @Override
public void setPassword(String password) {
this.password = password;
}
- @Override
public String getName() {
return name;
}
- @Override
public void setName(String name) {
this.name = name;
}
-
- @Override
- public String getRole() {
- return role;
- }
-
- @Override
- public void setRole(String role) {
- this.role = role;
- }
}
diff --git a/springboot/src/main/java/com/example/entity/Course.java b/springboot/src/main/java/com/example/entity/Course.java
index bf184235..cba50a20 100644
--- a/springboot/src/main/java/com/example/entity/Course.java
+++ b/springboot/src/main/java/com/example/entity/Course.java
@@ -1,58 +1,41 @@
package com.example.entity;
public class Course {
- private Integer id;
- private String name;
- private String no;
- private String descr;
- private String times;
- private String teacher;
+ private String courseId;
+ private String title;
+ private String deptName;
+ private Integer credits;
- public Integer getId() {
- return id;
+ public String getCourseId() {
+ return courseId;
}
- public void setId(Integer id) {
- this.id = id;
+ public void setCourseId(String courseId) {
+ this.courseId = courseId;
}
- public String getName() {
- return name;
+ public String getDeptName() {
+ return deptName;
}
- public void setName(String name) {
- this.name = name;
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
}
- public String getNo() {
- return no;
+ public String getTitle() {
+ return title;
}
- public void setNo(String no) {
- this.no = no;
+ public void setTitle(String title) {
+ this.title = title;
}
- public String getDescr() {
- return descr;
- }
-
- public void setDescr(String descr) {
- this.descr = descr;
- }
-
- public String getTimes() {
- return times;
- }
-
- public void setTimes(String times) {
- this.times = times;
- }
- public String getTeacher() {
- return teacher;
+ public Integer getCredits() {
+ return credits;
}
- public void setTeacher(String teacher) {
- this.teacher = teacher;
+ public void setCredits(Integer credits) {
+ this.credits = credits;
}
}
diff --git a/springboot/src/main/java/com/example/mapper/AdminMapper.java b/springboot/src/main/java/com/example/mapper/AdminMapper.java
index c42e37e2..de4a4fc7 100644
--- a/springboot/src/main/java/com/example/mapper/AdminMapper.java
+++ b/springboot/src/main/java/com/example/mapper/AdminMapper.java
@@ -1,10 +1,11 @@
package com.example.mapper;
-import com.example.entity.Admin;
+import com.example.entity.Account;
import org.apache.ibatis.annotations.Select;
public interface AdminMapper {
+
@Select("select * from admin where username = #{username}")
- Admin selectByUsername(String username);
+ Account selectByUsername(String username);
}
diff --git a/springboot/src/main/java/com/example/mapper/CourseMapper.java b/springboot/src/main/java/com/example/mapper/CourseMapper.java
new file mode 100644
index 00000000..de7b0902
--- /dev/null
+++ b/springboot/src/main/java/com/example/mapper/CourseMapper.java
@@ -0,0 +1,13 @@
+package com.example.mapper;
+
+import com.example.entity.Course;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+public interface CourseMapper {
+
+ @Select("select * from course order by courseId desc")
+ List selectAll();
+
+}
diff --git a/springboot/src/main/java/com/example/mapper/StudentMapper.java b/springboot/src/main/java/com/example/mapper/StudentMapper.java
new file mode 100644
index 00000000..93ce1408
--- /dev/null
+++ b/springboot/src/main/java/com/example/mapper/StudentMapper.java
@@ -0,0 +1,29 @@
+package com.example.mapper;
+
+import com.example.entity.Student;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
+
+import java.util.List;
+
+public interface StudentMapper {
+
+ @Select("select * from student where username = #{username}")
+ Student selectByUsername(String username);
+
+ @Insert("insert into student (username, password, name, phone, email, sex, birth, avatar, role) " +
+ "values (#{username}, #{password}, #{name}, #{phone}, #{email}, #{sex}, #{birth}, #{avatar}, #{role})")
+ void insert(Student student);
+
+ @Delete("delete from student where id = #{id}")
+ void deleteById(Integer id);
+
+ @Update("update student set username = #{username}, password = #{password}, name = #{name}, phone = #{phone}, " +
+ "email = #{email}, sex = #{sex}, birth = #{birth}, avatar = #{avatar} where id = #{id}")
+ void updateById(Student student);
+
+ @Select("select * from student where username like concat('%', #{username}, '%') and name like concat('%', #{name}, '%') order by id desc")
+ List selectAll(Student student);
+}
diff --git a/springboot/src/main/java/com/example/service/AdminService.java b/springboot/src/main/java/com/example/service/AdminService.java
index e216a1da..a1c8ac1a 100644
--- a/springboot/src/main/java/com/example/service/AdminService.java
+++ b/springboot/src/main/java/com/example/service/AdminService.java
@@ -1,4 +1,6 @@
package com.example.service;
+
+import com.example.entity.Account;
import com.example.entity.Admin;
import com.example.exception.CustomException;
import com.example.mapper.AdminMapper;
@@ -8,24 +10,25 @@ import javax.annotation.Resource;
@Service
public class AdminService {
+
@Resource
private AdminMapper adminMapper;
/**
* 登录
*/
-
- public Admin login(Admin admin){
- Admin dbAdmin = adminMapper.selectByUsername(admin.getUsername());
- if(dbAdmin==null){
- //没有用户
+ public Account login(Account account) {
+ Account dbAdmin = adminMapper.selectByUsername(account.getUsername());
+ if (dbAdmin == null) {
+ // 没有用户
throw new CustomException("账号或密码错误");
}
- //比较密码
- if(!admin.getPassword().equals(dbAdmin.getPassword())){
+ // 比较密码
+ if (!account.getPassword().equals(dbAdmin.getPassword())) {
throw new CustomException("账号或密码错误");
}
- //登录成功
+ // 登录成功
return dbAdmin;
}
+
}
diff --git a/springboot/src/main/java/com/example/service/CourseService.java b/springboot/src/main/java/com/example/service/CourseService.java
new file mode 100644
index 00000000..21994b75
--- /dev/null
+++ b/springboot/src/main/java/com/example/service/CourseService.java
@@ -0,0 +1,26 @@
+package com.example.service;
+
+import com.example.entity.Course;
+import com.example.mapper.CourseMapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Service
+
+public class CourseService {
+
+ @Resource
+ private CourseMapper courseMapper;
+
+ //total是查询的总数,list是数据列表
+ //pageNum是当前的页码,pageSize是每页的个数
+ public PageInfo selectPage(Integer pageNum, Integer pageSize) {
+ PageHelper.startPage(pageNum, pageSize);
+ List courseList = courseMapper.selectAll();
+ return PageInfo.of(courseList);
+ }
+}
diff --git a/springboot/src/main/java/com/example/service/StudentService.java b/springboot/src/main/java/com/example/service/StudentService.java
new file mode 100644
index 00000000..ff3db99d
--- /dev/null
+++ b/springboot/src/main/java/com/example/service/StudentService.java
@@ -0,0 +1,79 @@
+package com.example.service;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.example.common.RoleEnum;
+import com.example.entity.Account;
+import com.example.entity.Student;
+import com.example.exception.CustomException;
+import com.example.mapper.StudentMapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Service
+public class StudentService {
+
+ @Resource
+ private StudentMapper studentMapper;
+
+ /**
+ * 登录
+ */
+ public Account login(Account account) {
+ Account dbStudent = studentMapper.selectByUsername(account.getUsername());
+ if (dbStudent == null) {
+ // 没有用户
+ throw new CustomException("账号或密码错误");
+ }
+ // 比较密码
+ if (!account.getPassword().equals(dbStudent.getPassword())) {
+ throw new CustomException("账号或密码错误");
+ }
+ // 登录成功
+ return dbStudent;
+ }
+
+ /**
+ * 学生注册
+ */
+ public void register(Account account) {
+ Student student = new Student();
+ student.setUsername(account.getUsername()); // 账号
+ student.setPassword(account.getPassword()); // 密码
+ this.add(student);
+ }
+
+
+ /**
+ * 新增
+ */
+ public void add(Student student) {
+ Student dbStudent = studentMapper.selectByUsername(student.getUsername());
+ if (dbStudent != null) { // 已有同名账号 不允许插入
+ throw new CustomException("账号已存在");
+ }
+ if (ObjectUtil.isEmpty(student.getName())) {
+ student.setName(student.getUsername());
+ }
+ student.setRole(RoleEnum.STUDENT.name());
+ studentMapper.insert(student);
+ }
+
+ public void deleteById(Integer id) {
+ studentMapper.deleteById(id);
+ }
+
+ public void updateById(Student student) {
+ studentMapper.updateById(student);
+ }
+
+ public PageInfo selectPage(Integer pageNum, Integer pageSize, Student student) {
+ PageHelper.startPage(pageNum, pageSize);
+ List studentList = studentMapper.selectAll(student);
+ return PageInfo.of(studentList);
+ }
+
+}
diff --git a/springboot/src/main/resources/application.yml b/springboot/src/main/resources/application.yml
index 36976fed..c6af3631 100644
--- a/springboot/src/main/resources/application.yml
+++ b/springboot/src/main/resources/application.yml
@@ -6,7 +6,7 @@ spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
- password: 123456
+ password: 2022@Der
url: jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
servlet:
multipart:
diff --git a/springboot/target/classes/application.yml b/springboot/target/classes/application.yml
index 36976fed..c6af3631 100644
--- a/springboot/target/classes/application.yml
+++ b/springboot/target/classes/application.yml
@@ -6,7 +6,7 @@ spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
- password: 123456
+ password: 2022@Der
url: jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
servlet:
multipart:
diff --git a/springboot/target/classes/com/example/common/RoleEnum.class b/springboot/target/classes/com/example/common/RoleEnum.class
new file mode 100644
index 00000000..2ce9e9b4
Binary files /dev/null and b/springboot/target/classes/com/example/common/RoleEnum.class differ
diff --git a/springboot/target/classes/com/example/controller/CourseController.class b/springboot/target/classes/com/example/controller/CourseController.class
new file mode 100644
index 00000000..a387c40e
Binary files /dev/null and b/springboot/target/classes/com/example/controller/CourseController.class differ
diff --git a/springboot/target/classes/com/example/controller/StudentController.class b/springboot/target/classes/com/example/controller/StudentController.class
new file mode 100644
index 00000000..50381dbd
Binary files /dev/null and b/springboot/target/classes/com/example/controller/StudentController.class differ
diff --git a/springboot/target/classes/com/example/controller/WebController.class b/springboot/target/classes/com/example/controller/WebController.class
index 72891992..2f3be3b3 100644
Binary files a/springboot/target/classes/com/example/controller/WebController.class and b/springboot/target/classes/com/example/controller/WebController.class differ
diff --git a/springboot/target/classes/com/example/entity/Account.class b/springboot/target/classes/com/example/entity/Account.class
new file mode 100644
index 00000000..09473bd9
Binary files /dev/null and b/springboot/target/classes/com/example/entity/Account.class differ
diff --git a/springboot/target/classes/com/example/entity/Admin.class b/springboot/target/classes/com/example/entity/Admin.class
index 31ccd708..3077e8b1 100644
Binary files a/springboot/target/classes/com/example/entity/Admin.class and b/springboot/target/classes/com/example/entity/Admin.class differ
diff --git a/springboot/target/classes/com/example/entity/Course.class b/springboot/target/classes/com/example/entity/Course.class
new file mode 100644
index 00000000..5fcc3c18
Binary files /dev/null and b/springboot/target/classes/com/example/entity/Course.class differ
diff --git a/springboot/target/classes/com/example/entity/Student.class b/springboot/target/classes/com/example/entity/Student.class
new file mode 100644
index 00000000..91eaf091
Binary files /dev/null and b/springboot/target/classes/com/example/entity/Student.class differ
diff --git a/springboot/target/classes/com/example/mapper/AdminMapper.class b/springboot/target/classes/com/example/mapper/AdminMapper.class
index 94751d45..85d5474b 100644
Binary files a/springboot/target/classes/com/example/mapper/AdminMapper.class and b/springboot/target/classes/com/example/mapper/AdminMapper.class differ
diff --git a/springboot/target/classes/com/example/mapper/CourseMapper.class b/springboot/target/classes/com/example/mapper/CourseMapper.class
new file mode 100644
index 00000000..b555fa7a
Binary files /dev/null and b/springboot/target/classes/com/example/mapper/CourseMapper.class differ
diff --git a/springboot/target/classes/com/example/mapper/StudentMapper.class b/springboot/target/classes/com/example/mapper/StudentMapper.class
new file mode 100644
index 00000000..7dedebee
Binary files /dev/null and b/springboot/target/classes/com/example/mapper/StudentMapper.class differ
diff --git a/springboot/target/classes/com/example/service/AdminService.class b/springboot/target/classes/com/example/service/AdminService.class
index e5428db3..469d9d32 100644
Binary files a/springboot/target/classes/com/example/service/AdminService.class and b/springboot/target/classes/com/example/service/AdminService.class differ
diff --git a/springboot/target/classes/com/example/service/CourseService.class b/springboot/target/classes/com/example/service/CourseService.class
new file mode 100644
index 00000000..41a6c2e6
Binary files /dev/null and b/springboot/target/classes/com/example/service/CourseService.class differ
diff --git a/springboot/target/classes/com/example/service/StudentService.class b/springboot/target/classes/com/example/service/StudentService.class
new file mode 100644
index 00000000..a8029c3b
Binary files /dev/null and b/springboot/target/classes/com/example/service/StudentService.class differ
diff --git a/springboot/target/maven-archiver/pom.properties b/springboot/target/maven-archiver/pom.properties
new file mode 100644
index 00000000..ef91ce0d
--- /dev/null
+++ b/springboot/target/maven-archiver/pom.properties
@@ -0,0 +1,3 @@
+artifactId=springboot
+groupId=com.example
+version=0.0.1-SNAPSHOT
diff --git a/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 00000000..6ac35679
--- /dev/null
+++ b/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,13 @@
+com\example\common\Result.class
+com\example\entity\Course.class
+com\example\common\CorsConfig.class
+com\example\service\AdminService.class
+com\example\service\CourseService.class
+com\example\exception\GlobalExceptionHandler.class
+com\example\SpringbootApplication.class
+com\example\exception\CustomException.class
+com\example\mapper\CourseMapper.class
+com\example\entity\Admin.class
+com\example\controller\WebController.class
+com\example\controller\CourseController.class
+com\example\mapper\AdminMapper.class
diff --git a/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 00000000..af6c4f82
--- /dev/null
+++ b/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,13 @@
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\mapper\CourseMapper.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\SpringbootApplication.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\common\Result.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\exception\GlobalExceptionHandler.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\common\CorsConfig.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\service\CourseService.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\exception\CustomException.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\entity\Course.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\controller\CourseController.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\entity\Admin.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\mapper\AdminMapper.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\service\AdminService.java
+C:\Users\MEI\Desktop\Demo-master\demo\springboot\src\main\java\com\example\controller\WebController.java
diff --git a/springboot/target/springboot-0.0.1-SNAPSHOT.jar b/springboot/target/springboot-0.0.1-SNAPSHOT.jar
new file mode 100644
index 00000000..4ae3533d
Binary files /dev/null and b/springboot/target/springboot-0.0.1-SNAPSHOT.jar differ