发送邮件使⽤html模板的实现的⼤致思路
客户最近有⼀个需求,⼤致的意思是提供⼀个 word⽂档,让其作为⼀个模板,在发送邮件的时候能够实现按照这个模板的样式和内容,替换其中的⼀些字段,作为邮件的内容发给收件⼈。这个需求最⼤的问题就是在于这些需要替换的变量的存储⽅式,是在数据库中存储还是在xml中存储,或者是其他的存储⽅式,我最终选择了在数据库中存储,因为这些变量基本⽐较固定,并且后期维护起来⽐较容易。下⾯是⼤致的实现的步骤
1、在数据库中新建⼀个存储附件的表MailTemplate,包含主键,模板名称,描述、模板url等字段,
2、将客户给的word转换成html格式的⽂件,记得调整html的编码格式为charset=utf-8",否则会出现乱码在html⽂件中编辑样式、变量替换标识,然后将html放置在固定的⽂件夹中,在MailTemplate表中添加⼀条记录
3、在数据库中添加变量表MailTemplate_value,包含主键、MailTemplateID,变量名称、变量值、排序值、描述等字段
4、在模板变量表中添加对应的MailTemplateID,变量名称,变量值,排序值等信息(排序值⽤来和html模板中变量的顺序保持⼀致),
5、从数据库中取对应的变量名称及对应的变量值,后台先取到html⽂件的内容,然后⽤raplace⽅法将对应的变量进⾏替换,替换后的⽂本作为⽂件的正⽂内容
6、声明发送邮件的类,将邮件所需的信息在该类中补全,然后就可以⽤上⾯提供的⽅法发送定义好的模板了
优点该思路使变量的维护⽐较简单,可以直接在前台进⾏操作,可以定义多个模板,但是对需要替换变量的顺序要求⽐较⾼,不能随意的定义变量的顺序,⽽且如果需要保留⼀个模板的历史变量的话,这种思路就⽆法满⾜了,需要额外的⼀些⼯作来满⾜这种需求。
html实现用户注册登录代码
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论