51代码网ORACLEMYSQLSQL SERVER其它数据库java/jspasp/asp.netC/C++/VC++APP应用其它语言服务器应用
您现在的位置: 51代码网 >> 其它 >> 文章正文

javamail实现收发邮件功能如何在php编写的web页面中实现

更新时间:2012-1-12:  来源:51代码网

第一个类:MailSenderInfo.java 

Java代码:

  package com.util.mail;  
  /**  
  * 发送邮件需要使用的基本信息  
  */  
  import java.util.Properties;  
  public class MailSenderInfo {  
  // 发送邮件的服务器的IP和端口  
  private String mailServerHost;  
  private String mailServerPort = "25";  
  // 邮件发送者的地址  
  private String fromAddress;  
  // 邮件接收者的地址  
  private String toAddress;  
  // 登陆邮件发送服务器的用户名和密码  
  private String userName;  
  private String password;  
  // 是否需要身份验证  
  private boolean validate = false;  
  // 邮件主题  
  private String subject;  
  // 邮件的文本内容  
  private String content;  
  // 邮件附件的文件名  
  private String[] attachFileNames;  
  /**  
  * 获得邮件会话属性  
  */  
  public Properties getProperties(){  
  Properties p = new Properties();  
  p.put("mail.smtp.host", this.mailServerHost);  
  p.put("mail.smtp.port", this.mailServerPort);  
  p.put("mail.smtp.auth", validate ? "true" : "false");  
  return p;  
  }  
  public String getMailServerHost() {  
  return mailServerHost;  
  }  
  public void setMailServerHost(String mailServerHost) {  
  this.mailServerHost = mailServerHost;  
  }  
  public String getMailServerPort() {  
  return mailServerPort;  
  }  
  public void setMailServerPort(String mailServerPort) {  
  this.mailServerPort = mailServerPort;  
  }  
  public boolean isValidate() {  
  return validate;  
  }  
  public void setValidate(boolean validate) {  
  this.validate = validate;  
  }  
  public String[] getAttachFileNames() {  
  return attachFileNames;  
  }  
  public void setAttachFileNames(String[] fileNames) {  
  this.attachFileNames = fileNames;  
  }  
  public String getFromAddress() {  
  return fromAddress;  
  }  
  public void setFromAddress(String fromAddress) {  
  this.fromAddress = fromAddress;  
  }  
  public String getPassword() {  
  return password;  
  }  
  public void setPassword(String password) {  
  this.password = password;  
  }  
  public String getToAddress() {  
  return toAddress;  
  }  
  public void setToAddress(String toAddress) {  
  this.toAddress = toAddress;  
  }  
  public String getUserName() {  
  return userName;  
  }  
  public void setUserName(String userName) {  
  this.userName = userName;  
  }  
  public String getSubject() {  
  return subject;  
  }  
  public void setSubject(String subject) {  
  this.subject = subject;  
  }  
  public String getContent() {  
  return content;  
  }  
  public void setContent(String textContent) {  
  this.content = textContent;  
  }  
  }  

 

第二个类:SimpleMailSender.java
Java代码  

  package com.util.mail;  
   
  import java.util.Date;  
  import java.util.Properties;  
  import javax.mail.Address;  
  import javax.mail.BodyPart;  
  import javax.mail.Message;  
  import javax.mail.MessagingException;  
  import javax.mail.Multipart;  
  import javax.mail.Session;  
  import javax.mail.Transport;  
  import javax.mail.internet.InternetAddress;  
  import javax.mail.internet.MimeBodyPart;  
  import javax.mail.internet.MimeMessage;  
  import javax.mail.internet.MimeMultipart;  
   
  /**  
  * 简单邮件(不带附件的邮件)发送器  
  */  
  public class SimpleMailSender {  
  /**  
  * 以文本格式发送邮件  
  * @param mailInfo 待发送的邮件的信息  
  */  
  public boolean sendTextMail(MailSenderInfo mailInfo) {  
  // 判断是否需要身份认证  
  MyAuthenticator authenticator = null;  
  Properties pro = mailInfo.getProperties();  
  if (mailInfo.isValidate()) {  
  // 如果需要身份认证,则创建一个密码验证器  
  authenticator = new MyAuthenticator(mailInfo.getUserName(), mailInfo.getPassword());  
  }  
  // 根据邮件会话属性和密码验证器构造一个发送邮件的session  
  Session sendMailSession = Session.getDefaultInstance(pro,authenticator);  
  try {  
  // 根据session创建一个邮件消息  
  Message mailMessage = new MimeMessage(sendMailSession);  
  // 创建邮件发送者地址  
  Address from = new InternetAddress(mailInfo.getFromAddress());  
  // 设置邮件消息的发送者  
  mailMessage.setFrom(from);  
  // 创建邮件的接收者地址,并设置到邮件消息中  
  Address to = new InternetAddress(mailInfo.getToAddress());  
  mailMessage.setRecipient(Message.RecipientType.TO,to);  
  // 设置邮件消息的主题  
  mailMessage.setSubject(mailInfo.getSubject());  
  // 设置邮件消息发送的时间  
  mailMessage.setSentDate(new Date());  
  // 设置邮件消息的主要内容  
  String mailContent = mailInfo.getContent();  
  mailMessage.setText(mailContent);  
  // 发送邮件  
  Transport.send(mailMessage);  
  return true;  
  } catch (MessagingException ex) {  
  ex.printStackTrace();  
  }  
  return false;  
  }  
   
  /**  
  * 以HTML格式发送邮件  
  * @param mailInfo 待发送的邮件信息  
  */  
  public static boolean sendHtmlMail(MailSenderInfo mailInfo){  
  // 判断是否需要身份认证  

[1] [2] 下一页

  • 上一篇文章:
  • 下一篇文章: 没有了
  • 赞助商链接
    推荐文章
  • 此栏目下没有推荐文章
  • {
    设为首页 | 加入收藏 | 友情链接 | 网站地图 | 联系站长 |