Maven与Spring Boot(2)
一、实验目的
(1)掌握Maven POM文件的配置方法
(2)掌握Maven插件的配置和运行方法
(3)掌握Spring Boot项目的建立和运行方法
二、实验用的仪器和材料
(1)硬件:PC或Mac一台;8G及以上内存,40G硬盘空间
(2)软件环境:Windows 10/11操作系统或其他支持JVM的操作系统
三、实验的步骤和方法
(1)按照实验手册,通过Maven运行Servlet_Maven项目。
1.1 编译并运行Maven项目,对运行结果截图
1.2 分析POM文件,指出dependency和plugin
(2)完成Spring官网上的Maven教程,对运行结果截图
Getting Started | Building Java Projects with Maven
(3)按照实验手册,完成Taco-cloud项目的创建和运行。
3.1 运行taco-cloud项目,对运行结果截图
3.2 分析POM文件,简述该文件各个部分的作用
3.3 分析Spring Boot项目的目录结构,指出各个目录和文件的作用
四、数据记录和计算
(1)通过Maven运行Servlet_Maven项目。
1.1 编译并运行Maven项目,以下是运行结果截图
http://localhost:8080/get.html
http://localhost:8080/post.html
1.2 分析POM文件,指出dependency和plugin
dependency
Plugin
<!-- 定义构建的方法-->
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<source>17</source>
<target>17</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.2</version>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/</path>
<server>tomcat7</server>
</configuration>
</plugin>
</plugins>
</build>
(2)完成Spring官网上的Maven教程,对运行结果截图
Getting Started | Building Java Projects with Maven
(3)按照实验手册,完成Taco-cloud项目的创建和运行。
3.1 运行taco-cloud项目,对运行结果截图
3.2 分析POM文件,简述该文件各个部分的作用
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
父级项目,parent的引用是固定的,父项目中定义了依赖的版本,我们继承了它,所以依赖dependence可以不写版本号,若不用父项目中的版本号则自己用<version>标签指定
<groupId>edu.seig</groupId>
groupId是项目的唯一标识
<artifactId>tacos</artifactId>
项目的名称
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
支持Thymeleaf模板引擎,包括与Spring的集成。使用模板thymeleaf,Thymeleaf是一个java类库,他是一个xml/xhtml/html5的模板引擎,可以作为mvc的web应用的view层
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
支持全栈式Web开发,包括Tomcat和spring-webmvc
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
单元测试
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
Maven插件
3.3 分析Spring Boot项目的目录结构,指出各个目录和文件的作用
- src/main/java: 该目录是项目的主要代码目录,包含了Java源文件和应用程序的主要逻辑。
- src/main/resources: 该目录包含了项目的配置文件、静态资源文件、国际化文件等。
- src/test/java: 该目录是用于编写单元测试代码的目录,包含了项目的测试类。
- src/test/resources: 该目录包含了单元测试所需的配置文件或者测试数据。
- target: 该目录是构建项目时生成的输出目录,包含了编译后的class文件、打包生成的jar文件等。
- pom.xml: 该文件是Maven项目的核心配置文件,定义了项目的依赖关系、插件配置等信息。
- src/main/webapp: 如果项目中使用了Web应用程序(如Spring MVC),则该目录用于存放Web页面、前端资源等。
- src/main/resources/static: 如果项目中使用了静态资源(如CSS、JavaScript、图片等),则该目录用于存放静态资源文件。
- src/main/resources/templates: 如果项目采用了模板引擎(如Thymeleaf、Freemarker等),则该目录用于存放模板文件
五、实验结果或结论
六、总结
在创建SpringBoot项目时,可能因为idea的bug,重新打开或创建新项目时,设置里的Maven配置就会初始化,一开始没有发现,java文件夹就不会变蓝,类文件也不能运行,Maven也会报错缺少文件,重新配置文件后能够正常完成实验内容,但ppt有些内容没接触过,也没有说明,就不知道是什么意思,比如指令的输入以及其含义。