书签 分享 收藏 举报 版权申诉 / 31

类型JavaMail使用.docx

  • 文档编号:24640334
  • 上传时间:2023-05-29
  • 格式:DOCX
  • 页数:31
  • 大小:25.96KB

Servlet代码如下(SendTextMail.java)

packageservlets;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importbeans.TextMail;

publicclassSendTextMailextendsHttpServlet{

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

throwsIOException,ServletException{

//设置是新浪邮箱的SMTP地址

Stringhost="";

//设置邮箱账户名称

Stringname="jjqibmbld";

//设置邮箱帐号密码

Stringpassword="123";

//设置邮件内容

TextMailmail=newTextMail(host,name,password);

mail.setFrom(request.getParameter("from"));

mail.setTo(request.getParameter("to"));

mail.setSubject(request.getParameter("subject"));

mail.setText(request.getParameter("content"));

response.setContentType("text/html");

response.setCharacterEncoding("gb2312");

PrintWriterout=response.getWriter();

//发送邮件

if(mail.send())

out.print("邮件发送成功!


");

else

out.print("邮件发送失败!


");

}

}

JavaBean的代码如下(TextMail.java)

packagebeans;

importjava.util.Properties;

importjavax.mail.BodyPart;

importjavax.mail.Message;

importjavax.mail.MessagingException;

importjavax.mail.NoSuchProviderException;

importjavax.mail.Session;

importjavax.mail.Transport;

importjavax.mail.internet.AddressException;

importjavax.mail.internet.InternetAddress;

importjavax.mail.internet.MimeMessage;

/**

*功能:

向指定的邮箱地址发送一封文本邮件

*/

publicclassTextMail{

privateMimeMessagemessage;

privatePropertiesprops;

privateSessionsession;

privateStringname="";

privateStringpassword="";

/**

*完成发送邮件的初始化工作

*@paramhost

*/

publicTextMail(Stringhost,Stringname,Stringpassword)

{

this.name=name;

this.password=password;

props=System.getProperties();

//设置SMTP主机

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

//设置SMTP验证属性

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

//获得邮件会话对象

MyAuthenticatorauth=newMyAuthenticator(name,password);

session=Session.getDefaultInstance(props,auth);

//创建MIME邮件对象

message=newMimeMessage(session);

}

/**

*设置邮件发送人

*@paramfrom

*/

publicvoidsetFrom(Stringfrom)

{

try{

message.setFrom(newInternetAddress(from));

}catch(AddressExceptione){

e.printStackTrace();

}catch(MessagingExceptione){

e.printStackTrace();

}

}

/**

*设置邮件收件人

*@paramto

*/

publicvoidsetTo(Stringto)

{

try{

message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to));

}catch(AddressExceptione){

e.printStackTrace();

}catch(MessagingExceptione){

e.printStackTrace();

}

}

/**

*设置邮件主题

*@paramsubject

*/

publicvoidsetSubject(Stringsubject)

{

try{

message.setSubject(subject);

}catch(Exceptione){

e.printStackTrace();

}

}

/**

*设置邮件正文

*@paramtext

*/

publicvoidsetText(Stringtext){

try{

message.setText(text);

}catch(MessagingExceptione){

e.printStackTrace();

}

}

/**

*发送邮件

*@return

*/

publicbooleansend(){

try{

//创建SMTP邮件协议发送对象

Transporttransport=session.getTransport("smtp");

//取得与邮件服务器的连接

transport.connect((String)props.get("mail.smtp.host"),name,password);

//通过邮件服务器发送邮件

transport.sendMessage(message,message.getRecipients(Message.RecipientType.TO));

transport.close();

returntrue;

}catch(NoSuchProviderExceptione){

e.printStackTrace();

returnfalse;

}catch(MessagingExceptione){

e.printStackTrace();

returnfalse;

}

}

}

其中用到一个辅助类来验证stmp的合法性,其代码如下(MyAuthenticator.java)

packagebeans;

importjavax.mail.Authenticator;

importjavax.mail.PasswordAuthentication;

publicclassMyAuthenticatorextendsAuthenticator{

Stringname;

Stringpassword;

publicMyAuthenticator(Stringname,Stringpassword){

this.name=name;

this.password=password;

getPasswordAuthentication();

}

protectedPasswordAuthenticationget

配套讲稿:

如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

特殊限制:

部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

关 键  词:
JavaMail 使用
提示  冰豆网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:JavaMail使用.docx
链接地址:https://www.bdocx.com/doc/24640334.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2008-2022 冰点文档网站版权所有

经营许可证编号:鄂ICP备2022015515号-1

收起
展开