久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

Springboot 讀取自定義pro文件注入static靜態(tài)變量方式

瀏覽:111日期:2023-02-24 11:58:52
Springboot 讀取pro文件注入static靜態(tài)變量

mailConfig.properties

#服務(wù)器mail.host=smtp.qq.com#端口號(hào)mail.port=587#郵箱賬號(hào)mail.userName=hzy_daybreak_lc@foxmail.com#郵箱授權(quán)碼mail.passWord=vxbkycyjkceocbdc#時(shí)間延遲mail.timeout=25000#發(fā)送人mail.emailForm=hzy_daybreak_lc@foxmail.com#發(fā)件人mail.personal=華夏衣裳#主題mail.subject=同袍用戶激活#內(nèi)容模板mail.html=您的郵箱驗(yàn)證碼為:

MailConfig.java

/* * @(#)MailConfig.java Created on 2019年9月11日 * Copyright (c) 2019 ZDSoft Networks, Inc. All rights reserved. * $Id$ */package com.hxyc.config.properties; import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.PropertySource;import org.springframework.stereotype.Component; /** * @author huangzy * @version $Revision: 1.0 $, $Date: 2019年9月11日 上午10:29:35 $ */@Configuration@PropertySource(value = 'classpath:config/mailConfig.properties', encoding = 'UTF-8')@Componentpublic class MailConfig { public static String host; public static Integer port; public static String userName; public static String passWord; public static String emailForm; public static String timeout; public static String personal; public static String html; public static String subject; /** * @return Returns the host. */ public static String getHost() {return host; } /** * @param host * The host to set. */ @Value('${mail.host}') public void setHost(String host) {MailConfig.host = host; } /** * @return Returns the port. */ public static Integer getPort() {return port; } /** * @param port * The port to set. */ @Value('${mail.port}') public void setPort(Integer port) {MailConfig.port = port; } /** * @return Returns the userName. */ public static String getUserName() {return userName; } /** * @param userName * The userName to set. */ @Value('${mail.userName}') public void setUserName(String userName) {MailConfig.userName = userName; } /** * @return Returns the passWord. */ public static String getPassWord() {return passWord; } /** * @param passWord * The passWord to set. */ @Value('${mail.passWord}') public void setPassWord(String passWord) {MailConfig.passWord = passWord; } /** * @return Returns the emailForm. */ public static String getEmailForm() {return emailForm; } /** * @param emailForm * The emailForm to set. */ @Value('${mail.emailForm}') public void setEmailForm(String emailForm) {MailConfig.emailForm = emailForm; } /** * @return Returns the timeout. */ public static String getTimeout() {return timeout; } /** * @param timeout * The timeout to set. */ @Value('${mail.timeout}') public void setTimeout(String timeout) {MailConfig.timeout = timeout; } /** * @return Returns the personal. */ public static String getPersonal() {return personal; } /** * @param personal * The personal to set. */ @Value('${mail.personal}') public void setPersonal(String personal) {MailConfig.personal = personal; } /** * @return Returns the html. */ public static String getHtml() {return html; } /** * @param html * The html to set. */ @Value('${mail.html}') public void setHtml(String html) {MailConfig.html = html; } /** * @return Returns the subject. */ public static String getSubject() {return subject; } /** * @param subject * The subject to set. */ @Value('${mail.subject}') public void setSubject(String subject) {MailConfig.subject = subject; } }springboot靜態(tài)屬性注入的解決第一種方式

通過springboot組件初始化生命周期進(jìn)行屬性(對(duì)象)賦值

@Componentpublic class DSHWechatApiUtil extends DSHBaseController { @Autowired private IThirdPartyAuthDao thirdPartyAuthDao; private static IThirdPartyAuthDao staticThirdPartyAuthDao;@PostConstruct public void init() {staticThirdPartyAuthDao = thirdPartyAuthDao; } public static JSONObject getAuthorizerToken(String componentAccessToken, String authorizerAppid, String authorizerRefreshToken) {JSONObject returnObject = new JSONObject();try { if (DSHUtils.isEmpty(componentAccessToken)) {componentAccessToken = staticThirdPartyAuthDao.selectWechatValue(DSHConstants.WECHAT_PARAMS.COMPONENT_ACCESS_TOKEN); }} catch (Exception e) { e.printStackTrace();}return returnObject; }}

