您的位置:首页 > 编程语言 > Java开发

后台自动发邮件--java代码

2010-02-23 16:18 357 查看
import java.util.Properties;

import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SendMail {

/**
* @param args
*/
public static void main(String[] args) {
Properties props = System.getProperties();
// 设置smtp服务器
props.setProperty("mail.smtp.host", "smtp.126.com");
// 现在的大部分smpt都需要验证了
props.put("mail.smtp.auth", "true");

Session s = Session.getInstance(props);
// 为了查看运行时的信息
s.setDebug(true);
// 由邮件会话新建一个消息对象
MimeMessage message = new MimeMessage(s);
try {
// 发件人
InternetAddress from = new InternetAddress("fasongren@126.com");
message.setFrom(from);
// 收件人
InternetAddress to = new InternetAddress("jieshouren@163.com");
message.setRecipient(Message.RecipientType.TO, to);
// 邮件标题
message.setSubject("test");
String content = "测试内容";
// 邮件内容,也可以使纯文本"text/plain"
message.setContent(content, "text/html;charset=GBK");

/****下面代码是发送附件******
String fileName = "d://hello.txt";
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("Hi");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);

messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(fileName);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(fileName);
multipart.addBodyPart(messageBodyPart);

message.setContent(multipart);*/

message.saveChanges();
Transport transport = s.getTransport("smtp");
// smtp验证,就是你用来发邮件的邮箱用户名密码
transport.connect("smtp.126.com", "username", "password");
// 发送
transport.sendMessage(message, message.getAllRecipients());
transport.close();

} catch (Exception e) {
e.printStackTrace();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: