Java-利用spring发送邮件
最近项目中需要发送邮件的功能,于是百度一大把例子。但是有很多都是一样的,一点特点都没有。所以决定整理一番。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<!-- 配置MailSender --> < bean id = "mailSender" class = "org.springframework.mail.javamail.JavaMailSenderImpl" > <!-- 邮件服务器 --> < property name = "host" value = "smtp.163.com" /> <!-- 端口 --> < property name = "port" value = "25" /> <!-- 你的邮箱 --> < property name = "username" value = "" /> <!-- 邮箱密码 --> < property name = "password" value = "" /> < property name = "javaMailProperties" > < props > <!-- 是否进行身份认证 --> < prop key = "mail.smtp.auth" >true</ prop > <!-- 是否采用SSL登录 --> < prop key = "mail.smtp.starttls.enable" >true</ prop > </ props > </ property > </ bean > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
public static void simpleMail() { try { // 使用Spring提供的MailSender ApplicationContext app = new ClassPathXmlApplicationContext( "spring-mail.xml" ); JavaMailSender mailSender = (JavaMailSender) app .getBean( "mailSender" ); // 创建一个纯文本邮件 SimpleMailMessage mail = new SimpleMailMessage(); // 发送方 mail.setFrom(YourMail); // 接收人 mail.setTo(ToMail); // 邮件标题 mail.setSubject( "测试简单邮件发送" ); // 内容 mail.setText( "测试使用SpringMailSender发送邮件" ); // 发送 mailSender.send(mail); System.out.println( "邮件发送成功!" ); } catch (Exception e) { e.printStackTrace(); } } |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
public static void attachedFileMail() { try { ApplicationContext app = new ClassPathXmlApplicationContext( "spring-mail.xml" ); JavaMailSender mailSender = (JavaMailSender) app .getBean( "mailSender" ); MimeMessage mime = mailSender.createMimeMessage(); // multipart模式 为true时发送附件 可以设置html格式 MimeMessageHelper messageHelper = new MimeMessageHelper(mime, true , "utf-8" ); // 发送方 messageHelper.setFrom(YourMail); // 接收人 messageHelper.setTo(ToMail); // 邮件标题 messageHelper.setSubject( "测试包含附件邮件发送" ); // true 表示启动HTML格式的邮件 messageHelper .setText( "<html><head></head><body><h3>你好:附件中有惊喜,请查收!</h3></body></html>" , true ); // 附件 FileSystemResource file = new FileSystemResource( new File( "D:\\a.xls" )); messageHelper.addAttachment( "a.xls" , file); // 发送 mailSender.send(mime); System.out.println( "邮件发送成功!" ); } catch (MessagingException e) { e.printStackTrace(); } } |
Java-利用spring发送邮件的更多相关文章
- java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板
java 利用spring JavaMailSenderImpl发送邮件,支持普通文本.附件.html.velocity模板 博客分类: Java Spring 本文主要介绍利用JavaMailS ...
- java利用commons-email发送邮件并进行封装
本例中利用commons-email发送邮件并进行封装,支持html内容和附件:Commons Email是Apache的Commons子项目下的一个邮件客户端组件,它是基于JavaMail的,大大简 ...
- java web spring 发送邮件
package com.ws.common.mail; import java.io.File; import javax.mail.internet.MimeMessage; import java ...
- 利用spring boot创建java app
利用spring boot创建java app 背景 在使用spring框架开发的过程中,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置和复杂的bean依赖关系,特别是在使用mvc的时候各 ...
- [Java][web]利用Spring随时随地获得Request和Session
利用Spring随时随地获得Request和Session 一.准备工作: 在web.xml中加入 <listener> <listener-class> org.spring ...
- 利用spring AOP 和注解实现方法中查cache-我们到底能走多远系列(46)
主题:这份代码是开发中常见的代码,查询数据库某个主表的数据,为了提高性能,做一次缓存,每次调用时先拿缓存数据,有则直接返回,没有才向数据库查数据,降低数据库压力. public Merchant lo ...
- java工作流软件发送邮件的方案
利用javamail的功能将发送邮件的功能集成到java工作流系统中.javamail包提供有发送邮件的方法,设置发送人地址,收件人地址,抄送,主题,邮件服务器地址,认证用户等信息,再调用javama ...
- 【JAVA】Spring 数据源配置整理
在Spring中,不但可以通过JNDI获取应用服务器的数据源,也可以直接在Spring容器中配置数据源,此外,还可以通过代码的方式创建一个数据源,以便进行无依赖的单元测试. 配置数据源 ...
- [Java] 使用 Spring 2 Portlet MVC 框架构建 Portlet 应用
转自:http://www.ibm.com/developerworks/cn/java/j-lo-spring2-portal/ Spring 除了支持传统的基于 Servlet 的 Web 开发之 ...
- 利用spring自己实现观察者模式
利用spring,自己实现的一个观察者模式,写着玩玩,目的是为了加深理解,下次用Spring自带的玩一玩. 首先我们定义一个侦听类接口 package com.hyenas.common.listen ...
随机推荐
- IE6下position解决父元素被撑开的问题
在IE6下面当子元素的宽度/高度大于父元素时, 父元素的宽度/高度就被撑开.IE7以上是不会被撑开的 <style> .f{width:100px; height:100px; backg ...
- Sqli-labs less 25a
Less-25a 不同于25关的是sql语句中对于id,没有''的包含,同时没有输出错误项,报错注入不能用.其余基本上和25示例没有差别.此处采取两种方式:延时注入和联合注入. http://127. ...
- Ruby中的Profiling工具
看看如何调试Ruby的性能问题 李哲 - APRIL 08, 2015 Ruby内置的profiler 内置的profiler实现的很简单,在ruby2.2中只有150行代码,大家可以看看它的实现pr ...
- Web前端名词释义及原理
引言:看题目的时候,不要觉得这是一个很深奥的问题,Web前端这些东西很多就是叫的名字牛逼,其实原理很TM简单,也就那么回事. 一.javascript名词释义 1.啥是事件队列? 就是 弄一个数组,里 ...
- JDK中常见的package
SUN公司在JDK中为程序开发者提供了各种实用类,这些类按功能不同分别被放入了不同的包中,供开发者使用,下面简要介绍其中最常用的几个包:1. java.lang — 包含一些Java语言的核心类,如S ...
- IE6 png 透明--四种解决方法
FF和IE7已经直接支持透明的png图了,下面这个主要是解决IE6下透明PNG图片有灰底的 方法一:定义一个样式,给某个div应用这个样式后,div的透明png背景图片自动透明了.(注意两处图片的路径 ...
- 3[doses] ------一种诡异的写法
在 head first c 的第60页,有这么一道题: 一个富翁因为服药过度而死亡. 下面是自动服药器的代码: #include <stdio.h> int main(void) { , ...
- 修改DevExpress中英文提示,将英文改为中文
1 : 修改DX 提示框中的英文字符 /// <summary> /// 重写DX弹出框 英文变为中文 /// </summary> public class CHS : De ...
- Webpack+React配合开发
前面两篇关于webpack的基础和进阶,请先务必阅读之前的文章. Webpack教程一 Webpack教程二 什么是React React是一个由Facebook开发的library,它的口号是“A ...
- SQL server 为多个表添加新的列
作为一名.NET未入门的程序员,第一次发随笔. 前不久参与写的公司业务程序,目前这个程序的后期维护修复漏洞工作由我来负责.由于业务关系重大,每一步对程序代码的操作都非常谨慎,一旦操作失误,造成的损失和 ...