1、maven构建项目
    访问网站http://start.spring.io/,选择构建maven工程和SpringBoot版本号,点击“Switch back to the simple version.”选择jdk版本(当前最低只能用jdk8)
    点击"Generate Project"或按键盘alt+enter下载初始化的项目文件
    eclipse导入下载并解压好的maven工程

2、项目结构
    SpringBoot的框架基础结构
    src/main/java 程序开发以及主程序入口
    src/main/resources 配置文件
    src/test/java 测试程序
    root package的结构:com.xxx.xxx
     1、Application.java 建议放到跟目录下面,主要用于做一些框架配置
     2、domain目录主要用于实体(Entity)与数据访问层(Repository)
    3、service 层主要是业务类代码
    4、controller 负责页面访问控制

3、引入web模块
    1、pom.xml增加web支持

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
</dependency>

    pom.xml默认有两个模块
        spring-boot-starter:核心模块,包括自动配置支持、日志和YAML;
        spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito。
    2、编写controller内容

@RestController
public class HelloWorldController {
    @RequestMapping("/hello")
    public String index() {
        return "Hello World";
    }
}

    @RestController的意思就是controller里面的方法都以json格式输出
    3、启动主程序
        访问"localhost:8080/hello"即可看到效果

4、单元测试
    打开src/test的测试入口,变现简单的http请求来测试,使用mockmvc进行,利用MockMvcResultHandlers.print()打印执行结果。

@RunWith(SpringRunner.class)
  @SpringBootTest
public class HelloWorldControlerTests {
    private MockMvc mvc;
    @Before
    public void setUp() throws Exception {
        mvc = MockMvcBuilders.standaloneSetup(new HelloWorldController()).build();
    }
    @Test
    public void getHello() throws Exception {
    mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
                .andExpect(MockMvcResultMatchers.status().isOk())
                .andDo(MockMvcResultHandlers.print())
                .andReturn();
    }
}

5、开发环境调试

<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启动或者使用特定的classLoad启动会被认为是生产环境

最后修改:2018 年 09 月 07 日
如果觉得我的文章对你有用,请随意赞赏