java web 邮件系统_java web邮件收发

packagecom.zjh.shopping.util;importjava.util.Date;importjava.util.Properties;importjavax.activation.DataHandler;importjavax.activation.FileDataSource;importjavax.mail.Authenticator;importjavax.mail.Multipart;importjavax.mail.PasswordAuthentication;importjavax.mail.internet.InternetAddress;importjavax.mail.internet.MimeBodyPart;importjavax.mail.internet.MimeMultipart;importjavax.mail.internet.MimeUtility;public classJavaMailSendUtil {public voidsendmail(String subject, String from, String[] to,

String text, String[] filenames, String mimeType) {try{

Properties props= newProperties();

String smtp= "smtp.163.com"; //设置发送邮件所用到的smtp

String servername = "*******"; //邮箱账号名

String serverpaswd = "******"; //邮箱密码

javax.mail.Session mailSession= null; //邮件会话对象

javax.mail.internet.MimeMessage mimeMsg = null; //MIME 邮件对象

props= java.lang.System.getProperties(); //获得系统属性对象

props.put("mail.smtp.host", smtp); //设置SMTP主机

props.put("mail.smtp.auth", "true"); //是否到服务器用户名和密码验证//到服务器验证发送的用户名和密码是否正确

SmtpAuthenticator myEmailAuther = newSmtpAuthenticator(servername,

serverpaswd);//设置邮件会话 注意这里将认证信息放进了Session的创建参数里

mailSession =javax.mail.Session.getInstance(props,

(Authenticator) myEmailAuther);//设置传输协议

javax.mail.Transport transport = mailSession.getTransport("smtp");//设置from、to等信息

mimeMsg = newjavax.mail.internet.MimeMessage(mailSession);if (null != from && !"".equals(from)) {

InternetAddress sentFrom= newInternetAddress(from);

mimeMsg.setFrom(sentFrom);//设置发送人地址

}

InternetAddress[] sendTo= newInternetAddress[to.length];for (int i = 0; i < to.length; i++) {

System.out.println("发送到:" +to[i]);

sendTo[i]= newInternetAddress(to[i]);

}

mimeMsg.setRecipients(

javax.mail.internet.MimeMessage.RecipientType.TO, sendTo);

mimeMsg.setSubject(subject,"gb2312");

MimeBodyPart messageBodyPart1= newMimeBodyPart();//messageBodyPart.setText(UnicodeToChinese(text));

messageBodyPart1.setContent(text, mimeType);//附件传输格式

Multipart multipart = newMimeMultipart();

multipart.addBodyPart(messageBodyPart1);for (int i = 0; i < filenames.length; i++) {

MimeBodyPart messageBodyPart2= newMimeBodyPart();

String filename= filenames[i].split(";")[0];

String displayname= filenames[i].split(";")[1];//得到数据源

FileDataSource fds = newFileDataSource(filename);//BodyPart添加附件本身

messageBodyPart2.setDataHandler(newDataHandler(fds));//BodyPart添加附件文件名

messageBodyPart2.setFileName(MimeUtility

.encodeText(displayname));

multipart.addBodyPart(messageBodyPart2);

}

mimeMsg.setContent(multipart);//设置信件头的发送日期

mimeMsg.setSentDate(newDate());

mimeMsg.saveChanges();//发送邮件

transport.send(mimeMsg);

transport.close();

System.out.println("发送到成功!!!");

}catch(Exception e) {

e.printStackTrace();

}

}public static void main(String[] args) throwsException {

String title= "测试邮件";//所发送邮件的标题

String from = "************@163.com";//从那里发送

String sendTo[] = { "********@qq.com" };//发送到那里//邮件的文本内容,可以包含html标记则显示为html页面

String content = "test java send mail !!!!!!My blog";//所包含的附件,及附件的重新命名

String fileNames[] = { "d:\\test.jpg;test.jpg"};

JavaMailSendUtil test= newJavaMailSendUtil();try{//MailSender mailsender = new MailSender();

test.sendmail(title, from, sendTo, content, fileNames,"text/html;charset=gb2312");

}catch(Exception ex) {

ex.printStackTrace();

}

}class SmtpAuthenticator extendsAuthenticator {

String username= null;

String password= null;publicSmtpAuthenticator(String username, String password) {super();this.username =username;this.password =password;

}publicPasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication(this.username, this.password);

}

}

}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值