SpringBoot入门系列~SpringBoot属性配置2
1、上一章节通过@Value("${customMessager}")获取配置文件的值,但是如果一个配置文件有多个值,在赋值的代码中会显得特别臃肿,现在通过Spring中bean的模式管理可以实现
2、以发邮件为例
首先新建一个mail.properties属性配置文件,配置属性的信息
#邮件基本配置信息 mail.host=135.140.39.188 mail.port=8808 mail.smtp=false mail.from=smtp.126.com mail.username=wnst1990@126.com mail.password=*********
新建Mail的实体Bean
package com.sun.spring.boot.properties; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; /** * 邮件基本配置信息配置信息 * @ClassName: MySqlCfg * @author sunt * @date 2017年11月7日 * @version V1.0 */ @Component //@component (把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>) @ConfigurationProperties(prefix = "mail") @PropertySource("classpath:/mail.properties") //指定配置文件的位置 public class MailCfgBean { private String host; private String port; private String smtp; private String from; private String username; private String password; public String getHost() { return host; } public void setHost(String host) { this.host = host; } public String getPort() { return port; } public void setPort(String port) { this.port = port; } public String getSmtp() { return smtp; } public void setSmtp(String smtp) { this.smtp = smtp; } public String getFrom() { return from; } public void setFrom(String from) { this.from = from; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
新建Controller将Bean对象注入,获取属性配置的文件的值通过对象获取
package com.sun.spring.boot.controller; import javax.annotation.Resource; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.sun.spring.boot.properties.MailCfgBean; /** * mail控制器 * @ClassName: MailController * @author sunt * @date 2017年11月7日 * @version V1.0 */ @RestController @RequestMapping("/mail") public class MailController { //注入mail配置实体Bean @Resource private MailCfgBean mailCfgBean; @RequestMapping("/showMailInfo") public String showMailInfo() { return "host=" + mailCfgBean.getHost() + ",port=" + mailCfgBean.getPort() + "<br />,smpt=" + mailCfgBean.getSmtp() + ",from:" + mailCfgBean.getFrom() + "<br />,username=" + mailCfgBean.getUsername() + ",password=" + mailCfgBean.getPassword(); } }
浏览器访问:http://127.0.0.1:8088/SpringBootChapter1/mail/showMailInfo
最新同步更新地址:https://www.sunnyblog.top/
感谢您花时间阅读此篇文章,如果您觉得这篇文章你学到了东西也是为了犒劳下博主的码字不易不妨打赏一下吧,让博主能喝上一杯咖啡,在此谢过了!
如果您觉得阅读本文对您有帮助,请点一下左下角“推荐”按钮,您的“推荐”将是我最大的写作动力!另外您也可以选择【关注我】,可以很方便找到我!
本文版权归作者和博客园共有,来源网址:https://www.cnblogs.com/sunny1009 欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】Flutter适配HarmonyOS 5知识地图,实战解析+高频避坑指南
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步