1、Springboot开篇之HelloWorld

2018-10-14  本文已影响0人  小manong

一、Springboot之HelloWorld

1、maven依赖

<properties>
        <!-- 使用UTF-8编码 -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- 使用jdk1.8版本 -->
        <java.version>1.8</java.version>

    </properties>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.0.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 测试依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- 添加thymeleaf -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!--热启动:每自修改后, 程序自动启动spring Application上下文。 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
        <!-- 阿里json -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.31</version>
        </dependency>
    </dependencies>
<!-- springboot maven插件,如果确山那么打jar包时候运行会出现缺少主清单属性 -->
 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

2、controller类

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

3、Springboot启动类AppMain

@SpringBootApplication
public class AppMain {
    public static void main(String[] args) {
        SpringApplication.run(AppMain.class,args);
    }
}

4、测试

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = AppMain.class)
@WebAppConfiguration
public class HelloSpringbootTest {

    private MockMvc mockMvc;
    @Before
    public void setUp (){
        mockMvc= MockMvcBuilders.standaloneSetup(new HelloController()).build();
    }
    @Test
    public void helloTest() throws  Exception{
       MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/hello/qiu")
                .accept(MediaType.APPLICATION_JSON))
                .andExpect(MockMvcResultMatchers.status().isOk())
                .andDo(MockMvcResultHandlers.print())
                .andReturn();
        System.out.println(mvcResult);
    }

}

总结注意点:
(1)Springboot建议的项目结构

比如root package为com.qiu
com
  +- qiu
    +- Appmain.java
   |
   +- domain
   |  +- xxx.java
   | 
   +- service
   |  +- xxxService.java
   | 
   +- controller
   |  +- xxxController.java
   | 

(2)这里省略了配置文件,配置文件可以为application.properties或者application.yml两个格式

二、打成jar包运行

1、IDEA打jar包

IDEA打jar包操作

2、运行测试

上一篇 下一篇

猜你喜欢

热点阅读