可以看到,當(dāng)DSHWechatApiUtil工具類組件進(jìn)行初始化時(shí),調(diào)用@PostConstruct注解標(biāo)注的方法,對(duì)靜態(tài)變量進(jìn)行了賦值。

第二種方式

通過@Value()注解

@Value()注解不會(huì)對(duì)靜態(tài)變量進(jìn)行屬性注入,通過第一種方式的思維,那么我們肯定得想個(gè)辦法,在這個(gè)組件初始化時(shí)也來賦值。

第一種方式肯定也是可以的,先寫一個(gè)屬性,然后通過@Value()注解對(duì)這個(gè)屬性進(jìn)行賦值,最后通過@PostConstruct注解方式賦值給靜態(tài)屬性。

這里我們要采用另一個(gè)方式,這里的方式是通過set方法來賦值。屬性是static修飾的,get方法也是static修飾的,但是set方法不能是static修飾,使用@Value()注解來修飾set方法。

Springboot 讀取自定義pro文件注入static靜態(tài)變量方式

這樣就能成功注入。

第三種方式

第三種方式和第二種差不多,

@ConfigurationProperties(prefix = ProjectConfig.PROJECT_PREFIX)public class ProjectConfig { public static final String PROJECT_PREFIX = 'project'; /** * 系統(tǒng)版本號(hào) */ private String version; /** * 項(xiàng)目名稱 */ private String name; /** * 版權(quán)年份 */ private String copyrightYear; /** * 實(shí)例演示開關(guān) */ private static boolean demoEnabled; /** * 獲取地址ip開關(guān) */ private static boolean addressEnabled; public String getVersion() {return version; } public void setVersion(String version) {this.version = version; } public String getName() {return name; } public void setName(String name) {this.name = name; } public String getCopyrightYear() {return copyrightYear; } public void setCopyrightYear(String copyrightYear) {this.copyrightYear = copyrightYear; } public boolean isDemoEnabled() {return demoEnabled; } public void setDemoEnabled(boolean demoEnabled) {ProjectConfig.demoEnabled = demoEnabled; } public static boolean isAddressEnabled() {return addressEnabled; } public void setAddressEnabled(boolean addressEnabled) {ProjectConfig.addressEnabled = addressEnabled; }}

如上述代碼,只要把set方法設(shè)置為非靜態(tài),那么這個(gè)配置類的靜態(tài)屬性就能成功注入了。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 日本不卡高字幕在线2019 | 国产在线一区二区 | 久久99精品久久久久久按摩秒播 | vagaa欧洲色爽免影院 | 色婷婷久久久swag精品 | 国产精品一区二区视频 | 日韩国产精品一区二区三区 | 久久精品一区二区三区四区 | 亚洲欧美一区二区三区久久 | 欧美一级二级视频 | 久久人人av | 91久久精品日日躁夜夜躁欧美 | 国产成人久久 | 欧美精品二区中文乱码字幕高清 | 欧美精品1区2区3区 国产女无套免费网站 | 成人a视频在线观看 | 日韩精品久久久 | 仙人掌旅馆在线观看 | 国产精品视频播放 | 欧美日韩电影一区二区三区 | 国产97久久 | 亚洲精选一区二区 | 一区电影 | 欧美日韩中文在线 | 亚洲一区二区三区中文字幕 | 色视频网站在线观看 | 午夜影院普通用户体验区 | 欧美九九九 | 久久久久久久 | 999精品一区 | 亚洲精品视频播放 | 夜久久| 亚洲欧美日韩国产综合 | 久久久精彩视频 | 永久免费网站 | 免费观看一级视频 | 日韩精品视频在线 | 青青草久草在线 | 99伊人 | 久久黄视频 | 九九热在线免费视频 |