这个专栏的文章,写些 springboot 开发 restful service (json) 的碎碎念。 从 start.spring.io/ 生成一下框架代码, 依赖选择 spring web
点击 Generate btn 下载 zip 包,解压放到项目目录。
(最近因为一些原因需要从 mac 切换到 win, 发现 power shell + wsl 也还行)
用 idea 导入项目的 pom.xml, 项目 folder, maven run 一下
mvn clean spring-boot:run
项目的 code 放在 gitee.com/yren/mars 一些小修改
- 将 src/resources/application.properties 改为 yml 格式
- 在 application.yml 中将 server listen port 设置为 8083, server connect timeout 设置为 5 分钟。
# application.yml
server:
port: 8083
# conn timeout 5 minutes, 5 * 60 * 1000 ms
connection-timeout: 300000
- 建一个 InfoController, 返回第一个 api
/*
@CrossOrigin , 允许 api 跨域调用
@RestController, 将类声明为一个 restful controller
@Value("${spring.application.name:}")
String name;
读取 application.yml 中的对应配置,
注意结尾的 : , 表示当 spring.application.name 在 yaml 中未定义时,默认值为空
@GetMapping("/")
get method, 请求路径是 /
*/
@CrossOrigin
@RestController
public class InfoController {
@Value("${spring.application.name:}")
String name;
@Value("${custom.version:}")
String version;
@Value(("${custom.env:dev}"))
String env;
@GetMapping("/")
public Map<String, Object> info() {
Map<String, Object> resp = new HashMap<>();
resp.put("msg", String.format("welcome, it's %s api (%s)", name, version));
resp.put("env", env);
return resp;
}
}
运行服务看一下
mvn clean spring-boot:run
在浏览器访问 http://localhost:8083/
或者终端 wget http://localhost:8083
在语雀转了一下,那里的格式看着更舒服点 www.yuque.com/u2177997/sr…