參考:SpringBoot教程html
Spring Boot是爲了簡化Spring應用的建立、運行、調試、部署等而出現的,使用它能夠作到專一於Spring應用的開發,而無需過多關注XML的配置。Spring Boot特性以下:java
1. 新建一個Maven項目web
2. 配置pom.xmlspring
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sa.springboot</groupId> <artifactId>spring-boot-sample-helloworld</artifactId> <version>0.0.1-SNAPSHOT</version> <!-- 經過繼承parent項目得到默認配置,包括默認使用Java 8,UTF-8編碼;識別classpath下的application.properties和application.yml等 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent> <!-- 預約義的一些Web開發的經常使用依賴,包括Tomcat、jackson和spring-webmvc等 --> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
3. 編寫Controllerapache
package com.sa.springboot.controller; import ... @RestController // @Restcontroller至關於@Controller(類的註釋)和@ResponseBody(方法的註釋)的結合,使方法以json格式輸出 @EnableAutoConfiguration // same as @SpringBootApplication,@Configuration,@ComponentScan.它會根據你的pom配置來判斷這是一個什麼應用(如web應用),並建立相應的環境。 public class SampleController { @RequestMapping("/hello") String home() { return "Hello World!!"; } public static void main(String[] args) throws Exception { SpringApplication.run(SampleController.class, args); // 從main方法啓動Spring應用的類,建立ApplicationContext實例且加載全部單例beans。 } }
4. 執行main方法,並使用瀏覽器訪問http://localhost:8080/hellojson
單元測試:api
@RunWith(SpringRunner.class) @SpringBootTest public class SampleControllerTest { private MockMvc mvc; @Before public void setUp() throws Exception { mvc = MockMvcBuilders.standaloneSetup(new SampleController()).build(); } @Test public void getHello() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON)) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()) .andReturn(); } }
開發環境的調試:springBoot對調試支持很好,修改以後能夠實時生效,須要添加如下的配置:瀏覽器
<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>
springboot內部對jsp的支持並非特別理想,其推薦的視圖是Thymeleaf,但大多數java開發人員仍是喜歡使用jsp。使用jsp的步驟以下:tomcat
1. 添加依賴springboot
<!-- 對jsp的支持 --> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency> <!-- jsp對servlet容器的支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> </dependency> <!-- jsp中使用jstl標籤的支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>
2.