spring集成freemaker 制作短信模板

1、配置configure的Bean,Bean中指定了模板文件的路径和刷新时间等配置。

    <!-- 配置freeMarkerConfigurer进行属性值的注入 -->
    <bean id="freeMarkerConfigurer"
        class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
        <property name="templateLoaderPaths"
            value="classpath:SMSTemplate" />
        <property name="freemarkerSettings">
            <props>
                <prop key="template_update_delay">1800</prop><!-- 模板更新延时 -->
                <prop key="default_encoding">UTF-8</prop>
                <prop key="locale">zh_CN</prop>
            </props>
        </property>  

    </bean>

2、定义模板文件。

<#compress>
实时气象信息:风向为在${weatherInfo.windDir!},<#rt>
${weatherInfo.windPower!}。<#rt>
今日${weatherInfo.stateDetailed!},<#rt>
最高温度${weatherInfo.tem1!}<#rt>
。<#rt>
</#compress>

3、模板+数据=实际需要的内容

@Component
public class FreeMarkService {

	private Log logger = LogFactory.getLog(FreeMarkService.class);
	@Autowired
	private FreeMarkerConfigurer freeMarkerConfigurer;

	/**
	 * 传入weatherInfo得到天气短信的模板
	 * @param weatherInfo
	 * @return
	 */
	public String generateSmsByWeatherInfo(WeatherInfo weatherInfo) {

		String retSmsContent = "";
		Template tpl = null;
		try {
			Map<String, Object> root = new HashMap<String, Object>();
			root.put("weatherInfo", weatherInfo);
			tpl = freeMarkerConfigurer.getConfiguration().getTemplate("weather.ftl");
			retSmsContent = FreeMarkerTemplateUtils.processTemplateIntoString(tpl, root);
		} catch (Exception e) {
			// TODO: handle exception
			logger.error("生成天气短信内容错误。"+e.getMessage());
		}
		return retSmsContent;
	}

}

  

  

  

时间: 2024-10-29 03:39:38

spring集成freemaker 制作短信模板的相关文章

[TPYBoard - Micropython] 五分种学会用TPYBoard - GPS 制作短信群发机

转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.什么是TPYBoard-GPS TPYBoard-GPS又称TPYBoard V702,是目前市面上唯一支持通信定位功能的MicroPython开发板:支持Python3.0及以上版本直接运行.支持GPS+北斗双模定位.GPRS通信.短信功能.电话功能:板载温湿度.光敏.三轴加速度传感器.蜂鸣器.LCD5110显示屏.免费提供定位测试服务平台.实物如下图: 二.利用TPYB

java正则表达式解析短信模板

/** * */ package testJava.java; import java.util.HashMap; import java.util.Map; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author xxx.sjtu * @function * @date 2016年4月12日 * @version */ public class

JavaScript实现自定义短信模板

自定义短信模板,要求:可以插入关键字,当然是可以在点击到文本域中的任意位置,关键字以中括号包裹的形式出现[关键字],删除关键字要整个关键都删掉,而不是自己全删除. 详细在简书中 http://www.jianshu.com/p/dbc4ac17ba4c 也可以直接上github拉代码示例,也有详细注释 https://github.com/Stevenzwzhai/plugs/tree/master/%E8%87%AA%E5%AE%9A%E4%B9%89%E6%A8%A1%E6%9D%BF-te

事务:从短信平台插入短信模板与从运营平台插入短信模板

step1:运营平台插入一条短信模板 step2:短信平台插入一条短信模板 注意:分别向两个系统中插入短信模板的记录是相同的. 不管是先进行step1然后通知step2,还是先进行step2再进行step1,都有可能出现某一个step失败(如果都失败或者都成功就数据一致了): 当某一个step失败后,这两个系统某一个中有一条该短信模板的记录,而另一个则没有:两个系统之间的数据就无法保证一致性了,有点分布式事务的感觉. 就算在运营平台添加模板的方法进行事务管理(如使用@transactional注

Spring Security 解析(四) ——短信登录开发

Spring Security 解析(四) -- 短信登录开发 ??在学习Spring Cloud 时,遇到了授权服务oauth 相关内容时,总是一知半解,因此决定先把Spring Security .Spring Security Oauth2 等权限.认证相关的内容.原理及设计学习并整理一遍.本系列文章就是在学习的过程中加强印象和理解所撰写的,如有侵权请告知. 项目环境: JDK1.8 Spring boot 2.x Spring Security 5.x 一.如何在Security的基础上

Zabbix集成OneAlert实现短信、邮件、微信、电话、App告警

1.下载agent软件包 请在Zabbix服务器中,使用root或zabbix用户下载软件.下载agent 2.添加应用 创建Zabbix应用,并获取appkey,见下图04b9832b-14b4-4c61-343d-5926ff8af672 3.安装Agent 将agent更新到zabbix的外部告警脚本目录alertscripts,如果是源码安装的请自行更改目录. tar xvf alert-agent-4.0.1-RC2.tar.gzcp -R alert-agent /usr/lib/z

thinkphp集成系列之短信验证码、订单通知

现在这个短信通知泛滥的年代:应用如果没有个短信注册:你都不敢说你是搞开发的: 这个验证码搞起来是不难的:但是如果刚接触也是有点不知从哪下手的迷茫: 先讲下概念: 要想发送验证码:需要至少三项:appid.key.模板id: appid.和key比如较容易理解:各种第三方平台都会提供的:可能叫法不一样: 模板id就是指的短信的内容:例如[淘宝]验证码是192612,请您在5分钟内输入: 这就是一个模板:我们发短信的时候只能改变192612.和5这两个数字:其他是固定的: 因为政策的问题:模板需要申

阿里云 短信消息api 示例 (附:阿里云控制台的消息服务,集成到codeigniter )

<?php require_once(dirname(dirname(dirname(__FILE__))).'/act/alisms/mns-autoloader.php'); use AliyunMNS\Client; use AliyunMNS\Topic; use AliyunMNS\Constants; use AliyunMNS\Model\MailAttributes; use AliyunMNS\Model\SmsAttributes; use AliyunMNS\Model\B

4、ABPZero系列教程之拼多多卖家工具 集成短信发送模块

ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板,如下图所示 最后需要使用阿里云提供的.NET发送短信类库,下面可以直接下载我上传的类库,也可以去官方下载,然后提取我所说的2个类库(aliyun-net-sdk-core.dll.aliyun-net-sdk-dysmsapi.dll) 直接下载文件:https://files.cnblogs.co