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 ...
随机推荐
- CentOS 6下安装nginx
原文:http://yubosun.akhtm.com/tech/centos-nginx.htm 1 在nginx官方网站下载一个rpm包,下载地址是:http://nginx.org/en/dow ...
- HDU4776 Ants(Trie && xor)
之前mark下来的一道题,今天填一下坑. 题意是这样子的.给你一棵边上有权的树.然后有树上两点(u,v)的路径有n*(n-1)条,路径(u,v)的权值是边权的xor. 然后下面有m个询问,询问你n*( ...
- ios下最简单的正则,RegexKitLite
ios下最简单的正则,RegexKitLite 1.去RegexKitLite下载类库,解压出来会有一个例子包及2个文件,其实用到的就这2个文件,添加到工程中.备用地址:http://www.coco ...
- Android 检查设备是否存在 导航栏 NavigationBar
尊重原创.尊重作者,转载请标明出处: http://blog.csdn.net/lnb333666/article/details/41821149 目前也没有可靠的方法来检查设备上是否有导航栏.可以 ...
- HDU 1869 六度分离
六度分离 http://acm.hdu.edu.cn/showproblem.php?pid=1869 Problem Description 1967年,美国著名的社会学家斯坦利·米尔格兰姆提出了一 ...
- hdu 2999 Stone Game, Why are you always there? 博弈论
SG函数应用!! 代码如下: #include<cstdio> #include<cstring> #include<iostream> #include<c ...
- ls 知识点
ls -R 将会以目录的形式列出所有文件,-S 以文件的大小列出所有文件,-t 将会按照修改时间来列出文件,-i 会显示文件的inode
- 李洪强iOS开发之添加手势
李洪强iOS开发之添加手势 02 - 添加手势
- idea自动生成serialVersionUID
Setting->Plugins 找到一个叫 GenerateSerialVersionUID 的插件 下载安装好,alt+insert就可以看到 默认情况下Intellij IDEA是关闭了 ...
- CentOS下的账户管理
在Linux中,每个文件都分3类权限:账户本身的权限,账户所在群组的权限和其它权限.账户和群组是多对多的关系,即一个账户可以属于多个群组,一个群组可以包含多个账户.但是,对于每一个已登录的账户,只能存 ...