- 浏览: 223159 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
wsj0051:
很好,一致纠结图片路径问题
Spring 发送普通邮件、夹带附件的邮件、嵌入网页或图片的邮件 使用方法 -
ejinxian:
值得学习,
ExtJS+FusionCharts(转) -
niewj:
不知道都是哪里来的。
111
在项目应用中,时常存在发送邮件的业务需求。比如:用户注册时的邮件确认;系统出错时的邮件提醒;用户系统邮件订阅;系统的广告邮件定时推广等等。本文根据spring开发文档,列举普通文件邮件,夹带附件的邮件、嵌入图片的邮件三种形式的邮件的使用方式。
实现过程中定义BaseMailDefined类,用于描述邮件发送过程中需要的参数:发送者、接受者、邮件标题、邮件文本内容。
定义MailSenderFactory类,用于对普通文件邮件,夹带附件的邮件、嵌入图片的邮件三种形式的邮件的发送。其中JavaMailSender 采用spring注入的其实现类org.springframework.mail.javamail.JavaMailSenderImpl。
实现过程中定义BaseMailDefined类,用于描述邮件发送过程中需要的参数:发送者、接受者、邮件标题、邮件文本内容。
定义MailSenderFactory类,用于对普通文件邮件,夹带附件的邮件、嵌入图片的邮件三种形式的邮件的发送。其中JavaMailSender 采用spring注入的其实现类org.springframework.mail.javamail.JavaMailSenderImpl。
public class MailSenderFactory { private JavaMailSender javaMailSender; public void setJavaMailSender(JavaMailSender javaMailSender) { this.javaMailSender = javaMailSender; } /** * 简单邮件发送 * @param bmd */ public void senderSimpleMail(BaseMailDefined bmd){ SimpleMailMessage msg = new SimpleMailMessage(); msg.setFrom(bmd.getFrom()); msg.setText(bmd.getText()); msg.setTo(bmd.getTo()); msg.setSubject(bmd.getSubject()); javaMailSender.send(msg); } /** * 发送添加附件的邮件 * @param bmd * @throws MessagingException */ public void senderMimeMail(BaseMailDefined bmd) throws MessagingException{ MimeMessage msg = javaMailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(msg, true); helper.setTo(bmd.getTo()); helper.setText(bmd.getText()); helper.setFrom(bmd.getFrom()); helper.setSubject(bmd.getSubject()); helper.setSentDate(new Date()); //夹带附件 FileSystemResource file = new FileSystemResource(new File("E:/task/ip2.rar")); helper.addAttachment("ip2.rar", file); javaMailSender.send(msg); } /** * 发送内嵌图片或html的邮件 * @param bmd * @throws MessagingException */ public void senderHtmlMail(BaseMailDefined bmd) throws MessagingException{ MimeMessage msg = javaMailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(msg, true); helper.setTo(bmd.getTo()); helper.setText(bmd.getText()); helper.setFrom(bmd.getFrom()); helper.setSubject(bmd.getSubject()); helper.setSentDate(new Date()); //内嵌式图片或html样式 helper.setText("<html><body><img src='cid:identifier1235'></body></html>", true); FileSystemResource res = new FileSystemResource(new File("E:/task/ip2.png")); helper.addInline("identifier1235", res); javaMailSender.send(msg); } } public class BaseMailDefined { protected String to; protected String from; protected String subject; protected String text; public String getText() { return text; } public String getTo() { return to; } public String getFrom() { return from; } public String getSubject() { return subject; } public void setText(String text) { this.text = text; } public void setTo(String to) { this.to = to; } public void setFrom(String from) { this.from = from; } public void setSubject(String subject) { this.subject = subject; } } 测试方法: public static void main(String[] args) throws Exception { ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext( new String[] { "ApplicationContext.xml" }); MailSenderFactory factory = (MailSenderFactory) ctx.getBean("mailFactory"); BaseMailDefined bmd = (BaseMailDefined) ctx.getBean("baseMail"); factory.senderSimpleMail(bmd); factory.senderMimeMail(bmd); factory.senderHtmlMail(bmd); } XML配置: <bean id="sender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property name="host"> <value>smtp.sina.com</value> </property> <property name="username"> <value>handouName</value> </property> <property name="password"> <value>handouPassword</value> </property> <property name="javaMailProperties"> <props> <prop key="mail.smtp.auth">true</prop> </props> </property> </bean> <bean id="mailFactory" class="com.handou.mail.MailSenderFactory"> <property name="javaMailSender"> <ref bean="sender" /> </property> </bean> <bean id="baseMail" class="com.handou.mail.BaseMailDefined"> <property name="to"> <value>handouName@sina.com</value> </property> <property name="from"> <value>handouName@sina.com</value> </property> <property name="subject"> <value>test</value> </property> <property name="text"> <value>this is a test mail !!</value> </property> </bean>
发表评论
-
maven 使用jetty:run 修改js无法保存解决方案
2014-08-26 13:35 0方式1:直接在项目的WEB.xml中加入代码: < ... -
java 操作date
2014-05-06 14:03 674/** 日期类 * @date * @vers ... -
Eclipse 配置MAVEN插件
2014-01-25 09:50 7221.首先去下载Maven插件 http://maven.apa ... -
Tomcat启动过程中找不到JAVA_HOME解决方法
2014-01-23 16:42 1360在WIN 7上明明已经安装了JDK1.5并设置好了JAVA_H ... -
Java操作XML
2013-05-28 09:49 38521. 介绍 1)DOM(JAXP Crimson解 ... -
ORACLE 查看某个表的主外键关系
2013-04-26 14:55 1040SELECT USER_CONS_COLUMNS.CO ... -
Eclipse 生成hibernate配置文件
2013-03-15 13:59 962附件的图片是hibernate生成配置文件的操作,很简单的! ... -
JSONException:java.lang.reflect.InvocationTargetException异常处理
2012-11-19 14:38 1451由于我使用Spring对项目进行重构,由Spring容器来管理 ... -
Maven项目中Pom文件备份
2012-07-11 15:55 1072<project xmlns="http: ... -
Maven创建Java工程
2012-07-11 15:46 847前提:首先在Eclipse中添加了Maven的插件。 然后, ... -
Java 日期操作 DateUtils
2012-06-04 10:46 1423Java中对日期操作 //1.获得当前日期中的月头月末时间 ... -
远程桌面连接数超过最大连接数
2012-01-13 10:37 934当出现超过最大连接数的情况的时候,远程根本都无法登陆进去,很有 ... -
Windows 下自动重启TOMCAT
2011-10-28 11:02 3937windows下自动启动Tomcat 直接在windows ... -
Spring Security-3.0.1 相关文档
2011-10-17 14:33 905http://wenku.baidu.com/view/b0c ... -
apache2.2 和Tomcat整合
2011-10-14 09:55 19081.下载Apache Http Server 2.2 ... -
apache server and tomcat
2011-09-26 13:45 0http://www.blogjava.net/obpm/ar ... -
Unable to compile class for JSP
2011-09-20 15:11 1412type Exception report messag ... -
maven 添加ojdbc14
2011-09-14 19:20 1543今天下午,我使用maven,怎么都不能下载ojdbc的jar包 ... -
SVN Working Copy xxx locked
2011-09-07 08:34 1056SVN Working Copy xxx locked 并 c ... -
Apache Http Server 设置向导
2011-07-11 10:42 24731.下载http Server 并安装 本文档描述了如何在Wi ...
相关推荐
spring boot发送普通文本邮件/HTML邮件/附件邮件/图片邮件完整代码.zip
使用Spring Boot 开发支持多附件邮件发送微服务平台代码
我们封装一个 MailService 类来实现普通的邮件发送方法。 Spring Boot整合邮件发送并保存历史发送邮箱 from,即为邮件发送者; to,邮件接收者; subject,邮件主题; content,邮件的主体。 邮件发送者 from ...
java 发送邮件 spring发送邮件Mail
Spring实现各种邮件的发送 简单配置就可发送邮件
利用spring下的一个类进行邮件发送,内附具体用法
本例为完整的采用spring 发送带 附件的邮件。 下载后需要改动的地方: 1.在mail.properties中将接收者邮箱地址(username),邮箱密码换成真实的。 2.在SpringJavaMailDemo类中把发送者和接收者邮箱地址换成真实地址...
Spring整合Quartz定时发送邮件
NULL 博文链接:https://chaoyi.iteye.com/blog/2171158
Spring 封装的JavaMail,使邮件发送变的相当简单,我通过Spring的邮件发送实现了发纯文本形的内容,HTMl,带附件,带图片等示例代码,并自行测试过.希望对初学者有帮助
Spring邮件发送服务(java邮件发送),支持多附件、多人发送/抄送/暗送
用spring实现了定时发送邮件,无需复杂的代码
Spring mail发送邮件实例 Spring mail发送邮件实例
基于spring mvc 框架,用freemarker创建邮件模板,包括详细邮件发送功能的spring配置和实现代码
今天小编就为大家分享一篇关于spring boot定时任务接收邮件并且存储附件的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
它包括了发送电子邮件的主要接口MailSender,和值对象SimpleMailMessage,它封装了简单邮件的属性如from, to,cc, subject,text。 包里还包含一棵以MailException为根的checked Exception继承树,它们提供了对底层...
数据库:sqlserver CreateHtmlTable中的生成路径和SendService中的上传路径改成自己的
使用Spring mail发送邮件的完整实例,包含代码与Spring mail的jar,可直接运行与使用。相关学习文档参考博客《Spring Mail邮件发送 http://blog.csdn.net/chenxiang0207/article/details/8256528》。
pdf介绍spring-boot-邮件发送。 Spring Boot通过集成spring-boot-starter-mail依赖和相关配置,可以方便地实现邮件发送功能。具体的步骤: 添加依赖:在Spring Boot项目的pom.xml文件中加入spring-boot-starter-mail...
用spring发送邮件,该功能在一般系统监控中经常用到。