springboot中自定义属性配置

springboot的自动配置:
一般都有一个java类作为配置文件类,用@Configuration注解标识
一个配置属性文件,用@ConfigurationProperties标识
除了springboot的自动配置,开发者还可以自定定义配置文件
1、用@ConfigurationProperties注解定义属性配置文件
package com.web.auction.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component //将该配置文件交由spring容器托管
@ConfigurationProperties(prefix="file")  //声明前缀即声明在“xxx.yml文件中命名空间”
public class FileConfigurationProperties {
	//这里的属性与yml中声明的属性对应
	private String staticAccessPath;
	private String uploadFileFolder;
	
	public String getStaticAccessPath() {
		return staticAccessPath;
	}
	public void setStaticAccessPath(String staticAccessPath) {
		this.staticAccessPath = staticAccessPath;
	}
	public String getUploadFileFolder() {
		return uploadFileFolder;
	}
	public void setUploadFileFolder(String uploadFileFolder) {
		this.uploadFileFolder = uploadFileFolder;
	}
	
	
	
}

2、application.yml中声明属性的值

@ConfigurationProperties(prefix=“file”)声明前缀后,可以在yml文件中用该前缀给属性赋值

file:
  staticAccessPath: '/upload/**' 
  uploadFileFolder: 'D:\\file'
3、将属性配置文件注入配置文件中

配置文件用@Configuration注解标识

package com.web.auction.config;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

import com.web.auction.interceptor.CheckUserInterceptor;

@Configuration
public class WebMvcConfiguration extends WebMvcConfigurerAdapter {

	@Autowired
	private FileConfigurationProperties fileConfigurationProperties;
	
	@Override //添加路径注册,配置本地路径和url路径的映射
	public void addResourceHandlers(ResourceHandlerRegistry registry) {
		//映射本地路径和http路径
		//addResourceHandler("/upload/**") http路径:http://localhost:8080/upload/xxx.jpg
		//addResourceLocations("file:D://file/")  本地路径:D://file/xxx.jpg
		//registry.addResourceHandler("/upload/**").addResourceLocations("file:D://file/");
			
		registry.addResourceHandler(fileConfigurationProperties.getStaticAccessPath())
				.addResourceLocations("file:"+ fileConfigurationProperties.getUploadFileFolder() + "/");
		
	}
	
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值