`
liyixing1
  • 浏览: 959004 次
  • 性别: Icon_minigender_1
  • 来自: 江西上饶
社区版块
存档分类
最新评论

使用spring-email发邮件

阅读更多
package com.gumtreenet.util;

import java.util.Properties;

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

import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

/**
* 发送email的工具
*
* @author 李义星
* @version 0.1
* @datetime 2011-03-30
*/
public class EmailUtil {
/**
* 发送html格式的email
*/
public static void sendEmail(Email email) {
// 建立发送者
JavaMailSenderImpl emailSender = new JavaMailSenderImpl();
MimeMessage mailMessage = emailSender.createMimeMessage();
MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage,
"utf-8");//同时设置了编码
Properties emailProperties = new Properties();

emailSender.setHost(email.getHost());
emailSender.setUsername(email.getUserName());
emailSender.setPassword(email.getPassword());
emailSender.setDefaultEncoding("utf-8");

if (email.isAuth()) {
emailProperties.setProperty("mail.smtp.auth", "true");
emailSender.setJavaMailProperties(emailProperties);
}

try {
messageHelper.setFrom(email.getFrom());
messageHelper.setTo(email.getTo());
messageHelper.setSubject(email.title);
messageHelper.setText(email.getText(), true);
} catch (MessagingException e) {
throw new RuntimeException(e);
}

// 发送消息
emailSender.send(mailMessage);
}

/**
* 发送纯文本格式的email
*/
public static void sendEmailText(Email email) {
// 建立发送者
JavaMailSenderImpl emailSender = new JavaMailSenderImpl();
SimpleMailMessage mailMessage = new SimpleMailMessage();
Properties emailProperties = new Properties();

emailSender.setHost(email.getHost());
emailSender.setUsername(email.getUserName());
emailSender.setPassword(email.getPassword());
emailSender.setDefaultEncoding("utf-8");

if (email.isAuth()) {
emailProperties.setProperty("mail.smtp.auth", "true");
emailSender.setJavaMailProperties(emailProperties);

}

mailMessage.setFrom(email.getFrom());
mailMessage.setTo(email.getTo());
mailMessage.setSubject(email.title);
mailMessage.setText(email.getText());

// 发送消息
emailSender.send(mailMessage);
}

/**
* 发送email时需要的信息
*
* @author 李义星
* @version 0.1
* @datetime 2011-03-30
*/
public static class Email {
private String host = "mail.gumtreenet.com"; // email发送服务器
private String userName = "gdpli@gumtreenet.com";
private String password = "*******************";
private String[] to = new String[] { "liyixing1@gmail.com",
"liyixing1@yahoo.com.cn", "liyixingx@126.com" };
private String from = "gdpli@gumtreenet.com";
private String title;
private String text;
private boolean auth = false;

public String getHost() {
return host;
}

public void setHost(String host) {
this.host = host;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String[] getTo() {
return to;
}

public void setTo(String[] to) {
this.to = to;
}

public String getFrom() {
return from;
}

public void setFrom(String from) {
this.from = from;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

public String getText() {
return text;
}

public void setText(String text) {
this.text = text;
}

public boolean isAuth() {
return auth;
}

public void setAuth(boolean auth) {
this.auth = auth;
}
}
}
分享到:
评论

相关推荐

    spring-email .zip

    这个名为"spring-email .zip"的压缩包文件显然包含了一个使用Spring Boot实现电子邮件服务的示例项目。接下来,我们将深入探讨Spring Boot如何处理电子邮件发送功能,并通过这个项目可能包含的文件来解析其工作原理...

    spring-boot-邮件发送

    为了使用Spring Boot进行邮件发送,首先需要搭建好相应的开发环境。 1. **开通SMTP邮件服务:** - 对于使用QQ邮箱作为SMTP服务器的情况,需要在QQ邮箱设置中开启SMTP服务,并获取授权码。这一步非常重要,因为没有...

    自定义 SpringBoot-Starter email-spring-boot-starter.zip

    总的来说,"email-spring-boot-starter"简化了Spring Boot应用的邮件发送功能,通过集成Apache Commons Email库,它支持了多种邮件服务提供商,并且允许发送包含附件的邮件。开发者只需要关注邮件的内容和接收者,...

    spring-boot-mail

    spring boot 邮件发送,亲测可用 ...spring.mail.username=Email_Name #SpringCloud 注册发现 配置 eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/ #当前服务器端口 server.port=8081

    spring-boot示例项目

    email|[email实现邮件发送](https://github.com/smltq/spring-boot-demo/blob/master/email) jGit|[java调用git命令、jgit使用等](https://github.com/smltq/spring-boot-demo/blob/master/jGit) webmagic|...

    spring-boot-mail邮件发送服务 v1.0.zip

    Spring Boot作为Java领域的一个热门框架,提供了便捷的方式来集成和使用邮件服务。本项目"spring-boot-mail邮件发送服务 v1.0"就是基于Spring Boot实现的邮件发送功能,旨在帮助开发者快速构建自己的邮件发送系统。 ...

    spring-boot-email-tools:一组服务和工具,用于使用模板引擎在Spring Boot 1.5.x应用程序中发送电子邮件

    该项目依赖于无模板模块it.ozimov:spring-boot-email-core ,该模块提供了核心功能(例如,发送电子邮件,调度和确定优先级,持久性)。 由于它是无模板的,因此它不提供用于通过模板引擎生成电子邮件正文的服务的...

    spring-ws-reference-1.5.9

    - **Email 传输**:通过电子邮件发送消息。 - **Embedded HTTP Server 传输**:内置的 HTTP 服务器。 ##### 5.4 端点 定义了如何创建和配置不同的端点类型。 - **AbstractDomPayloadEndpoint**:基于 DOM 的抽象...

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

    Spring Mail是一个Java库,它简化了通过JavaMail API发送电子邮件的过程。本教程将详细讲解如何利用Spring Mail通过Gmail的SSL(安全套接层)协议来发送邮件。 首先,我们需要在项目中引入Spring Mail的依赖。如果...

    spring+velocity发送邮件

    根据提供的信息,我们可以详细探讨如何使用Spring框架结合Velocity模板引擎来实现邮件的自动化发送功能。这一过程涉及到Spring框架的基本配置、Velocity模板引擎的使用以及JavaMail API的应用。 ### Spring框架与...

    Spring Email 发送

    本示例将深入探讨如何使用Spring发送电子邮件,特别是针对中文乱码问题的解决方案。我们将涉及Spring的Java配置和Velocity模板引擎来创建动态邮件内容。 首先,我们需要引入必要的依赖。在Spring项目中,我们通常会...

    Spring-Boot-Send-Email-with-AWS-SES:Spring Boot使用AWS SES发送电子邮件

    在本文中,我们将深入探讨如何使用Spring Boot框架与Amazon Simple Email Service (AWS SES)集成,以便在Java应用程序中实现电子邮件的发送功能。AWS SES是一种经济高效的电子邮件服务,它允许开发者发送大量邮件,...

    SpringBoot中整合Mail实现简单邮件发送示例代码

    通过这个示例,你可以了解到Spring Boot如何通过自动配置简化邮件服务的集成,以及如何使用JavaMailSender接口发送邮件。当然,实际应用中可能需要处理更复杂的邮件场景,例如发送HTML邮件、添加附件等,但这个基础...

    commons-email-jar

    1. 创建`Email`对象,并设置必要的属性,如发件人、收件人、主题和邮件内容。 2. 添加附件,如果有的话。 3. 配置SMTP服务器信息,包括主机名、端口、用户名和密码。 4. 调用`send()`方法发送邮件。 示例代码如下:...

    Spring 使用163发邮件

    本主题将深入探讨如何使用Spring框架发送电子邮件,特别是通过163邮箱服务进行邮件发送。首先,我们需要理解Spring的JavaMailSender接口,它是Spring提供用来发送电子邮件的核心组件。 1. **JavaMailSender接口**:...

    Spring发送Email

    总结来说,Spring Mail为Java开发者提供了一种简单、高效的方式来发送电子邮件,通过配置SMTP服务器信息和使用`JavaMailSender`或`MimeMessageHelper`,我们可以轻松地创建和发送各种类型的邮件,包括HTML邮件和带...

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

    本项目聚焦于使用Spring Boot来开发一个支持多附件邮件发送的微服务平台。这个平台可以方便地集成到各种业务场景中,例如发送报告、通知或者用户验证邮件。 首先,我们需要了解Spring Boot的邮件服务模块——`...

    spring-email-master:使用spring4.3.4 发送邮件,三种方式:文本格式,HTML格式,velocity模版,Thymeleaf模版,使用模版以及策略设计模式实现同步和异步发送

    Spring Email抽象核心接口MailSender,其实现类JavaMailSenderImpl,在其中配置邮件 服务器host,pssword,协议等 。。。。。 1.发送简单的消息 SimpleMailMessage:发送简单的消息 2.发送丰富的消息(比如带有附件,内...

    简单学习使用Spring+Velocity发送邮件

    本教程将围绕如何使用Spring框架与Velocity模板引擎来实现邮件发送功能进行详细讲解。 首先,让我们理解Spring框架的邮件发送服务。Spring提供了`JavaMailSender`接口,该接口提供了发送邮件的基本方法,如`send...

    Java-Spring-Boot-email-SMTP:#Java Spring Boot-如何通过SMTP发送电子邮件

    本篇文章将深入探讨如何使用Spring Boot结合SMTP(Simple Mail Transfer Protocol)服务来实现电子邮件的发送。 SMTP是互联网上用于在邮件服务器之间传输邮件的标准协议。在Spring Boot应用中,我们可以利用Spring ...

Global site tag (gtag.js) - Google Analytics