spring boot设计目的是用来简化spring应用的初始搭建以及开发过程。
spring boot的基础结构共有三个文件:
目录下有springbootApplication:一个带有main()方法的类,用于启动应用程序。
目录下有application.properties:一个空的properties文件,可以根据需要添加配置属性
目录下有springbootApplicationTests:一个空的Junit测试,它加载了一个使用springboot字典配置功能的spring应用程序上下文
pom.xml是maven构建说明文件
- src/main/java 程序开发以及主程序入口
- src/main/resources 配置文件
- src/test/java 测试程序
建议目录结果如下:(root package结构:com.example.myproject)
com
+- example
+- myproject
+- Application.java Application.java建议放到目录下面,主要用于做一些框架设置
|
+- domain domain目录主要用于实体entity与数据访问层repository
| +- Customer.java
| +- CustomerRepository.java
|
+- service service层主要是业务类代码
| +- CustomerService.java
|
+- controller 负责页面访问控制
| +- CustomerController.java
|
spring boot的pox.xml文件中默认有两个模块:
spring-boot-starter:核心模块,包括自动配置支持、日志和YAML;
spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、mockito。
添加支持web的模块为:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
spring boot对热启动的支持很好,修改之后可以实时生效,需要添加以下配置:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
该模块在完整的打包环境下运行时会被禁用,使用 Java -jar 启动应用或者用一个特定的class loader启动,会认为是一个”生产环境“。