`
Java_大猫
  • 浏览: 173941 次
  • 性别: 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 实例

    Spring Mail是Spring框架的一个扩展,专门用于发送电子邮件。本实例将深入探讨如何在Spring应用中集成并使用Spring Mail进行邮件发送。 首先,我们需要理解Spring Mail的核心组件`JavaMailSender`,这是一个接口,...

    使用springMail发送带附件的email

    SpringMail是一个在Java应用中发送电子邮件的库,它利用了JavaMail API的简便性和灵活性。在本项目中,我们将深入探讨如何使用SpringMail发送带有附件的电子邮件。首先,我们需要了解几个核心概念: 1. **JavaMail ...

    spring mail 的发送

    在`springmail2`这个示例项目中,可能包含了一个简单的Spring Boot应用,演示了如何使用Spring Mail发送邮件。这个示例可能包括一个`Main`类,启动Spring Boot应用,并调用`MailService`发送一封测试邮件。代码可能...

    spring发送邮件demo

    在Spring中,发送电子邮件的功能是通过Spring的Mail API实现的,这在系统监控、报警通知、用户验证等场景中非常常见。下面将详细介绍如何使用Spring发送邮件。 首先,我们需要在项目中引入Spring的邮件支持。这通常...

    spring-boot 各种demo例子(最新)

    12. **邮件服务**:Spring Boot 提供了发送邮件的功能,通过 `spring-boot-starter-mail` 起步依赖,你可以学习如何设置邮件服务器并发送邮件。 13. **集成测试**:在 demo 中,你可能会找到使用 `@SpringBootTest`...

    spring集成邮件服务

    Spring框架通过`org.springframework.mail`包提供了对JavaMail的支持。它抽象了JavaMail的复杂性,提供了更友好的API来发送邮件。以下是一个基本的集成步骤: 1. **配置邮件服务器**:在Spring的配置文件中,你需要...

    Spring发送邮件

    SpringMail是Spring框架的一个扩展,专门用于简化邮件发送过程。本文将深入探讨如何使用SpringMail来实现邮件发送功能,以及Java Mail API在其中的作用。 首先,让我们了解SpringMail的基本配置。在Spring应用中,...

    spring整合freemarker发送邮件例子

    spring.mail.properties.mail.smtp.starttls.enable=true ``` 然后创建一个邮件服务类,用于处理邮件发送。在这个类中,我们将使用Freemarker模板生成HTML内容,并通过JavaMailSender发送邮件: ```java @Service ...

    使用Spring Boot 开发支持多附件邮件发送微服务平台代码

    spring.mail.properties.mail.smtp.starttls.enable=true ``` 在Spring Boot应用中,你可以创建一个`MailService`接口和其实现类,使用`JavaMailSender`接口来发送邮件。以下是一个简单的示例: ```java @Service ...

    spring发送邮件

    在描述中提到的`MailAction.java`中,你可以看到一个`MailAction`类,它是基于Struts2的Action,但是核心的邮件发送逻辑是基于Spring的。下面是一个简单的Spring邮件发送示例: ```java import org.springframework...

    springboot整合mail邮件发送

    本文将深入探讨如何在Spring Boot项目中整合Mail服务,实现邮件发送功能。首先,我们需要理解Spring Boot的自动配置理念,它使得集成各种服务变得更加简单。邮件服务也不例外,Spring Boot提供了`spring-boot-...

    SpringMail使用过程中的报错解决办法

    在Spring框架的邮件发送功能SpringMail中,我们经常可能会遇到一系列的报错问题,这些报错可能会打断我们的开发流程,给开发人员带来困扰。本文将集中介绍几种在使用SpringMail时可能遇到的常见报错情况以及相应的...

    开源框架 Spring Gossip

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

    spring JavaMailSenderImpl 发送邮件 java

    对于JavaMailSenderImpl,我们需要包含Spring的`spring-context`和JavaMail的相关依赖,如`javax.mail-api`和`javamail`。 **5. 示例代码** 以下是一个简单的示例,展示了如何在Spring中使用JavaMailSenderImpl...

    SpringBoot+邮件服务

    在这个例子中,`sendSimpleMail`方法用于发送纯文本邮件,而`sendHtmlMail`方法则支持发送包含HTML内容的邮件。你可以根据实际需求调用相应的发送方法。 在"springboot+mail服务说明.doc"文档中,可能会包含更详细...

Global site tag (gtag.js) - Google Analytics