用java编写邮箱_使用java实现发送邮箱

packagecom.mjkt.office.msg.mail;importjava.util.Date;importjava.util.Properties;importjavax.mail.Message;importjavax.mail.Multipart;importjavax.mail.Session;importjavax.mail.Transport;importjavax.mail.internet.InternetAddress;importjavax.mail.internet.MimeBodyPart;importjavax.mail.internet.MimeMessage;importjavax.mail.internet.MimeMultipart;importorg.apache.log4j.Logger;/*** 邮件发送工具类

*@authorzuiweng ***@163.com

* 2019年9月20日*/

public classMailOperation {

Logger logger= Logger.getLogger(MailOperation.class);/*** 发送邮件

*@paramuser 发件人邮箱

*@parampassword 授权码(注意不是邮箱登录密码)

*@paramhost

*@paramfrom 发件人邮箱

*@paramto 接收者邮箱

*@paramsubject 邮件主题

*@paramcontent 邮件内容

*@returnsuccess 发送成功 failure 发送失败

*@throwsException*/

publicString sendMail(String user, String password, String host,

String from, String to, String subject, String content)throwsException {if (to != null){

Properties props=System.getProperties();

props.put("mail.smtp.host", host);

props.put("mail.smtp.auth", "true");

MailAuthenticator auth= newMailAuthenticator();

MailAuthenticator.USERNAME=user;

MailAuthenticator.PASSWORD=password;

Session session=Session.getInstance(props, auth);

session.setDebug(true);try{

MimeMessage message= newMimeMessage(session);

message.setFrom(newInternetAddress(from));if (!to.trim().equals(""))

message.addRecipient(Message.RecipientType.TO,newInternetAddress(to.trim()));

message.setSubject(subject);

MimeBodyPart mbp1= new MimeBodyPart(); //正文

mbp1.setContent(content, "text/html;charset=utf-8");

Multipart mp= new MimeMultipart(); //整个邮件:正文+附件

mp.addBodyPart(mbp1);

message.setContent(mp);

message.setSentDate(newDate());

message.saveChanges();

Transport trans= session.getTransport("smtp");

trans.send(message);

logger.info(message.toString());

System.out.println(message.toString());

}catch(Exception e){

e.printStackTrace();return "failure";

}return "success";

}else{return "failure";

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值