Springboot读取配置文件及自定义配置文件

前言------为什么要有配置文件?

尽量不要将文件上传的路径以及经常需要修改的地方放到程序代码里面,因为如果上传路径以及相关的配置被修改的话,你就需要改写程序代码并重新编译,这在项目发布中是特别麻烦的。所以将相关的配置定义在属性配置文件中成为了一种很好的解决方式。

怎么去使用springboot的配置文件以及注入配置文件中的值?

首先进入springboot的application.properties配置文件中

定义好我们相关的配置的名称以及值

# tomcat\u7684URI\u7f16\u7801
server.tomcat.uri-encoding=UTF-8
#打印sql语句
logging.level.com.imooc.mapper=debug
#尽量把自己的配置定义在配置文件里 方便程序的修改 
#定义自己的文件上传路径
web.upload.path=D://show_videos_dev
#定义音视频合成工具的路径
ffmepg.path=D:\\ffmpeg\\ffmepg\\bin\\ffmpeg.exe
#启动动态发布必须定义的mapping 映射
classpath_mapping=classpath:/META-INF/resources/
url_mapping=file:D:/show_videos_dev/
#定义小程序返回的几个视图
page_size=5
/**
 * 
 * @author 2016wlw2 徐塬峰 创建时间:2018年6月28日 下午12:07:38
 */
@RestController
@Api(value = "视频相关的业务数据接口", tags = { "视频上传" })
@RequestMapping("/video")
public class VideoController extends BasicController {

	@Autowired
	private BgmService bgmService;
	@Autowired
	private VideoService videoService;
    @Value("${web.upload.path}")
    private  String  FILe_SPACE;
    @Value("${ffmepg.path}")
    private  String  FFMPEGEXE;
    @Value("${page_size}")
    private int PAGE_SIZE;
    

	@ApiOperation(value = "用户上传视频", notes = "用户上传视频接口")
	@ApiImplicitParams({
			@ApiImplicitParam(name = "id", value = "用户id", required = true, dataType = "String", paramType = "form"),
			@ApiImplicitParam(name = "userId", value = "用户id", required = true, dataType = "String", paramType = "form"),
			@ApiImplicitParam(name = "bgmId", value = "背景音乐id", required = false, dataType = "String", paramType = "form"),  可以不指定
			@ApiImplicitParam(name = "videoSeconds", value = "视频时间", required = true, dataType = "double", paramType = "form"), // 参数类型为form
			@ApiImplicitParam(name = "videoWidth", value = "视频宽度", required = true, dataType = "int", paramType = "form"),
			@ApiImplicitParam(name = "videoHeight", value = "视频高度", required = true, dataType = "int", paramType = "form"),
			@ApiImplicitParam(name = "desc", value = "视频描述", required = false, dataType = "String", paramType = "query"), // 可以不指定
			@ApiImplicitParam(name = "videoCategory", value = "视频分类", required = false, dataType = "String", paramType = "query")// 可以不指定

	})
	@PostMapping(value = "/upload", headers = "content-type=multipart/form-data")
	public XyfJsonResult uploadFace(String userId, String bgmId, double duration, int tmpWidth, int tmpHeight,
			String desc, String videoCategory, String videoFilter,
			@ApiParam(value = "短视频", required = true) MultipartFile file) {

		if (StringUtils.isBlank(userId)) {
			return XyfJsonResult.errorException("用户id不能为空...");
		}
		// 文件保存命名空间

然后在控制器将配置文件中的属性注入到变量中来。

使用@Value注解

    @Value("${web.upload.path}")
    private  String  FILe_SPACE;
    @Value("${ffmepg.path}")
    private  String  FFMPEGEXE;
    @Value("${page_size}")
    private int PAGE_SIZE;
    

如果遇到相关的问题欢迎留言,我们可以一起探讨与学习。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值