`
Java_大猫
  • 浏览: 169919 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

spring mail 例子

阅读更多
  <!-- Send Email Helper -->
  <bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    <property name="protocol" value="smtps" />
    <property name="host" value="smtp.gmail.com" />
    <property name="port" value="465" />
    <property name="username" value="xxxx@gmail.com" />
    <property name="password" value="xxxxx" />
    <property name="javaMailProperties">
      <props>
        <prop key="mail.smtps.auth">true</prop>
      </props>
    </property>
  </bean>
  <bean id="mailService" class="com.spring3.MailServiceImp">  
        <property name="javaMailSender" ref="javaMailSender"/>  
    </bean>  

<bean id="taskExecutor"
	class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
	<property name="corePoolSize" value="4" />
	<!-- 并发线程数,想达到真正的并发效果,最好对应CPU的线程数及核心数 -->
	<property name="maxPoolSize" value="10" />
	<!-- 最大线程池容量 -->
	<property name="queueCapacity" value="500" />
	<!-- 超过最大线程池容量后,允许的线程队列数 -->
</bean>





package com.spring3;
package com.spring3;

public interface MailService {
	public void sendEmail();
}




import java.io.File;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;


import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

public class MailServiceImp implements MailService {
	
	private JavaMailSenderImpl javaMailSender;
	
	public void sendEmail() {
		try {
			MimeMessage  mailMessage = javaMailSender.createMimeMessage(); 
			MimeMessageHelper mmhepler = new MimeMessageHelper(mailMessage,true,"UTF-8");
			
			mmhepler.setTo("xxx@gmail.com");  
	       
			mmhepler.setFrom("xxxx@gmail.com");
			mmhepler.setSubject("Spring Mail 测试成功!");  
			mmhepler.setText("<html><body color='red'>" +  
	                "<font size='4' color='red'> 我的邮件测试</font>" +  
	                "<a href='www.google.com'>谷歌Google</a> <img src=\"cid:aaa\"/>"+  
	                "</body></html>",true);  
			
			FileSystemResource img = new FileSystemResource(new File("E:/Test62a.jpg")); 
			
			mmhepler.addInline("aaa", img);  
			mmhepler.addAttachment("Test62a.jpg", img); 
			
			javaMailSender.send(mailMessage);  
	          
	        System.out.println("发送成功!");
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
	}

	public JavaMailSenderImpl getJavaMailSender() {
		return javaMailSender;
	}

	public void setJavaMailSender(JavaMailSenderImpl javaMailSender) {
		this.javaMailSender = javaMailSender;
	}
	@Test
	public void test(){
		String path="service-context.xml";  
        ApplicationContext factory=new ClassPathXmlApplicationContext(path);  
        MailService mailService = (MailService) factory.getBean("mailService");  
        try {  
            mailService.sendEmail();  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
	}
	
	
	
}


package com.helper;

import java.util.Map;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.io.FileSystemResource;

import com..service.CommonService;

public class SendEmailThread implements Runnable{
	private final Logger log = LoggerFactory.getLogger(SendEmailThread.class);
	private String email;
	private int templateId;
	private String title;
	private Object data ;
	private Map<String, FileSystemResource> imageMap;
	
	private CommonService commonService;
	
	@SuppressWarnings("unused")
	private SendEmailThread(){
	}
	
		
	
	public SendEmailThread(String email, int templateId, String title,
			Object data, Map<String, FileSystemResource> imageMap,CommonService commonService) {
		super();
		this.email = email;
		this.templateId = templateId;
		this.title = title;
		this.data = data;
		this.imageMap = imageMap;
		this.commonService=commonService;
	}



	public void run() {
		try {
			System.out.println("发送Email="+email+".........");
			//Thread.sleep(1000);
			commonService.sendMail(email, templateId, title, data, imageMap);
		} catch (Exception e) {
			log.error("send email "+email+" \\n error:"+e);
		}

		
	}
	
	

}


SendEmailThread sendEmailThread=new SendEmailThread(email, 1, "啊啊啊", data, null,commonService);
			taskExecutor.execute(sendEmailThread);




分享到:
评论

相关推荐

    spring mail 实例

    NULL 博文链接:https://wellfrog.iteye.com/blog/834337

    spring mail 带附件

    spring 发现邮件的例子,例子是发附件的实现,希望对你有所帮助

    spring发送邮件

    一个用spring里面的mail发送邮件的例子!

    spring整合freemarker发送邮件例子

    spring整合freemarker实现发送邮件, html中内嵌图片,添加附件, 解决乱码问题.

    开源框架 Spring Gossip

    &lt;br&gt;AOP 入门 AOP 的观念与术语都不是很直觉,可以先从代理机制(Spring 实现 AOP 的一种方式)来看看实际的例子,从而了解 AOP 的观念与各种术语。 从代理机制初探 AOP 动态代理 &lt;br&gt;AOP 观念与...

    Spring和Restful集成的小例子

    这是一个从网上下载并自己完善了一下的关于Spring和Restful集成的小例子。里面包含了两个工程,所有的包都是完整的,并经过了测试。如果有问题,请给我发E-mail,大家共同学习。如果您对我上传的代码有什么意见和建议...

    Spring邮件发送实例

    使用spring封装的JavaMail进行邮件发送的一个例子,这里我用的是Gmail邮箱,如需用其它邮箱服务器,对相应的端口,服务器地址,用户名密码做相应的修改即可

    jqueryUi+jqGrid+spring+hibernate+struts1.2+mysql 完美例子(带数据库文件)

    spring 2.0.1 ,hibernate3.0,strutd1.2,相关JAR包; 及c3p0-0.9.1.2.jar, mysql-connector-java-5.1.10-bin.jar 。 当时写的时候用的是JDK1.4,没有在JDK1.5下做测试,但在jdk1.5下应该没什么大问题,最多出现语法...

    java8集合源码分析-spring-boot-frank:SpringBoot2.0.0.R以上版本的例子,包含邮件、报表、权限、以及后台管

    mail-spring-boot-starter 自定义发送邮件的插件(基于spring-boot-starter-mail实现 发送普通邮件、HTML邮件、附件邮件 spring-boot-action-framework 结构化spring boot项目 业务分离,架构分离,实际开发中可以...

    excel解析及发送邮件的小例子

    自己做的一个excel导入的例子,还有发送邮件,项目可直接运行,用spring mvc框架 dao层是jdbc ,有数据库文件,可以直接运行。

    spring-boot-ldap-useradmin:使用 ldap 进行用户管理

    它使用了 Spring LDAP 中的许多有用概念,并将作为最佳实践和各种有用技巧的一个很好的例子。LDAP 中的用户和组LDAP 中的用户通常表示为 LDAP 树中的organizationalPerson或inetOrgPerson条目。 这些条目中的属性...

    struts简单实现用户注册(最新修订)

    一直以来公司都没有用现如今比较前卫的技术,闲来无聊,自己实现了个struts简单注册的例子,目的自己练习用,简单说下我的想法, 其一:想加spring,但是怎么读spring.xml配置文件也得不到它,就放弃了, 其二:利用...

    FlatShop

    平面商店 信息 技术:Spring MVC,My SQL,Hibernate,安全性,Spring Mail,HTML,CSS,... 数据:ShopVans 安装 影片示范 例子 感谢您对我的项目的关注。

    rest-messaging-templates:将模板消息发送到目的地

    该存储库包含Spring Rest服务,用于将模板化消息发送到目的地。 终点 / api / v1 / template / add 接受TemplateDto: templateId:字符串-模板标识符 模板:字符串-带有占位符的字符串,如$ variable $ 收件人:...

    freemarker总结

    例子如下: (age&gt;60)&gt;老年人 (age&gt;40)&gt;中年人 (age&gt;20)&gt;青年人 &lt;#else&gt; 少年人 输出结果是:青年人 上面的代码中的逻辑表达式用括号括起来主要是因为里面有&gt;符号,由于FreeMarker会将&gt;符号当成标签的结束...

    JBPM4工作流应用开始指南.rar

    183 8.1.2 值和方法表达式 184 8.1.3 隐式对象 187 8.1.4 运算符和保留字 188 8.1.5 一些经典EL表达式的例子 190 8.2 例程:用脚本去控制一个流程的运行 192 8.3 小结 194 第二篇 定制属于自己的流程——深入jBPM4...

    JAVA上百实例源码以及开源项目

    同时一个mail note将被发送给消息发送者,发送一个e-mail通知给由recipient参数确定的e-mail账号,查询mail 服务器的会话……  还包括消息客户端程序,通过连接创建会话。创建发送者和映射消息。发送消息,同时对...

    JAVA上百实例源码以及开源项目源代码

    同时一个mail note将被发送给消息发送者,发送一个e-mail通知给由recipient参数确定的e-mail账号,查询mail 服务器的会话……  还包括消息客户端程序,通过连接创建会话。创建发送者和映射消息。发送消息,同时对...

Global site tag (gtag.js) - Google Analytics