freeMarker

<bean id="freeMarkerConfigurer" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> 
   <property name="templateLoaderPath" value="classpath:com/byd/cmms/mailTpl"/><!--指定模板文件目录-->   
   <property name="freemarkerSettings"><!-- 设置FreeMarker环境属性-->   
       <props> 
           <prop key="template_update_delay">1800</prop><!--刷新模板的周期,单位为秒-->   
           <prop key="default_encoding">UTF-8</prop><!--模板的编码格式 --> 
           <prop key="locale">zh_CN</prop><!-- 本地化设置--> 
       </props> 
   </property> 
 </bean>

 

 

@Service
@Transactional
public class EmailService implements IEmailService{
 
 private Log log = LogFactory.getLog(this.getClass().getName());
   
 @Resource
 private FreeMarkerConfigurer freeMarkerConfigurer;
       
 public  String getMailText(Map map){  
         String htmlText="";  
     try { 
         //通过指定模板名获取FreeMarker模板实例  
         Template tpl=freeMarkerConfigurer.getConfiguration().getTemplate((String)map.get(IEmailService.MAIL_TPL));
         //解析模板并替换动态数据
         htmlText=FreeMarkerTemplateUtils.processTemplateIntoString(tpl,map);  
     } catch (Exception e) {  
      log.error("getMailText(map)  getTemplate  failure!", e);
     }  
     return htmlText;  
 }

 @Override
 public void mail(Map map) {
  
  String mailToAddress = (String)map.get(IEmailService.MAIL_TOADDRESS);
  String subject = (String)map.get(IEmailService.MAIL_SUBJECT);;
  String content = getMailText(map);
  MailUtils.mail(mailToAddress, subject, content);
 }

}

 

 

 


@RunWith(SpringJUnit4ClassRunner.class)  
@ContextConfiguration(locations={"classpath:applicationContext.xml"})  
public class T1ServiceTest extends AbstractTransactionalJUnit4SpringContextTests {  
 
    @Autowired    
    private IEmailService templateEmailService;     
      
      
    @Test 
    public void testGetT1() {  
      Map map =  new HashMap();
      map.put(IEmailService.MAIL_TPL, "test.tpl");
     
      map.put("username","小明");
     
      System.out.println("---------------------------------");
     
      System.out.println(templateEmailService.getMailText(map));
     
      System.out.println("---------------------------------");
     
    }  
      
 
}

 

 

spring.jar+freemarker.jar

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值