spring Boot 學習第一步,就是初始化項目和來一個hello world的api。java
訪問 http://start.spring.io/ 來初始化一個spring boot項目,生成的項目中包含最基本的 pom依賴項目。web
在pom.xmlspring
添加如下依賴:數據庫
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
在建立好的包裏就有DemoApplication.java 類,這是springboot的入口類。
@SpringBootApplication註解全局惟一api
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
在這個類上能夠添加springboot
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class}) @EnableScheduling
來暫時停用對數據庫的訪問,以及啓用任務管理。restful
接下來就是編寫咱們的控制層了,也就是處理http請求的。app
@RestController public class HelloController { private final AtomicLong counter = new AtomicLong(); @RequestMapping("/hello") public Person hello() { return new Person(counter.incrementAndGet(),"4321"); } @RequestMapping(value="/newWorld", method = RequestMethod.GET) public String newWorld() { return "Hello New43 da World"; } }
@RestController聲明這是一個restful API 的控制器,直接返回JSON串;@RequestMapping能夠用來指定請求的地址和請求方法(GET/POST/PUT)spring-boot
@Controller public class FileUploadController { @GetMapping("/resTest") @ResponseBody public Person resTest() { return new Person(3674,"fdasfa"); } @PostMapping("/resTest") @ResponseBody public Person resTest() { return new Person(3674,"fdasfa"); } }
@Controller + @ResponseBody 一樣能夠產生 @RestController的效果。
@PostMapping和@GetMapping 看名字就知道是對應不一樣的請求方法。學習