Java Mail 例子

王朝java/jsp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

网上很多,不过一般都是没有smtp验证的,下边是一段示例代码:

不能直接运行的,不过,可以看看里面关于验证的部分。

//发送邮件函数

public boolean sendMail(String mailTo,String mailSubject,String mailBody){

//发送email

try {

//default account information

String smtpServer = "smtp.smtpserver.com";

String smtpAuth = "true";

String smtpUser = "username";

String smtpPassword = "password";

String From = "from@yourserver.com";

String To = mailTo;

String Subject = mailSubject;

String Text = mailBody;

java.util.ResourceBundle resBundle;

resBundle = java.util.ResourceBundle.getBundle("mailinfo",

Locale.SIMPLIFIED_CHINESE);

if (resBundle != null) {

smtpServer = resBundle.getString("mail.smtp.host");

smtpAuth = resBundle.getString("mail.smtp.auth");

smtpUser = resBundle.getString("mail.smtp.user");

smtpPassword = resBundle.getString("mail.smtp.password");

From = resBundle.getString("mail.smtp.from");

}

Properties props = new Properties();

Session sendMailSession;

Transport transport;

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

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

if ("true".equals(smtpAuth)) {

//smtp服务器需要验证,用MyAuthertiactor来创建mail session

MyAuthenticator myauth = new MyAuthenticator(smtpUser, smtpPassword);

sendMailSession = Session.getInstance(props, myauth);

}

else {

sendMailSession = Session.getInstance(props);

}

//Debug

sendMailSession.setDebug(true);

Message newMessage = new MimeMessage(sendMailSession);

newMessage.setFrom(new InternetAddress(From));

newMessage.setRecipient(Message.RecipientType.TO,

new InternetAddress(mailTo));

newMessage.setSubject(Subject);

newMessage.setSentDate(new Date());

newMessage.setText(Text);

newMessage.saveChanges();

transport = sendMailSession.getTransport("smtp");

transport.send(newMessage, newMessage.getAllRecipients());

transport.close();

}

catch (Exception mailEx) {

System.err.println("Send Mail Error:" + mailEx.getMessage());

return false;

}

return true;

}

//smtp需要验证时候的验证类

class MyAuthenticator

extends javax.mail.Authenticator {

private String strUser;

private String strPwd;

public MyAuthenticator(String user, String password) {

this.strUser = user;

this.strPwd = password;

}

protected PasswordAuthentication getPasswordAuthentication() {

return new PasswordAuthentication(strUser, strPwd);

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有