自定义启动Banner
快速构建一个SpringBoot项目,启动项目来看看SpringBoot默认的启动Banner长什么样子,大多数情况下,我们其实不用关心这个东西。如果你个人或者你的开发团队觉得这样做显得太单一,想定制成一个有个性的Banner启动图案,我们可以按照如下步骤来定义:
默认启动Banner图:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.9.RELEASE)
自定义Banner:
在resources目录下新建banner.txt文件
文件中可以编写任何字符,SpringBoot在启动时会将字符打印到控制台
推荐一个在线生成字符的网站:http://patorjk.com/software/taag/
${AnsiColor.BRIGHT_RED}:设置控制台中输出内容的颜色,可以自定义,具体参考
org.springframework.boot.ansi.AnsiColor
关闭Banner图案:
public static void main(String[] args) {
SpringApplication app = new SpringApplication(DemoApplication.class);
app.setBannerMode(Banner.Mode.OFF);
app.run(args);
}
修改端口和默认路径
server:
port: 8889
servlet:
context-path: /chapter02
多环境切换配置
在实际项目开发中,会有多套环境来支撑,例如 开发环境(dev)、测试环境(test)、生产环境(pro)和uat环境(uat),通过spring.profiles.active属性可以非常方便的切换到不通的环境下。
-
在resources目录下新建application-dev.yml、application-pro.yml、application-test.yml、application-uat.yml 四个环境的配置文件,这里为了演示,我们将不同环境的端口号分别修改如下:
devserver: port: 8081 servlet: context-path: /chapter02
pro
server: port: 8082 servlet: context-path: /chapter02
test
server: port: 8083 servlet: context-path: /chapter02
uat
server: port: 8084 servlet: context-path: /chapter02
-
在application.yml配置文件中添加配置:
spring: profiles: active: pro
-
切换active的值,启动项目观察端口号,如果发生变化说明配置成功。
自定义属性配置
-
切换当前环境为:dev,在application-dev.yml中新增如下自定义属性:
#自定义属性配置 com: example: name: test mail: xxxx@outlook.com addr: 北京市海淀区首体南路
-
创建ExampleProp类,存放于utils包下
第一种方式:
@Data @Component public class ExampleProp { @Value("${com.example.name}") private String name; @Value("${com.example.mail}") private String mail; @Value("${com.example.addr}") private String addr; }
第二种方式:
@Data @Component @ConfigurationProperties(prefix = "com.example") public class ExampleProp { private String name; private String mail; private String addr; }
@Data: lombok简化代码用的,后面章节单独介绍,可以去掉这个注解,然后手动生成getter和setter
@Component : 让spring在启动的时候扫描到该类,并添加到spring容器中。
@Value("${com.example.name}") : 加载配置文件中的属性值
@ConfigurationProperties(prefix = “com.example”) : 设置前缀,属性上不需要添加注解。 -
创建一个Controller,来验证属性配置是否生效
@RestController public class PropController { @Autowired ExampleProp exampleProp; @GetMapping("/getProp") public ExampleProp getProp(){ return exampleProp; } }
使用 @Autowired 注解,将我们创建好的Bean注入到Controller中,然后启动应用。
@RestController 和 @GetMapping("/getProp") 用来定义访问路径,后面章节再细说。
启动项目,在浏览器访问: http://localhost:8081/chapter02/getProp
我们可以看到exampleProp对象的属性值已经成功注入。
转载:https://blog.csdn.net/qiangzi1103/article/details/102544925