springboot整合FreeMarker实现短信邮件等模板配置

springboot整合FreeMarker实现短信邮件等模板配置

  • pom文件引入FreeMarker
        
		
			org.springframework.boot
			spring-boot-starter-freemarker
		
  • yml进行相关的配置
 spring:
  freemarker:
    # 设置模板后缀名
    suffix: .ftl
    # 设置文档类型
    content-type: text/html
    # 设置页面编码格式
    charset: UTF-8
    # 设置页面缓存
    cache: false
    prefer-file-system-access: false
    # 设置ftl文件路径
    template-loader-path:
      - classpath:/templates
  • 编写短信模板
    在resources下创建templates如下图
    springboot整合FreeMarker实现短信邮件等模板配置_第1张图片
    在templates包下创建后缀为ftl的模板文件如下图
    springboot整合FreeMarker实现短信邮件等模板配置_第2张图片
  • 获取模板动态的填写${}里面的值转成string输出如下图
    springboot整合FreeMarker实现短信邮件等模板配置_第3张图片
    @Autowired
	private FreeMarkerConfigurer freeMarkerConfigurer;

	@Test
	public void test() throws IOException, TemplateException {
		Template template=freeMarkerConfigurer.getConfiguration().getTemplate("domeTest.ftl");
		Map model=new HashMap();
		model.put("name","张三");//键name对应domeTest.flt里面的${name}
		model.put("meetingName","党员会议");//键meetingName对应domeTest.flt里面的${meetingName}
		model.put("meetingAddress","中国");//键meetingAddress对应domeTest.flt里面的${meetingAddress}
		model.put("meetingStartTime","2020.06.16");//键meetingStartTime对应domeTest.flt里面的${meetingStartTime}
		String content= FreeMarkerTemplateUtils.processTemplateIntoString(template, model);//调用processTemplateIntoString将domeTest.ftl内容输出转成string
	}

完成

你可能感兴趣的:(后端)