前面介绍了Spring的@Controller和@RestController控制器, 他们是如何响应客户端请求,如何返回json数据。不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html

今天来说一说SpringBoot的application.properities的相关配置属性和如何自定义配置文件。

这个系列课程的完整源码,也会提供给大家。大家关注我的微信公众号(架构师精进),回复:springboot源码 获取这个系列课程的完整源码。或者点此链接直接下载完整源码

一、系统配置application.properities

创建spring-boot项目后,会在resources目录下生成一个空的application.properties配置文件,springboot启动时加载该配置文件。

application.properties(或者application.yml)中包含系统属性、环境变量、命令参数这类信息。

下面简要说一部分spring-boot项目中application.properties内的一些常用配置,更多参照官方文档

############################################################
#
# Server 服务器相关配置
#
############################################################
# 配置端口号
server.port=
# 配置context-path,一般这个配置在正式发布的时候不需要配置。
#server.context-path=
# 错误页,指定发生错误时,跳转的URL --> BasicErrorController
#server.error.path=/error
# session最大超市时间(分钟),默认30分钟
server.session-timeout=
# 服务绑定的IP地址,启动服务器时,如本机不是该IP地址则抛出异常启动失败,
# 所以此配置只有在特殊情况下才配置,具体更具各自的业务来设置。
#server.address=192.168.1.9 ############################################################
# Server - tomcat 相关配置
############################################################
# tomcat最大线程数,默认200
#server.tomcat.max-threads=
# tomcat的URI编码格式
server.tomcat.uri-encoding=UTF-
# 存放Tomcat的日志,Dump等文件的零食文件夹,默认为系统但是tmp文件夹
# (如:C:\\Users\Zhang\AppData\Local\Temp)
#server.tomcat.basedir=D:/springboot-tomcat-tmp
# 打开Tomcat的Access日志,并可以设置日志格式的方法,
#server.tomcat.access-log-enabled=true
#server.tomcat.access-log-pattern=
# accesslog目录,默认在basedir/logs
#server.tomcat.accesslog.directory=
# 日志文件目录
#logging.path=H:/springboot-tomcat-tmp
# 日志文件名称,默认为spring.log
#logging.file=myapp.log

这些参数配置不一定要写在application.properties里面,可以在application.properties里面配置指定自定义配置文件名称和位置:(但是无论怎么配置,spring-boot都会读取加载application.properties文件)

二、自定义配置

系统相关的配置,我们一般放在application.properties中,但是其他的和业务相关的配置怎么定义呢,下面就来介绍下如何自定义配置:

1、增加自定义的resource.properties 文件

com.weiz.resource.name=weiz
com.weiz.resource.website=www.weiz.com
com.weiz.resource.language=java

2、增加Resource.java 类

package com.weiz.pojo;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource; @Configuration
@ConfigurationProperties(prefix = "com.weiz.resource")
@PropertySource(value = "classpath:resource.properties")
public class Resource {
private String name;
private String website;
private String language; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getWebsite() {
return website;
} public void setWebsite(String website) {
this.website = website;
} public String getLanguage() {
return language;
} public void setLanguage(String language) {
this.language = language;
}
}

@ConfigurationProperties 配置的属性,prefix定义这些属性的前缀。

@PropertySource 资源配置文件的地址。

3、调用

    @Autowired
private Resource resource; @RequestMapping("/index")
public String index(ModelMap map) {
map.addAttribute("name", resource.getName());
return "freemarker/index";
}

最后

以上,就把Spring Boot如何资源文件属性配置介绍完了。

这个系列课程的完整源码,也会提供给大家。大家关注我的微信公众号(架构师精进),回复:springboot源码 获取这个系列课程的完整源码。

