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

利用spring中的mail发送邮件

阅读更多
一、
使用spring已封装的邮件发送实现类,配置属性,其中smtp.ym.163.com为企业邮箱的smtp地址
引用
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
  <property name="host" value="smtp.ym.163.com"/>
  <property name="javaMailProperties">
         <props>
  <prop key="mail.debug">true</prop>
  <prop key="mail.smtp.auth">true</prop>
  <prop key="mail.transport.protocol">smtp</prop>
  </props>
  </property>
  <property name="username" value="abc@abcsoft.com"/>
  <property name="password" value="123456"/>
</bean>


定义一个邮件发送模版
<bean id="templateMessage" class="org.springframework.mail.SimpleMailMessage">
        <property name="from" value="abc@abcsoft.com"/>
	<property name="subject" value="Your order"/>
</bean>


实现发送逻辑
        @Autowired
	private JavaMailSender mailSender;
	@Autowired
        private SimpleMailMessage templateMessage;
	@Autowired
	private VelocityEngine velocityEngine;
	
	@Override
	public void sendEmail() {
		  SimpleMailMessage msg = new SimpleMailMessage(this.templateMessage);
	        msg.setTo("123@qq.com");
	        msg.setText(
	            "注册信息");
	        try{
	            this.mailSender.send(msg);
	        }
	        catch(MailException ex) {
	            System.err.println(ex.getMessage());            
	        }
	}


二、
自定义一个邮件模版文件,使用velocity解析
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
  	<property name="host" value="smtp.ym.163.com"/>
  	<property name="javaMailProperties">
  		<props>
  			<prop key="mail.debug">true</prop>
  			<prop key="mail.smtp.auth">true</prop>
  			<prop key="mail.transport.protocol">smtp</prop>
  		</props>
  	</property>
  	<property name="username" value="abc@abcsoft.com"/>
  	<property name="password" value="123456"/>
  	<property name="defaultEncoding" value="utf-8"></property>
</bean>


定义velocity引擎
<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
	<property name="velocityProperties">
		   <value>
		          resource.loader=class
		        class.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
		   </value>
         </property>
</bean>



实现发送逻辑
	@Override
	public void sendEmailTemplate(final User user) {
		MimeMessagePreparator mmp = new MimeMessagePreparator() {
			@Override
			public void prepare(MimeMessage mimeMessage) throws Exception {
				 MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
		            message.setTo(user.getEmailAddress());
		            message.setFrom("abc@abcsoft.com"); 
		            Map model = new HashMap();
		            model.put("user", user);
		            String text = VelocityEngineUtils.mergeTemplateIntoString(
		               velocityEngine, "just/my/mail.html", model);
		            System.out.println(text);
		            message.setText(text, true);
			}
		};
		this.mailSender.send(mmp);
	}

分享到:
评论

