公司内部邮箱服务器发送邮件 java版
来源:互联网 发布:plc模拟仿真软件 编辑:程序博客网 时间:2024/05/16 14:38
背景:
由于需要给合作方以压缩包的形式每天返回数据,基于我们自己写的分布式程序,而月末通过返回的数据,来与合作方进行对账,所以每天数据返回的成败就至关重要了,但又懒得每天去查看日志,刚好借助一下公司内部的邮件服务器。
go、go、go
package test.util;import org.apache.log4j.Logger;import javax.activation.DataHandler;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail.internet.*;import java.io.UnsupportedEncodingException;import java.util.Date;import java.util.Properties;/** * Created by shengjk1 on 2016/11/4. * Blog Address:http://blog.csdn.net/jsjsjs1789 */public class SendMail { private static Logger logger = Logger.getLogger(SendMail.class); private static SendMail instance = null; private SendMail() { } public static SendMail getInstance() { if (instance == null) { instance = new SendMail(); } return instance; } public void send(String to[], String cs[], String ms[], String subject, String content, String formEmail, String fileList[]) { try { Properties p = new Properties(); // Properties p = // System.getProperties(); p.put("mail.smtp.auth", "true"); p.put("mail.transport.protocol", "smtp"); p.put("mail.smtp.host", "xxxxx");//邮件服务器的地址 p.put("mail.smtp.port", "25"); // 建立会话 Session session = Session.getInstance(p); Message msg = new MimeMessage(session); // 建立信息 BodyPart messageBodyPart = new MimeBodyPart(); Multipart multipart = new MimeMultipart(); msg.setFrom(new InternetAddress(formEmail)); // 发件人 String toList = null; String toListcs = null; String toListms = null; // 发送, if (to != null) { toList = getMailList(to); new InternetAddress(); InternetAddress[] iaToList = InternetAddress .parse(toList); msg.setRecipients(Message.RecipientType.TO, iaToList); // 收件人 } // 抄送 if (cs != null) { toListcs = getMailList(cs); new InternetAddress(); InternetAddress[] iaToListcs = InternetAddress .parse(toListcs); msg.setRecipients(Message.RecipientType.CC, iaToListcs); // 抄送人 } // 密送 if (ms != null) { toListms = getMailList(ms); new InternetAddress(); InternetAddress[] iaToListms = InternetAddress .parse(toListms); msg.setRecipients(Message.RecipientType.BCC, iaToListms); // 密送人 } msg.setSentDate(new Date()); // 发送日期 msg.setSubject(subject); // 主题 msg.setText(content); // 内容 // 显示以html格式的文本内容 messageBodyPart.setContent(content, "text/html;charset=utf-8"); multipart.addBodyPart(messageBodyPart); // 2.保存多个附件 if (fileList != null) { addTach(fileList, multipart); } msg.setContent(multipart); // 邮件服务器进行验证 Transport tran = session.getTransport("smtp"); tran.connect("xxx", //邮件服务器地址 "shengjk1@xxx.cn",//邮箱地址 "p@ssw0rd");//邮箱的密码 tran.sendMessage(msg, msg.getAllRecipients()); // 发送 System.out.println("邮件发送成功"); } catch (Exception e) { logger.info("邮件发送时异常",e); } } // 添加多个附件 public void addTach(String fileList[], Multipart multipart) throws MessagingException, UnsupportedEncodingException { for (int index = 0; index < fileList.length; index++) { MimeBodyPart mailArchieve = new MimeBodyPart(); FileDataSource fds = new FileDataSource(fileList[index]); mailArchieve.setDataHandler(new DataHandler(fds)); mailArchieve.setFileName(MimeUtility.encodeText(fds.getName(), "utf-8", "B")); multipart.addBodyPart(mailArchieve); } } private String getMailList(String[] mailArray) { StringBuffer toList = new StringBuffer(); int length = mailArray.length; if (mailArray != null && length < 2) { toList.append(mailArray[0]); } else { for (int i = 0; i < length; i++) { toList.append(mailArray[i]); if (i != (length - 1)) { toList.append(","); } } } return toList.toString(); } public static void forSend(String subject,String content){ SendMail send = SendMail.getInstance(); String to[] = { "shengjk1@xxx.cn"};//收件人的地址 String cs[] = null; String ms[] = null; if(content==null||content.length()==0){ content = "这是邮件内容,仅仅是测试,不需要回复"; } String fromEmail = "shengjk1@xxx.cn";//发件人的地址 String[] arrArchievList = null; // 2.保存多个附件 send.send(to, cs, ms, subject, content, fromEmail, arrArchievList); }// public static void main(String args[]) {// forSend(null);// }}
pom.xml文件
<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version> </dependency>
0 0
- 公司内部邮箱服务器发送邮件 java版
- Java邮箱自动发送邮件
- python-mail腾讯邮箱服务器发送邮件
- phpmailer 发送邮件,利用公司邮箱服务器
- 常用邮箱接收邮件服务器与发送邮件服务器列表
- Jenkins:配置qq邮箱作为发送邮件的邮箱服务器
- java mail(发送邮件--163邮箱)
- java程序实现邮箱发送邮件功能
- java调用163邮箱发送邮件
- java调用163邮箱发送邮件
- java自动发送邮件到目标邮箱
- jsp,java项目邮箱注册发送邮件
- Java发送邮件给其他邮箱
- Java通过QQ邮箱发送邮件
- java mail(发送邮件--163邮箱)
- java通过qq邮箱发送邮件
- 简单的java实现邮箱发送邮件
- 纯Java实现网易邮箱发送邮件
- python学习手册(4)
- TCP网络编程中RST分节总结
- phpcms路由模式自定义访问路径
- 纯字符串assemble和parser比较,fastjson 比 json要至少慢5倍
- 毕业5年决定人的一生
- 公司内部邮箱服务器发送邮件 java版
- POJ 2157 Maze
- 【数据挖掘案例实践】Loan Status
- 有关I/O流的一些小程序
- 学习data mining的7个步骤
- 分解质因数
- phpcms关于url路由在二次开发中的使用方法介绍-实现泛解析
- 每一个努力的人,都值得被认可
- Oracle中计算年龄SQL语句