SpringBoot入门系列(三)资源文件属性配置的更多相关文章

  1. SpringBoot入门篇--读取资源文件配置

    在项目的开发中,我们知道的是SpringBoot框架大大减少了我们的配置文件,但是还是留下了一个application.properties文件让我们可以进行一些配置.当然这些配置必然是包括服务器的配 ...

  2. SpringBoot入门(三)——入口类解析

    本文来自网易云社区 上一篇介绍了起步依赖,这篇我们先来看下SpringBoot项目是如何启动的. 入口类 再次观察工程的Maven配置文件,可以看到工程的默认打包方式是jar格式的. <pack ...

  3. mybatis入门系列三之类型转换器

    mybatis入门系列三之类型转换器 类型转换器介绍 mybatis作为一个ORM框架,要求java中的对象与数据库中的表记录应该对应 因此java类名-数据库表名,java类属性名-数据库表字段名, ...

  4. SpringBoot入门(五)——自定义配置

    本文来自网易云社区 大部分比萨店也提供某种形式的自动配置.你可以点荤比萨.素比萨.香辣意大利比萨,或者是自动配置比萨中的极品--至尊比萨.在下单时,你并没有指定具体的辅料,你所点的比萨种类决定了所用的 ...

  5. SpringBoot入门(四)——自动配置

    本文来自网易云社区 SpringBoot之所以能够快速构建项目,得益于它的2个新特性,一个是起步依赖前面已经介绍过,另外一个则是自动配置.起步依赖用于降低项目依赖的复杂度,自动配置负责减少人工配置的工 ...

  6. SpringBoot入门系列(十二)统一日志收集

    前面介绍了Spring Boot 异常处理,不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html. 今 ...

  7. SpringBoot入门系列(转)

    SpringBoot入门系列:第一篇 Hello World http://blog.csdn.net/lxhjh/article/details/51711148

  8. C# 互操作性入门系列(三):平台调用中的数据封送处理

    好文章搬用工模式启动ing ..... { 文章中已经包含了原文链接 就不再次粘贴了 言明 改文章是一个系列,但只收录了2篇,原因是 够用了 } --------------------------- ...

  9. SpringBoot入门系列(十一)统一异常处理的实现

    前面介绍了Spring Boot 如何整合定时任务已经Spring Boot 如何创建异步任务和定时任务.不清楚的朋友可以看看之前的文章:<Spring Boot 入门系列文章> 接下来主 ...

随机推荐

  1. Work Scheduling(带反悔的贪心)

    https://www.luogu.org/problem/P2949 题目描述 Farmer John has so very many jobs to do! In order to run th ...

  2. c/c++[001]:start

    作为一个学校课程跳过c语言的萌新,这次重新学习c/c++从源头上明白这两种不同的输入输出还是很有必要 scanf()是C语言中的一个输入函数.与printf函数一样,都被声明在头文件stdio.h里, ...

  3. RHEL安装rails后启动报错

    [root@redhat7 demo]# rails server/usr/local/rvm/gems/ruby-2.4.1/gems/bundler-1.16.0.pre.2/lib/bundle ...

  4. day37-进程-锁和信号量

    #1.锁:房间的门上有一把锁,锁上有一把钥匙,一个人使用这把钥匙开锁之后,带上钥匙进入房间,把门给反锁了,他在房间干活, # 只要他不出来还锁,别人是无法进入房间的.同时只能有一个人在房间里干活.效率 ...

  5. Mock测试,何去何从

    2016-10-24   出处:Qtest之道  作/译者:闫耀珍   上面的情景是不是似曾相识呢?现今的业务系统已经很少是孤立存在的了,尤其对于一个大公司而言,各个部门之间的配合非常密切,我们或多或 ...

  6. WebElement--定位经验

    通常,我们这页面中定位一个元素,如果HTML中明明有却定位不到,我们一定会从这两个方面考虑. 第一:是不是页面中有多个iframe/frame结构,很多情况下我们需要通过切换iframe/frame结 ...

  7. Contiguous Repainting

    题目描述 There are N squares aligned in a row. The i-th square from the left contains an integer ai. Ini ...

  8. RELAX NG

    RELAX NG (读作"relaxing"), 是一种基于语法的XML模式语言,可用于描述.定义和限制XML词汇表. 最初的XML模式语言是DTD,但是因为DTD语法丑陋, 表达 ...

  9. ZooTracer:打破传统追踪软件的束缚

    编者按:自今年2月24日起,用户可以免费从官网下载Zootracer试用.这是由来自微软剑桥研究院的Joppa和他的同事研发的桌面工具,可追踪任意画质的视频中任意移动物体行踪,是对对视频画质拍摄要求高 ...

  10. linux系统开机静态分配ip地址

    在/etc/sysconfig/network-scripts/ifcfg-eth0文件中 添加: IPADDR=192.168.1.100(设置静态地址) NETMASK=255.255.255.0 ...