相关推荐

    利用 spring mail 通过 gmail(SSL) 发邮件

    本教程将详细讲解如何利用Spring Mail通过Gmail的SSL(安全套接层)协议来发送邮件。 首先,我们需要在项目中引入Spring Mail的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;...

    Spring mail发送邮件实例

    通过以上步骤,我们可以利用 Spring Mail 模块轻松地实现邮件的发送功能。此外,Spring Mail 还提供了更为高级的功能,比如发送 HTML 格式的邮件、附件等,这些都是在实际应用中非常有用的功能。

    spring + mail + 发送邮件完整 demo (含注释)

    通过这个Demo,你可以了解到如何配置邮件服务器、如何使用Freemarker模板生成动态邮件内容,以及如何利用Spring的`JavaMailSender`接口发送邮件。这只是一个基础的实现,你还可以根据需要扩展功能,比如支持附件、...

    使用springMail发送带附件的email

    在本项目中,我们将深入探讨如何使用SpringMail发送带有附件的电子邮件。首先,我们需要了解几个核心概念: 1. **JavaMail API**: 这是Java平台上的一个标准API,用于处理邮件相关任务,如创建、发送和接收邮件。它...

    Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)

    在Spring Boot应用中,利用JavaMailSender发送邮件是一种常见的需求,Spring Boot的`spring-boot-starter-mail`模块为我们提供了方便的自动化配置。首先,我们需要在项目的`pom.xml`文件中引入这个依赖: ```xml ...

    spring boot+mail邮件服务学习demo项目源码

    本项目是关于Spring Boot结合Spring封装的Mail服务的一个学习demo,旨在帮助开发者掌握如何在Spring Boot应用中实现邮件服务功能。下面将详细介绍这个项目涉及的核心知识点。 1. **Spring Boot简介** Spring Boot...

    Spring mail 发送邮件

    本篇将深入探讨如何使用Spring Mail发送邮件,以及它背后的实现原理。 首先,我们需要在项目中引入Spring Mail的依赖。通常,这可以通过Maven或Gradle来完成。对于Maven用户,可以在pom.xml文件中添加以下依赖: `...

    spring mail 发送html

    本文将详细讲解如何利用Spring Mail发送HTML格式的邮件,以及如何发送普通文本、附件和嵌入式图片等内容。 首先,我们需要在项目中引入Spring Mail的相关依赖。在Maven项目中,可以在pom.xml文件中添加以下依赖: ...

    spring各种邮件发送

    在"spring各种邮件发送"这个主题中,我们将探讨Spring框架如何帮助开发者实现电子邮件的发送。邮件服务在许多应用场景中都十分常见,例如用户注册确认、密码重置提醒等。 首先,Spring框架提供了`JavaMailSender`...

    Spring 高效批量邮件发送

    在本话题中,我们将探讨“Spring高效批量邮件发送”这一技术点,这通常涉及到Spring框架中的邮件服务模块以及如何优化邮件发送的效率。 首先,Spring框架的MailSender接口是处理邮件发送的核心组件。它提供了send()...

    spring定时发送邮件

    通过分析和运行这些文件,我们可以更深入地理解和学习如何在实际应用中利用Spring实现定时发送邮件的功能。 总结来说,Spring的定时任务和邮件服务功能为我们提供了强大的工具,能够自动化执行诸如发送邮件这样的...

    spring+velocity发送邮件

    在本场景中,我们将利用Spring来管理JavaMail Sender对象,以便于发送邮件。 #### Velocity模板引擎 Velocity是一个基于Java的模板引擎,它允许开发者通过简单的模板语言来生成HTML网页、XML数据或者普通的文本。在...

    java发送邮件(两种方式-springcloud方式+静态调用方式).zip

    在Spring Cloud框架中,我们可以利用`spring-cloud-starter-mail`模块来发送邮件。首先,需要在`pom.xml`文件中引入依赖: ```xml &lt;groupId&gt;org.springframework.cloud &lt;artifactId&gt;spring-cloud-starter-mail ...

    springmail架包

    SpringMail 是一个基于 Java 的库,它为使用 JavaMail API 发送电子邮件提供了便捷的抽象层。这个框架使得在 Spring 应用程序中集成邮件服务变得简单。本文将深入探讨 SpringMail 的核心概念、配置以及如何在实际...

    Mailspring一个漂亮类似Nylas的电子邮件客户端

    1. **异步I/O**:Node.js的非阻塞I/O模型使得Mailspring在处理网络请求时能够高效地运行,如获取邮件、发送邮件等操作。 2. **模块化开发**:Node.js的npm(Node Package Manager)提供了大量的开源库,Mailspring...

    springmail架包及各种邮件发送代码

    通过以上步骤,我们可以利用SpringMail轻松地在Spring应用中实现邮件发送功能。在压缩包中的邮件架包可能包含了更多示例代码和配置文件,帮助开发者更好地理解和使用SpringMail。记得根据实际情况调整配置,确保邮件...

    spring JavaMailSenderImpl 发送邮件 java

    其中,Spring的JavaMailSenderImpl是用于发送电子邮件的一个重要工具,它使得开发者能够方便地集成邮件服务到他们的应用中。下面将详细介绍这个知识点。 **1. Spring的JavaMailSender接口与JavaMailSenderImpl实现*...

    spring mail 实例

    本实例将深入探讨如何在Spring应用中集成并使用Spring Mail进行邮件发送。 首先,我们需要理解Spring Mail的核心组件`JavaMailSender`,这是一个接口,提供了发送邮件的基本方法。要使用`JavaMailSender`,我们需要...

    spring线程发送邮件

    接下来,为了实现异步发送邮件,我们可以利用Spring的`@Async`注解和`TaskExecutor`。首先,我们需要创建一个`@Configuration`类来配置`TaskExecutor`: ```java @Configuration @EnableAsync public class ...

Global site tag (gtag.js) - Google Analytics