java mail工具_JAVA实用工具–javamail

在实现javamail之前首先要搭建邮件服务器

James

在进行WEB程序开发的时候需要使用Tomcat服务器,但是Tomcat服务器并不支持邮件的处理操作,所以要想进行邮件的发送,还需要配置一个单独的Java Mail服务器,James 就是一个企业级的邮件服务器,它完全实现了SMTP(Simple Mail Transfer Protocol,简单邮件传输协议) 和POP3(Post Office Protocol 3,邮局协议的第三个版本)以及NNTP (Network News Transport Protocol,网络新闻传输协议)协议。同时,James服务器又是一个邮件应用程序平台。它可以让用户常容易的实现出很强大的邮件应用程序。读者可以使用Apache的James服务器,直接登陆http://james.apache.org/,下载James服务器。

在网上可以直接搜索配置James服务器,有大量的博文可以参考,我在这里就不累赘重复了,有一点值得 注意的是:

在配置过程中有打

telnet localhost 4555

没有反应的需要在控制面板–>程序与功能–>打开或关闭windows功能中 打开Telnet服务即可

JavaMail简介及配置

JavaMail是Java中专门用来处理电子邮件处理的一套规范,使用它可以方便的进行mail的发送、也可以使用JavaMail开发出类似于Microsoft Outlook样的应用程序。

JavaMail核心类:

1、 javax.mail.Session:表示整个邮件的会话,所有的类都要通过session才可以使用;

2、 javax.mail.Message:Message类表示的是邮件传递的内容;

3、 javax.mail.Address:当确定好Session和Message之后,就可以通过Address进行发送地址的指定;

4、 javax.mail. Authenticator:使用此类可以通过用户名和密码保护资源;

5、 javax.mail.Transport:在消息发送的最后一步使用此类,此类的功能是使用指定的语言发送消息;

6、 javax.mail.Store:此类主要是进行信息的读、写等操作,也可以通过此类读取文件夹中的邮件;

7、 javax.mail.Folder:用于对邮件进行分级管理。

实例:发送普通邮件

发送邮件依靠之前配置过的James服务器和JavaMail(JAF)类完成,但是在进行邮件发送时,一定要注意的是,由于现在所有的邮箱用户都保存在了James服务器上,所以一定要首先编写一个可以用于服务器验证用户名和密码的操作类,此类必须继承javax.mail.Authenticator类,而且必须覆写getPasswordAuthentication()方法。

发送普通文本格式的E-mail

function checkform(myform){

for(i=0;i

if(myform.elements[i].value==""){

alert(myform.elements[i].title+"不能为空!");

myform.elements[i].focus();

return false;

}

}

}

   
 
收件人:
发件人:
密  码:
主  题:
内  容:
  
 
   

mydeal.jsp

try{

request.setCharacterEncoding("GBK");

String from=request.getParameter("from");

String to=request.getParameter("to");

String subject=request.getParameter("subject");

String messageText=request.getParameter("content");

String password=request.getParameter("password");

String mailserver="localhost"; //局域网发送邮件时的SMTP服务器

SimpleEmail email = new SimpleEmail();

email.setHostName(mailserver);//设置邮件服务器

email.setAuthentication(from,password);//设置邮箱用户名和密码

email.setFrom(from); //设置发件人地址

email.addTo(to); //设置收件人地址

email.setSubject(subject); //设置主题

email.setSentDate(new Date());//设置发送时间

email.setMsg(messageText); //设置发送的消息

email.send(); //发送邮件

out.println("");

}catch(Exception e){

e.printStackTrace();

System.out.println("发送邮件产生的错误:"+e.getMessage());

out.println("");

}

%>

需要导的包:mail.jar

https://www.cnblogs.com/oumyye/tag/java/default.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值