`
newslxw
  • 浏览: 212773 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

spring javamail使用

阅读更多
spring提供了java mail插件,很方便发送邮件。
1、spring配置文件增加如下配置
<bean id="mimeMessage" class="javax.mail.internet.MimeMessage" factory-bean="javaMailSender"  
	    factory-method="createMimeMessage" /> 


	<bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">   
	    <property name="host" value="邮件服务器地址" />   
	    <property name="username" value="邮箱帐号(不是邮箱名称)" />   
	    <property name="password" value="密码" />   
	    <property name="javaMailProperties">   
	        <props>   
	            <prop key="mail.smtp.auth">true</prop>   
	            <prop key="mail.smtp.timeout">25000</prop>   
	            <!-- <prop key="mail.smtp.port">25</prop>   
	            <prop key="mail.smtp.socketFactory.port">25</prop>   
	            <prop key="mail.smtp.socketFactory.fallback">false</prop>   
	            <prop key="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop>
	            -->   
	        </props>   
	    </property>   
	</bean>  

	<bean id="sendMail" class="com.mindray.protal.common.SendMail">
		<property name="mailSender" ref="javaMailSender" /> 
		<property name="mimeMessage" ref="mimeMessage" /> 
	</bean>  





java代码


public class SendMail {

	private JavaMailSender mailSender;   
	private MimeMessage    mimeMessage; 
	private static Logger logger = Logger.getLogger(SendMail.class);
	
	public JavaMailSender getMailSender() {
		return mailSender;
	}

	public void setMailSender(JavaMailSender mailSender) {
		this.mailSender = mailSender;
	}


	public MimeMessage getMimeMessage() {
		return mimeMessage;
	}


	public void setMimeMessage(MimeMessage mimeMessage) {
		this.mimeMessage = mimeMessage;
	}

		  
	  
	/**   
	 * 带附件的HTML格式邮件   
	 * @throws Exception 
	 * @throws MessagingException    
	 * @throws IOException 
	 * @throws IllegalStateException 
	 */   
	public void sendAttachMail(MailBean mail) throws Exception  {   
		String failMail = "";
		try
	    {
			MimeMessageHelper messageHelper = new MimeMessageHelper(this.mimeMessage, true, "UTF-8"); 
			String mailTos[] = mail.getTo().split(";");
			messageHelper.setFrom(mail.getFrom());   
			messageHelper.setSubject(mail.getTitle());   
			messageHelper.setText(mail.getContent(), true);        
			ByteArrayResource ir = new ByteArrayResource(mail.getBytes());
			String filename = MimeUtility.encodeWord(mail.getFilename(),   "UTF-8",   null); 
			messageHelper.addAttachment(filename, ir); 
			for(int i=0; i<mailTos.length ;i++)
			{
				failMail = mailTos[i];
				messageHelper.setTo(mailTos[i]);
				this.mailSender.send(this.mimeMessage);
				logger.info("send mail ok=" + mailTos[i]);
				failMail = "";
			}
	    }
		catch(Exception e)
		{			
		    logger.error(e);
		    if(!"".equals(failMail))
		    {
		    	throw new Exception(e);
		    }
		    else
		    {
		    	throw e;
		    }
		 }
	}
	

}
分享到:
评论

相关推荐

    Spring javaMail发送文本邮件实例

    导入到Myeclipse 即可运行 测试使用的是QQ邮箱 在application.xml中配置的发送邮箱 要到邮箱中设置 POP3/SMTP服务为开。项目不部署到tomcat后启动服务,然后运行test.java 就发送了,。绝对可以发送

    Spring实现JavaMail邮件发送功能

    而Spring框架通过提供`JavaMailSender`接口,将JavaMail与Spring的IoC(Inversion of Control)容器集成,简化了邮件服务的配置和使用。 1. **配置JavaMailSender** 在Spring中,我们需要配置`JavaMailSender`实例...

    spring javamail 来发送动态生成的3D图象.doc

    在本文中,我们将探讨如何使用Spring和JavaMail发送动态生成的3D图像,特别是针对Web应用环境。在处理高流量的Web应用时,我们需要避免在服务器上存储大量的3D图像,以节省存储空间。这里的关键是利用JavaMail的特性...

    spring结合javamail开发文档

    在实际的应用场景中,使用Spring结合JavaMail发送邮件时需要注意以下几点: 1. **配置安全性**: - 确保邮件服务器的连接使用安全协议,如使用SMTPS代替SMTP。 2. **处理失败情况**: - 在发送邮件失败时,记录...

    Spring整合JavaMail发送qq邮件

    当我们需要在Spring应用中实现邮件发送功能时,通常会整合Spring与JavaMail。下面将详细讲解如何利用Spring整合JavaMail发送QQ邮件。 首先,我们需要在项目中引入JavaMail的相关依赖。在Maven项目中,可以在pom.xml...

    SpringUseJavaMailSendEmail(spring使用javamail发送邮件的例子)

    本示例将详细解释如何在Spring框架中结合JavaMail API来发送电子邮件。 首先,我们需要理解Spring框架中的邮件服务抽象。Spring提供了一个`JavaMailSender`接口,该接口定义了发送邮件的基本方法。我们可以通过配置...

    spring+javamail代码示例

    在IT行业中,Spring框架是Java应用开发的基石,它提供了丰富的功能来简化应用程序的构建,而JavaMail API则是一个用于处理电子邮件的库。本示例将深入探讨如何结合Spring框架和JavaMail API来发送电子邮件,这在许多...

    在spring利用javamail,quartz定时发送邮件

    通过上述步骤,我们不仅了解了如何在Spring环境中结合JavaMail和Quartz实现定时邮件发送,而且还深入探索了Spring框架如何简化JavaMail API的使用,以及Quartz如何提供灵活的定时任务调度能力。这种技术组合为Web...

    struts2+spring3.0+mybatis3.0.4集成的邮件发送实例(可上传附件)

    Struts2、Spring3.0和Mybatis3.0.4是Java开发中常见的三大框架,它们各自在应用程序的不同层面提供了强大的支持。本实例将详细讲解如何在这三个框架基础上实现一个邮件发送功能,同时支持附件上传。对于Java开发者来...

    javamail+spring

    JavaMail主要用于处理电子邮件的发送和接收,而Spring则是一个广泛使用的框架,它提供了依赖注入、面向切面编程、数据访问、事务管理等多种功能。将JavaMail集成到Spring中,可以方便地在应用中实现邮件服务,比如...

    JavaMail 使用163发邮件

    在提供的压缩包文件"Spring08JavaMail"中,可能包含了使用Spring集成JavaMail的示例代码,你可以参考学习如何在Spring应用中配置和使用JavaMailSender。 总结起来,JavaMail是一个功能丰富的库,用于在Java应用程序...

    spring+quartz+javamail定时发送邮件

    本项目“spring+quartz+javamail定时发送邮件”结合了Spring框架、Quartz调度器以及JavaMail API,构建了一个能够定时发送邮件的系统。以下将详细介绍这三个关键组件及其整合方式。 首先,Spring框架是一个广泛使用...

    JavaMail实现源代码和jar包

    通常,此类会提供一个方法,比如 `sendMail()`,接收必要的参数(如发件人、收件人、主题和正文),并使用 JavaMail API 发送邮件。它可能还包含了设置邮件属性,如是否需要抄送、密送,以及添加附件的功能。 3. **...

    JavaMail完全实现

    在结合Spring框架时,JavaMail的使用变得更加灵活和高效。 在“JavaMail完全实现”项目中,开发者提供了一个完整的解决方案,该方案整合了Spring框架和Jmail库,使得邮件服务的配置和使用变得简单易行。Jmail是一个...

    Spring 3.x企业应用开发实战 附录 A - JavaMail 发送邮件

    ### Spring 3.x企业应用开发实战之JavaMail发送邮件知识点详解 #### 一、JavaMail基础知识的快速学习 ##### 1.1 JavaMail概述 JavaMail是Java领域中最为知名的邮件解决方案之一,由Sun Microsystems(现已被...

    JavaMail基础教程(API)

    这个基础教程将引导你逐步了解如何使用JavaMail API进行邮件操作。 1. **JavaMail简介** JavaMail API是Java平台上处理邮件的核心库,它包含了多个接口和类,如`Session`, `Message`, `Multipart`和`Address`等,...

    javamail-1.4.4.jar包

    1. **SMTP(Simple Mail Transfer Protocol)支持**:JavaMail 使用SMTP协议来发送邮件,这是互联网上最常用的邮件传输协议。 2. **POP3(Post Office Protocol version 3)和IMAP4(Internet Message Access ...

    javaMail1.4.3 API文档和源代码

    - Spring Framework 提供了对 JavaMail 的支持,可以在 Spring 应用中方便地配置和使用 JavaMail。 - Maven 或 Gradle 可以作为构建工具,管理 JavaMail 的依赖库。 总的来说,JavaMail 1.4.3 API 文档和源代码是...

    javamail-jar包.zip

    在实际应用中,JavaMail 还可以与其他库结合使用,如 Apache Commons Net 提供了更底层的 SMTP 支持,或者使用 JSF、Spring 等框架集成邮件服务。 总的来说,`javamail-jar包.zip` 提供的 JavaMail 库对于任何需要...

Global site tag (gtag.js) - Google Analytics