java 发送邮件

1、发邮件的接口

public interface MailService{ 
 public void sendMail(String to, String title, String contents);
 public void sendHtmlMail(String to, String title, String contents);
 public void test();
 public void userValidate(UserBaseInfo  userBaseInfo);
}

2、发邮件接口的实现

@Service("mailService")
public class MailServiceImpl implements MailService {
 @Resource(name="mailSender")
 private JavaMailSenderImpl mailSender;
 @Resource(name="mailMessage")
 private SimpleMailMessage mailMessage;
 private static final String SubJect = "无不网络" ;
 private static final String FROM_MAIL_HOST = "";
 private static final String FROM_MAIL_NAME = "";
 private static final String FROM_MAIL_PWD  = "";
 private static final String MAIL_FROM = "";
 public void setMailSender(JavaMailSenderImpl mailSender) {
  this.mailSender = mailSender;
 }
 public void setMailMessage(SimpleMailMessage mailMessage) {
  this.mailMessage = mailMessage;
 } 
 /** 
 * 发送HTML格式邮件  
 * @param to:收件人地址 
 * @param title:邮件标题 
 * @param content:邮件正文 
 */ 
 public void sendHtmlMail(String to, String title, String contents) throws MailException{
  // TODO Auto-generated method stub
  this.mailSender.setHost(FROM_MAIL_HOST);
  this.mailSender.setUsername(FROM_MAIL_NAME);
  this.mailSender.setPassword(FROM_MAIL_PWD);
  MimeMessage msg = this.mailSender.createMimeMessage();
  MimeMessageHelper messageHelper;
  try {
   messageHelper = new MimeMessageHelper(msg, true, "utf-8");
   messageHelper.setFrom(MAIL_FROM);
   messageHelper.setTo(to);
   messageHelper.setSubject(title);
   messageHelper.setText(contents, true); // HTML邮件内容
   this.mailSender.send(msg);
  } catch (Exception e) {

  }
 }
 /** 
 * 发送简单邮件  
 * @param to:收件人地址 
 * @param title:邮件标题 
 * @param content:邮件正文 
 */ 
 public void sendMail(String to, String title, String contents) throws MailException{
  // TODO Auto-generated method stub
  this.mailMessage.setTo(to);
  this.mailMessage.setSubject(title);//主题  
  this.mailMessage.setText(contents);//邮件内容
  this.mailMessage.setFrom(MAIL_FROM);
  this.mailSender.setHost(FROM_MAIL_HOST);
  this.mailSender.setUsername(FROM_MAIL_NAME);
  this.mailSender.setPassword(FROM_MAIL_PWD);
  this.mailSender.send(this.mailMessage);  
 }
 /** 
 * 用户通过邮件验证  
 * @param to:收件人地址  
 * @param userBaseInfo:用户信息 
 */ 
 public void userValidate(UserBaseInfo userBaseInfo) {
  // TODO Auto-generated method stub
  String contents = getContents(userBaseInfo.getUserName(), userBaseInfo.getPassword());
  this.mailSender.setHost(FROM_MAIL_HOST);
  this.mailSender.setUsername(FROM_MAIL_NAME);
  this.mailSender.setPassword(FROM_MAIL_PWD);
  MimeMessage msg = this.mailSender.createMimeMessage();
  MimeMessageHelper messageHelper;
  try {
   messageHelper = new MimeMessageHelper(msg, true, "utf-8");
   messageHelper.setFrom(MAIL_FROM);
   messageHelper.setTo(userBaseInfo.getEmail());
   messageHelper.setSubject(SubJect);
   messageHelper.setText(contents, true); // HTML邮件内容
   this.mailSender.send(msg);
  } catch (Exception e) {

  }
 }
 public void test() {
  // TODO Auto-generated method stub
  System.out.println("test");
 }
 public static String getContents(String userName , String passWord){
  String htmlContents ="" +
  "<html xmlns='http://www.w3.org/1999/xhtml'>" +
  "<head>" +
  "<meta http-equiv='Content-Type' content=\"text/html; charset=UTF-8\" />" +
  "</head>" +
  "<body>" +
  "<table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">" +
  "<tr>" +
  "<td width=\"46%\" height=\"76\">" +
  "<img src=\"http://www.unimarketing.com.cn/unimail/images/logo.jpg\" width=\"220\" height=\"82\" border=\"0\"  />" +
  "</td>" +
  "<td width=\"54%\" height=\"19\" align=\"right\" valign=\"bottom\" style=\"padding-right:10px; padding-bottom:10px;  font-size:12px;font-family:arial,&#39;宋体&#39;;\">如遇问题请拨打" +
  "<strong><font color=\"#FF9900\">&#x670D;务热线:400-898-0118</font></strong>" +
  "</td>" +
  "</tr>" +
  "</table>" +
  "<tr><td><table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\" class=\"text\" style=\"border:1px #d3d3d3 solid\">" +
  "<tr>" +
  "<td align=\"center\">" +
  "<table width=\"96%\" height=\"133\" border=\"0\" cellpadding=\"5\" cellspacing=\"0\">" +
  "<tr>" +
  "<td>&nbsp;</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">尊敬的 ["+userName+"]</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">欢迎您注册无不网络系统</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">" +
  "请点击下面的链接进行激活(如无法点击,请将链接复制到浏览器进行访问):" +
  "</td>" +
  "</tr>" +
  "<tr>" +
  "<a target=\"_blank\"></a>" +
  "</tr>" +
  "<tr>" +
  "<td colspan=\"2\" style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">" +
  "<a href=\"http://192.168.1.100:8080/\" target='_blank'>http://192.168.1.100:8080/</a>" +
  "</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">您的用户名: ["+userName+"]</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;;\">密码: ["+passWord+"] </td>" +
  "</tr>" +
  "<tr>" +
  "<td>&nbsp;</td>" +
  "</tr>" +
  "</table>" +
  "</td>" +
  "</tr>" +
  "<tr>" +
  "<td></td>" +
  "</tr>" +
  "</table>" +
  "<table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\" class=\"text\">" +
  "<tr>" +
  " <td>&nbsp;</td>" +
  "</tr>" +
  "<tr>" +
  "<td style=\"font-size: 12px;font-family:arial,&#39;宋体&#39;; padding-left:10px\">百度知天下!<br  />" +
  "&#x670D;务热线:888-888-8888 ,企业QQ:8888888888,联系时间:周一至周五09:00-18:00</td>" +
  "</tr>" +
  "</table>" +
  "</body>" +
  "</html>";
  return htmlContents;
 }


Spring 配置

<!-- 邮箱配置  -->
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">  
             <value>smtp.exmail.qq.com</value>  
         </property>  
         <property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.timeout">25000</prop>
</props>
</property>
         <property name="username">  
             <value>emailAddress</value>  
         </property>  
         <property name="password">  
             <value>emailPassword</value>  
         </property>  
</bean> 
<bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage"></bean>


注意

首先你要有一个邮箱(这是必须的),在你的邮箱里设置简单的设置一下,让其支持SMTP协议

在spring 中实现发送邮件功能首先需要引入对应的jar包

activation.jar,mail.jar,commons-logging-1.1.jar,Spring的jar包需要引入org.springframework.context.support-3.0.5.RELEASE.jar

特别要注意如果是在myeclipse中开发项目会出现一个error inputstream的错误解决方法是只需要按下面路径找到javaee.jar用rar打开删除里面mail文件就可以如果还不行就把activation也删掉吧!\myeclipse\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_6.0.1.zmyeclipse601200710\data\libraryset\EE_5\javaee.jar


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值