学生作业管理系统
程序员文章站
2024-01-27 13:47:28
...
功能描述
本系统分为教师端与学生端两个部分
- 教师端:
添加作业,增删学生,查看作业与学生列表; - 学生端:
查看作业,提交作业,更新作业。
项目相关
Spring boot
1、什么是SpringBoot
Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。
2、SpringBoot四个主要特性
- SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的Maven或Gradle构建中;
- 自动配置:SpringBoot的自动配置特性利用了Spring4对条件化配置的支持,合理地推测应用所需的bean并自动化配置他们;
- 命令行接口:(Command-line-interface, CLI):SpringBoot的CLI发挥了Groovy编程语言的优势,并结合自动配置进一步简化Spring应用的开发;
- Actuatir:它为SpringBoot应用的所有特性构建一个小型的应用程序。但首先,我们快速了解每项特性,更好的体验他们如何简化Spring编程模型。
MyBatis
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
相较于jdbc,mybatis拥有以下优势优势:
- mybatis是把连接数据库的信息都是写在配置文件中,因此不存在硬编码问题,方便后期维护。
- mybatis执行的sql语句都是通过配置文件进行配置,不需要写在java代码中。
- mybatis的连接池管理、缓存管理等让连接数据库和查询数据效率更高。
项目设计
数据库
数据库中,共建立了四张表
s_teacher
s_student
s_homework
s_student_homework
代码结构
Docker
下载安装Docker
从Docker官网下载Windows安装包,下载完成后运行安装。
利用Docker构建镜像
- 在项目的src/main下新建一个docker目录;
Dockerfile的内容如下:
FROM openjdk:8-jdk-alpine
ADD demo-0.0.1-SNAPSHOT.jar demo-0.0.1-SNAPSHOT.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/demo-0.0.1-SNAPSHOT.jar"]
- 修改pom.xml文件
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.2.0</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
- 运行镜像生成命令:
mvn clean package docker:build
提交镜像
在PowerShell里查看生成的镜像
修改格式
提交