博客首页 » Spring Boot 简化开发 2 配置
发布于 27 Jan 2016 09:51
标签 blog
上一篇文章,已经体会到使用Spring Boot可以快速构建工程。
概述Spring Boot的配置
作为一体化配置的补偿,Spring Boot也提供了灵活的配置手段。
优先级顺序是:
- 命令行参数。
- 通过 System.getProperties() 获取的 Java 系统参数。
- 操作系统环境变量。
- 从 java:comp/env 得到的 JNDI 属性。
- 通过 RandomValuePropertySource 生成的“random.*”属性。
- 应用 Jar 文件之外的属性文件。
- 应用 Jar 文件内部的属性文件。
- 在应用配置 Java 类(包含“@Configuration”注解的 Java 类)中通过“@PropertySource”注解声明的属性文件。
- 通过“SpringApplication.setDefaultProperties”声明的默认属性。
命令行参数的例子
所有的以 "—<name>" 开头的命令行参数,可以通过去掉开始的两个"-"后的name来引用
略微改造一下代码。
@RestController @EnableAutoConfiguration public class Application { @Value("${name}") private String name; @RequestMapping("/") String home() { return String.format("Hello %s!", name); } public static void main(String[] args) throws Exception { SpringApplication.run(Application.class, args); } }
执行与结果
打包 mvn package
我们在命令行上添加 —name=Frank 执行jar包
java -jar target\spring-boot-simple-1.0-SNAPSHOT.jar —name=Frank
执行简单的程序从localhost:8080取得结果
pip install pycurl; python -c " from pycurl import Curl; from cStringIO import StringIO; buf=StringIO(); c=Curl(); c.setopt(c.URL, 'http://localhost:8080/'); c.setopt(c.WRITEFUNCTION, buf.write); c.perform(); print buf.getvalue(); buf.close(); "
可以看到结果:
Hello Frank!
本页面的文字允许在知识共享 署名-相同方式共享 3.0协议和GNU自由文档许可证下修改和再使用,仅有一个特殊要求,请用链接方式注明文章引用出处及作者。请协助维护作者合法权益。
系列文章
文章列表
- Spring Boot 简化开发 2 配置
这篇文章对你有帮助吗,投个票吧?
留下你的评论