git地址:https://github.com/Shadow1300/JavaEE_FINAL
一、功能需求
1、系统角色:
此系统角色分为:教师、学生
2、用例
①教师
- 注册
- 登录
- 创建课程班级
- 查看我创建的课程班级
- 发布作业
- 查看已发布作业
- 查看作业提交情况
- 作业批改
②学生
- 注册
- 登录
- 加入课程班级
- 查看我加入的课程班级
- 查看作业要求
- 提交作业
3、流程
学生、教师:
1)首先用户进行注册,输入教工号、姓名、设置密码、选择身份
2)登录进入属于自己角色的界面
教师:
3)教师进入教师主界面
4)创建班级,设置课程id与课程名称,系统自动生成4位邀请码,学生只用通过填写邀请码才可以进入课程。
5)可以查看自己有哪些课程以及此课程的邀请码
6)教师可以发布作业,填写课程id与作业id以及作业要求、作业截止时间;如果所填课程id是不属于自己的课程,则发布作业失败
7)教师可以查看自己所发布的作业
8)教师可以查看作业的提交情况
9)教师可以审批作业
学生:
10)学生可以填写课程id、教师id、以及邀请码,匹配则可以加入课程
11)查看自己加入了哪些班级
12)查看自己有哪些作业
13)学生可以提交作业
二、数据库
根据需求创建了数据库,共创建了7张表:
1、user:用于记录系统用户的,存储id、密码、身份
2、学生表:学生id、学生姓名
3、教师表:教室id、教室姓名
4、课程表:课程id、课程名、任课老师id、邀请码
5、班级表:课程id、学生id
6、作业表:作业id、班级id、作业要求、作业截止时间
7、作业提交表:作业id、班级id、学生id、作业标题、作业内容、提交时间、教室点评、分数
三、代码结构设计
controller层、core:request/response、db:mapper/model/service
以下展示具体类:
四、配置
在application.properties文件中配置端口与数据库连接
server.port=10001
spring.jpa.database=mysql
spring.jpa.show-sql=true
spring.datasource.url=jdbc:mysql://localhost:3306/zy?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=GMT
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.main.allow-bean-definition-overriding=true
#username and password of 张影
spring.datasource.username=root
spring.datasource.password=zhangying
五、界面
1、登录
2、注册
3、学生主页面
4、查看作业要求
5、查看班级
6、加入班级
7、提交作业
8、教师主页面
9、创建班级
10、创建成功
11、查看班级
12、发布作业
13、批改作业
14、查看我已发布的作业
15、查看已提交的作业
并且存在一些规则。老师不能批改不属于自己课程和不属于该课程学生的作业。
六、Docker
1、先clean再package,得到jar包
2、Dockerfile
FROM java:8
ADD demo-0.0.1-SNAPSHOT.jar test.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/test.jar"]
3、将jar包在服务器上映射
4、ID