书本使用的 Gradle 构建项目.我这例子中是使用的 Maven, 主要比较习惯用 Maven, 所以使用它, 不影响接下来的 Spring Boot 的学习.
简单的项目说明
src/main/java : 主要应用程序代码
src/main/resources : 资源目录
src/test/java : 测试目录
src/test/resources : 测试的资源目录, 在测试用使用该目录.
还会看到如下的文件:
pom.xml : Maven 的主要构建文件
JkyuntuReadApplication..java:应用程序的启动引导类(bootstrap class),也是主要的Spring配置类
application.properties : 用于配置应用程序和Spring Boot的属性
JkyuntuReadApplicationTests : 一个基本的集成测试类
先看看 JkyuntuReadApplication.java
package com.jkyuntu.book;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class JkyuntuReadApplication {
public static void main(String[] args) {
SpringApplication.run(JkyuntuReadApplication.class, args);
}
}
@ SpringBootApplication : 开启了Spring的组件扫描和Spring Boot的自动配置功能. 实际上, @ SpringBootApplication将三个有用的注解组合在了一起
在Spring Boot的早期版本中, 你需要在ReadingListApplication类上同时标上这三个注解, 但从Spring Boot1.2.0开始,有@ SpringBootApplication就行了
运行起来项目看一下吧. 直接执行 main 方法. 启动之后, 输入 http://localhost:8080 就可以查看效果. 不过现在就只会出现 404
测试 Spring Boot 应用程序
Spring Initializr 还提供了一个测试类的骨架, 可以基于应用程序编写测试.
代码如下:
package com.jkyuntu.book;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class JkyuntuReadApplicationTests {
@Test
public void contextLoads() {
}
}
在新版本中 会使用 @ SpringBootTest 的注解来进行测试 Spring Boot 项目. 书中是使用了另一种方式进行测试. 就是原来 Spring 的测试用例. 这里的特性是从 Spring Boot 1.4之后, 只需要 @ SpringBootTest 注解 和对应的单元测试即可.
@ RunWith(SpringRunner.class)
告诉JUnit运行使用Spring的测试支持。SpringRunner是SpringJUnit4ClassRunner的新名字,这个名字只是让名字看起来简单些。
@ SpringBootTest的意思是
“带有Spring Boot支持的引导程序”(例如,加载应用程序、属性, 为我们提供Spring Boot的所有精华部分)
配置应用程序的属性
可以在 application.properties 中加入 如下代码:
server.port=8000
就可以修改项目启动的端口号.
大概的例子说明就到这了, 该框架一直都在更新中, 在看书的过程中, 我还在看官方的文档. 版本变化比较大.
在使用 @ 的时候, 会有地方 加上一个空格. 主要是我现在的这个编辑器, 会加上一个超链接, 暂时先打个空格.需要注意一下.