工作中经常会有一些参数需要配置,同时在代码里面需要用到,所有就需要配置类读取,然后在使用的时候注入该类进行获取相关参数。前面实现了spring boot相关的下面内容,现在就来实现一下spring boot如何读取配置文件里面的参数。参考项目地址在文末。
(2)实现启动项目时数据库表初始化,基于注解实现mybatis查询
(3)mybatis基于pagehelper插件实现分页功能
com.name=jiankang
com.phone=18438595560
com.language=java
(1)配置类需要加@Configuration注解,声明是配置类
(2)@PropertySource注解设置properities文件所在路径
(3)变量上面的@Value注解设置对应的属性变量,冒号左边是映射的属性文件中的键,冒号右边时当找不到属性值时赋默认值。
(4)配置类省略getset方法。
@Configuration
@PropertySource(value="classpath:resource.properties")
public class ResourceConfig {
@Value("${com.name:jiankang}")
private String name;
@Value("${com.phone:111}")
private String phone;
@Value("${language:python}")
private String language;
@Value("${com.address:chinese}")
private String address;
}
(1)使用@ConfigurationProperties注解,配置一下属性变量的前缀,@Value注解里面就不用写太长了。
(2)配置类省略getset方法。
@Configuration
@ConfigurationProperties(prefix = "com")
@PropertySource(value="classpath:resource.properties")
public class ResourceConfig {
@Value("${name:jiankang}")
private String name;
@Value("${phone:111}")
private String phone;
@Value("${language:python}")
private String language;
@Value("${address:chinese}")
private String address;
}
(1)通过@Autowired注入配置类
@RestController
public class HelloController {
@Autowired
private ResourceConfig resourceConfig;
@RequestMapping("/resource")
@ResponseBody
public HashMap getA()
{
HashMap map = new HashMap();
map.put("com.name", resourceConfig.getName());
map.put("com.phone", resourceConfig.getPhone());
map.put("com.language", resourceConfig.getLanguage());
map.put("com.address", resourceConfig.getAddress());
return map;
}
}
(1)结果可以看出,address配置文件里面没有该值,返回了@Value注解配置的默认值。
{
"com.language":"java",
"com.name":"jiankang",
"com.phone":"18438595560",
"com.address":"chinese"
}
以上就是实现mybatis基于pagehelper插件实现分页功能所有内容,希望能够帮到大家,可以git下载下来,参考一下,下面地址,切换到duqv-peizhi分支
https://github.com/xujiankang6/spring-boot-research.git
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有