springboot杂记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/java_collect/article/details/84704340

1. @ConfigurationProperties(key=“person”)

通过注解@ConfigurationProperties(prefix=“配置文件中的key的前缀”)可以将配置文件中的配置自动与实体进行映

application.yml配置如下:

person:
      name: zhangsan
      age: 18

实体Bean代码如下:

@Controller
@ConfigurationProperties(prefix = "person")
public class QuickStartController {
	private String name;
	
	private Integer age;
	
	@RequestMapping("/quick")
	@ResponseBody
	public String quick(){
		return "springboot 访问成功! name="+name+",age="+age;
	}
	public void setName(String name) {
		this.name = name;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
}

注意:使用@ConfigurationProperties方式可以进行配置文件与实体字段的自动映射,但需要字段必须提供set方
法才可以,而使用@Value注解修饰的字段不需要提供set方法

2. bootstramp.yml文件是什么

       其实yml和properties文件是一样的原理,主要是说明application和bootstrap的加载顺序。且一个项目上要么yml或者properties,二选一的存在。

       Bootstrap.yml(bootstrap.properties)在application.yml(application.properties)之前加载,就像application.yml一样,但是用于应用程序上下文的引导阶段。它通常用于“使用Spring Cloud Config Server时,应在bootstrap.yml中指定spring.application.name和spring.cloud.config.server.git.uri”以及一些加密/解密信息。技术上,bootstrap.yml由父Spring ApplicationContext加载。父ApplicationContext被加载到使用application.yml的之前。

       例如,当使用Spring Cloud时,通常从服务器加载“real”配置数据。为了获取URL(和其他连接配置,如密码等),您需要一个较早的“bootstrap”配置。因此,您将配置服务器属性放在bootstrap.yml中,该属性用于加载实际配置数据(通常覆盖application.yml [如果存在]中的内容)。

       当然,在一些情况上不用那么区分这两个文件,你只需要使用application文件即可,把全部选项都写在这里,效果基本是一致的,在不考虑上面的加载顺序覆盖的问题上。

3. 日期格式转换

向前段传输字段为Date类型时,我们需要指定格式,否则会发生解析错误。方式有两种:
1.在对象属性上增加 @JsonFormat(timezone = “GMT+8”,pattern = “yyyy-MM-dd”)或者@JsonFormat(shape = JsonFormat.Shape.NUMBER)转成时间戳,由前端再转换。

2.在application.yml里增加

扫描二维码关注公众号,回复: 4735671 查看本文章
优先级小于上面的注解
spring:
  jackson:
    date-format:   yyyy-MM-dd
    time-zone: GMT+8
    serialization: false  true则按时间戳形式

如果项目中继承了WebMvcConfigurationSupport,则不会生效!

4. WebMvcConfigurationSupport的大坑

https://blog.csdn.net/pinebud55/article/details/53420481

@EnableWebMvc,WebMvcConfigurationSupport,WebMvcConfigurer和WebMvcConfigurationAdapter区别

http://www.php.cn/manual/view/20262.html

猜你喜欢

转载自blog.csdn.net/java_collect/article/details/84704340