使用java发送邮件sp自动发送邮件方法
注意:将jar包复制到web-info文件夹下lib:
activation.jar
mail.jar
//发送邮箱
public static String sendEmail(String sendFrom,String sendTo,String passWord,String title,String count){
try{
String from =sendFrom.trim();//发送者
String to =sendTo.trim();//接受者
String subject =title.trim();//主题
String content =count.trim();//内容
String password =passWord.trim();//发送者邮箱密码
String path="null";//附件的路径
String mailserver ="smtp."+from.substring(from.indexOf('@')+1,from.length()); //在Internet上发送邮件时的代码(smtp服务器地址)
Properties prop = new Properties();
prop.put("mail.smtp.host", mailserver);
prop.put("mail.smtp.auth", "true");
prop.put("mail.transport.protocol", "smtp");
Session sess = Session.getDefaultInstance(prop);
sess.setDebug(true);
MimeMessage message = new MimeMessage(sess);
message.setFrom(new InternetAddress(from)); // 给消息对象设置发件人
//设置收件人
String toArr[]=to.split(",");
InternetAddress[] to_mail=new InternetAddress[toArr.length];
for(int i=0;i<toArr.length;i++){
to_mail[i]=new InternetAddress(toArr[i]);
}
message.setRecipients(Message.RecipientType.BCC,to_mail);
//设置主题
message.setSubject(subject);
Multipart mul = new MimeMultipart(); // 新建一个MimeMultipart对象来存放多个BodyPart对象
BodyPart mdp = new MimeBodyPart(); // 新建一个存放信件内容的BodyPart对象
mdp.setContent(content, "text/html;charset=gb2312");
mul.addBodyPart(mdp); // 将含有信件内容的BodyPart加入到MimeMulitipart对象中
if(!"null".equals(path)){ //当存在附件时
// 设置信件的附件(用本机上的文件作为附件)
mdp = new MimeBodyPart(); // 新建一个存放附件的BodyPart
String adjunctname = new String(path.getBytes("GBK"), "ISO-8859-1"); // 此处需要转码,否则附件中包括中文时,将产生乱码
path = (System.getProperty("java.io.tmpdir") + "/" + path).replace(
"\\", "/");
System.out.println("路径:" + path);
FileDataSource fds = new FileDataSource(path);
DataHandler handler = new DataHandler(fds);
mdp.setFileName(adjunctname);
mdp.setDataHandler(handler);
mul.addBodyPart(mdp);
}
message.setContent(mul); // 把mul作为消息对象的内容
message.saveChanges();
Transport transport = sess.getTransport("smtp");
// 以smtp方式登录邮箱,第1个参数是发送邮件用的邮件服务器SMTP地址,第2个参数为用户名,第3个参数为密码
// qq邮箱POP3服务器(端口995)
// SMTP服务器(端口465或587)
transport.connect(mailserver,from,password);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
return "success";
} catch (Exception e) {
e.printStackTrace();
return "error";
}
}
使用java发送邮件sp自动发送邮件方法的更多相关文章
- java使用JMail通过QQ邮件服务器实现自动发送邮件
前言:项目开发的过程中,我们项目需要一个自动发送邮件提醒的小功能,于是简单的研究了一下java的JMail来实现自动发送邮件的功能.已被后期需要参考. 一.准备 实现的原理很简单:发送人 , 中转的邮 ...
- PCB 自动发送邮件---加入表格实现方法
先看一下手动发送邮件内容加入表格操作(下图所示),直接复制Excel内容,再粘贴到邮件内容中,就是这么便捷,如果我们想自动发送邮件,也实现同样的效果如果实现呢,在这里介绍2种方法: 一.读取Excel ...
- Jenkins配置自动发送邮件,成功!
Jenkins自动发送邮件配置: 打开"系统管理"--"系统设置" 在"Jenkins Location"设置系统管理员地址(重要:不能省略 ...
- VBA控制outlook自动发送邮件(转)
使用Excel VBA实现Outlook自动发送邮件 | 在工作上我们都会遇到批量发送邮件的情况,面对重复而规律性的工作,可以使用Excel的VBA实现自动批量化发送邮件.大大减小工作时间,提升工作效 ...
- java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板
java 利用spring JavaMailSenderImpl发送邮件,支持普通文本.附件.html.velocity模板 博客分类: Java Spring 本文主要介绍利用JavaMailS ...
- python☞自动发送邮件
一.SMTP 协议 SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式 二.smtplib ...
- 使用mutt自动发送邮件
1.Mutt安装及环境配置 1.1.安装 sudo yum install mutt 比如你要设置邮件的发信人,需要做: sudo vim /etc/Muttrc set envelope_from= ...
- SQL SERVER 2008自动发送邮件(完整版)
这两天都在搞这个东西,从开始的一点不懂,到现在自己可以独立的完成这个功能!在这个过程中,CSDN的好多牛人都给了我很大的帮助,在此表示十二分的感谢!写这篇文章,一是为了巩固一下,二嘛我也很希望我写的这 ...
- 【SSH网上商城项目实战25】使用java email给用户发送邮件
转自: https://blog.csdn.net/eson_15/article/details/51475046 当用户购买完商品后,我们应该向用户发送一封邮件,告诉他订单已生成之类的信息, ...
随机推荐
- 移植yaffs文件系统
需要下载yaffs2-d43e901.tar.gz,busybox-1.13.0.tar.bz2 使用的交叉编译器是4.33 1.修改配置编译busybox 修改Makefile CROSS_COMP ...
- github.io hexo 安装
/***************************************************************** * github.io hexo 安装 * 说明: * 本文记录h ...
- Python [Leetcode 344]Reverse String
题目描述: Write a function that takes a string as input and returns the string reversed. Example:Given s ...
- maven整合s2sh截图
- dede 首页调用单页->栏目内容
{dede:sql sql='Select content from dede_arctype where id=47'} [field:content/] {/dede:sql}
- Linux用户(组)管理
在linux中系统中,它并不认识帐号名称.它认识的是我们的帐号ID,帐号ID保存在/etc/passwd文件中.我们在登录linux主机时,在输入完帐号和密码时,linux会先查找/etc/passw ...
- Notepad 列编辑、正则查找、替换
目标: 将源数据转成初始化sql语句.源数据: 104110040018,1,中国银行,中国银行天津琼州道支行,NULL,1100,天津市,12,天津市 104110040059,1,中国银行,中国银 ...
- 定时组件quartz系列<一>模拟定时组件小程序
一.核心概念 Quartz的原理不是很复杂,只要搞明白几个概念,然后知道如何去启动和关闭一个调度程序即可. 1.Job表示一个工作,要执行的具体内容.此接口中只有一个方法void execute(Jo ...
- android学习——MeasureSpec介绍及使用
一.MeasureSpc类说明 SDK的介绍:MeasureSpc类封装了父View传递给子View的布局(layout)要求.每个MeasureSpc实例代表宽度或者高度 它有三种模式:①.UNSP ...
- winform 防止多開
場景: 當我們的電腦可以使用多用戶同時登錄時候,每個使用者只允許執行一次exe程式. 例如:一台公用電腦,有多個用戶A.B. 當用戶A進入系統第一次運行C:\XX.exe,OK.第二次運行XX.exe ...