本章用5-10分钟创建一个Spring RESTful Web service "Hello World"。
他可以接受http get请求,并返回标准的Json数据如下:
//接口get方法 http://localhost:8080/greeting
{"id":1,"content":"Hello, World!"}
//接口get方法 http://localhost:8080/greeting?name=User
{"id":1,"content":"Hello, User!"}
开发环境搭建:
下载使用JDK 1.8 or later
下载 Spring Tool Suite (STS4) 并配置maven和aliyun镜像
步骤1:新建一个spring web项目:
file-new- spring started project-
/spring-web-serivce-demo/src/main/java/com/example/demo/Greeting.java
package com.example.demo;
public class Greeting {
private final long id;
private final String content;
public Greeting(long id, String content) {
this.id = id;
this.content = content;
}
public long getId() {
return id;
}
public String getContent() {
return content;
}
}
/spring-web-serivce-demo/src/main/java/com/example/demo/GreetingController.java
package com.example.demo;
import java.util.concurrent.atomic.AtomicLong;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController // =@Controller and @ResponseBody
public class GreetingController {
private static final String template ="Hello,%s!";
private final AtomicLong counter =new AtomicLong();
//@PostMapping @RequestMapping(method=GET)
@GetMapping("/greeting")
public Greeting greeting(@RequestParam(value = "name",defaultValue = "World") String name) {
//Spring’s MappingJackson2HttpMessageConverter is automatically chosen to convert the Greeting instance to JSON.
return new Greeting(counter.incrementAndGet(), String.format(template, name));
}
}
这样就可以了。
./mvnw spring-boot:run
. 测试运行
./mvnw clean package 打包并发布
java -jar target/~tab 运行