国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

spring boot使用properties定義短信模板的方法教程

2024-07-13 10:16:36
字體:
來源:轉載
供稿:網友

前言

通常我們做開發時候會遇到短信發送郵件發送之類的需求,發送內容往往會由客戶提供一個模板,如果我們是在程序里拼接字符串來搞定這個模板,很明顯是一種坑隊友的做法。一般將模板放入properties文件中,使用的時候替換其中的一些變量即可。

本文我們使用springboot來實現根據模板發送短信驗證碼的功能,下面話不多說了,來一起看看詳細的介紹吧。

tips:

1、正則表達式

2、springboot讀取properties文件

模板定義

將需要定義的短信模板都定義在msg.properties文件,目錄同application.properties,注意其中的【[code]】即為要替換的變量。

tem.msg.verify.code=驗證碼為:[code],請勿泄露給其他人。

讀取properties

定義組件MSGConstants,指定需要加載的properties文件,用來讀取定義的模板,使用spring的@Value注解

@PropertySource("classpath:msg.properties")@Componentpublic class MSGConstatns { @Value("${tem.msg.verify.code}") private String sendCodeMsg; public String getSendCodeMsg() {  return sendCodeMsg; } public void setSendCodeMsg(String sendCodeMsg) {  this.sendCodeMsg = sendCodeMsg; }}

解析模板工具類

考慮到公用,將參數設置為Map,即需要替換的變量,正則表達式替換找到對應的key,我這里key的格式為:{key},可根據自己情況進行修改,同時修改正則。

 public static String getContent(Map<String, String> params,String content) {  String reg = "//{//w*}";//  Pattern pattern = Pattern.compile(reg);  Matcher matcher = pattern.matcher(content);  while (matcher.find()) {   String group = matcher.group();//   String key = group.substring(1, group.length() - 1);   if (!params.containsKey(key))    throw new NormalException("未找到需要替換的key:" + key);   content = content.replace(group, params.get(key));  }  return content; }

測試

一個很簡單的ajax請求,返回獲取到的短信內容

@RestController@RequestMapping("demo")public class DemoController { @Resource private MSGConstatns msgConstatns; @RequestMapping("msg") public String msgContent(){  String code = "123456";//正式開發中一般采用隨機數  Map<String,String> params = new HashMap<>();  params.put("code",code);  return SendCodeUtil.getContent(params,msgConstatns.getSendCodeMsg()); }}

結果

期望值:驗證碼為:123456,請勿泄露給其他人

實際效果:

spring,boot,模板,springboot,properties,短信模板

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 那坡县| 彰化县| 洪洞县| 八宿县| 清水河县| 霞浦县| 积石山| 陈巴尔虎旗| 峨山| 武川县| 龙门县| 若羌县| 德惠市| 玉树县| 通渭县| 霍城县| 岗巴县| 增城市| 武鸣县| 濉溪县| 邯郸县| 博湖县| 翼城县| 保靖县| 同仁县| 台湾省| 凉城县| 顺平县| 黑山县| 社旗县| 丹棱县| 航空| 互助| 纳雍县| 正宁县| 丰都县| 酉阳| 逊克县| 荣昌县| 永仁县| 万全县|