java创建邮件模板

    一直在整发送邮件,由于发送的邮件格式比较固定,是一个固定的表格,我就想能不能做一个邮件的模板,这样在发送邮件的时候只需要将内容填充上去,而不需要像之前一样,每次都要重新拼邮件的内容。

    下面先来看一下邮件模板,如何设置邮件模板。先添加一个配置文件mail.propertites,在该配置文件中自定义邮件的格式,下面是我定义的邮件的格式:

    mail_content=尊敬的各位管理人:<br>\
    <table align="center" border="1">  <tr><td  colspan="3" align="center"><label>运营数据</label></td></tr>\
        <tr ><td ><label>统计项</label> </td><td ><label>统计数</label></td><td ><label>统计数</label></td></tr>\
        <tr ><td >新增商户</td><td >{0}个</td><td ><label>A:{1}个 B:{2}个 C:{3}个</label></td></tr>\
        <tr ><td >总粉丝数</td><td >{4}个</td><td >最多:{5}{6}</td></tr>\
        <tr ><td >新增粉丝数</td><td >{7}人</td><td >最多:{8}</td></tr>\
        <tr ><td >访问人数</td><td >{9}人</td><td >最多:{10}</td></tr>\
        <tr ><td >访问人次</td><td >{11}人</td><td >最多:{12}</td></tr>\
        <tr ><td >活跃度</td><td >{13}人</td><td >最高:{14}</td></tr>\
        <tr ><td >流量充值(S)</td><td >{15}</td><td >{16}</td></tr>\
        <tr ><td >流量领取</td><td >{17}</td><td >{18}</td></tr>\
        <tr ><td >流量提取</td><td >{19}</td><td >{20}</td></tr>\
   </table>

     在配置文件配置好后,接下来的一步就是在后台获取到邮件格式,然后将需要的内容填充进去,咱们来看代码来分析具体怎么做。

      //绑定邮箱模板                
      ResourceBundle messages = ResourceBundle.getBundle("system");
      //获得填充的数据
      Object[] args={merchantNum,lisNum.getCountA(),lisNum.getCountB(),lisNum.getCountC(),enMember2.getSumNum(),enMember2.getAccountName(),enMember2.getMaxNum(),enMember3.getSumNum(),addFuns,enMember4.getSumNum(),addPersonCount,enMember5.getSumNum(),addCount,active,highActive,sflowAll,sflowtype,enFlowStore1.getFlowTotal(),getFlowStore,flowCharges,flowChargeGroup,flowAcct};
      //新建标准的格式
      MessageFormat formatter =new MessageFormat("");
      //获得格式转换为中文,防止中文乱码
      String mess=new String((messages.getString("mail_content_day")).getBytes("ISO-8859-1"),"utf-8");
      //从资源文件中获取相应的模板信息
      formatter.applyPattern(mess);
      //填充模板
      content=formatter.format(args);

      这样就将内容赋值到模板中,好处是如何邮箱模板更改,只需更改一下配置文件,同时将数据填充好,而不用去更改其他内容,这样也达到了复用的目的。

      接下来看一下邮件发送的效果:

      

       总结:

       这次发送邮件是一个小功能,但从小功能中也学到很多知识,邮件发送,定时器的使用,模板的使用,刚刚接触还有很多内容需要学习。 正所谓多读书才能多成长,多多读书去!

  

要画静态邮件模板,我们可以使用Java编程语言来实现。首先,我们需要创建一个Java类来表示邮件模板,并定义所需的字段和方法。 邮件模板通常包括收件人姓名、发件人姓名、日期、主题和正文等部分。我们可以在邮件模板类中定义这些字段,并提供相应的setter和getter方法,以便在需要时设置和获取这些信息。 接下来,我们可以创建一个方法来生成邮件模板的字符串表示。这个方法可以将各个字段的值按照邮件模板的格式拼接起来,最终生成一个包含完整邮件内容的字符串。 例如,我们可以创建一个名为"generateEmailTemplate"的方法,该方法接收收件人姓名、发件人姓名、主题和正文等参数,并返回一个字符串表示的邮件模板。 ```java public class EmailTemplate { private String recipientName; private String senderName; private String date; private String subject; private String body; public void setRecipientName(String recipientName) { this.recipientName = recipientName; } public void setSenderName(String senderName) { this.senderName = senderName; } public void setDate(String date) { this.date = date; } public void setSubject(String subject) { this.subject = subject; } public void setBody(String body) { this.body = body; } public String generateEmailTemplate() { return "收件人:" + recipientName + "\n" + "发件人:" + senderName + "\n" + "日期:" + date + "\n" + "主题:" + subject + "\n" + "正文:" + body + "\n"; } } ``` 使用这个邮件模板类,我们可以创建一个实例,并通过调用相应的setter方法设置字段的值。最后,我们可以调用generateEmailTemplate方法来生成邮件模板的字符串表示。 ```java EmailTemplate emailTemplate = new EmailTemplate(); emailTemplate.setRecipientName("张三"); emailTemplate.setSenderName("李四"); emailTemplate.setDate("2022-01-01"); emailTemplate.setSubject("关于会议安排的通知"); emailTemplate.setBody("大家好,我们将于下周一举行一次会议,地点在公司会议室。请大家准时参加。"); String templateString = emailTemplate.generateEmailTemplate(); System.out.println(templateString); ``` 以上代码输出的结果将是一个包含所有邮件信息的字符串模板。 这样,我们就可以使用Java来画静态邮件模板,并可以根据需要定制模板内容。
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值