JavaMail實(shí)現(xiàn)發(fā)送超文本(html)格式郵件的方法
本文實(shí)例講述了JavaMail實(shí)現(xiàn)發(fā)送超文本(html)格式郵件的方法。分享給大家供大家參考。具體如下:
附件以超文本形式,很常用,與普通的郵件,只是查了一些設(shè)置,只有處理方式有些細(xì)微的差別
代碼如下:
<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.util.*"%>
<%@ page import="javax.mail.*" %>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="javax.activation.*" %>
<%
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");
//****如果是在Internet上發(fā)送電子郵件,
使用這段代碼自動(dòng)生成SMTP的主機(jī)名稱********/
//int n =from.indexOf('@');
//int m=from.length() ;
//String mailserver ="smtp."+from.substring(n+1,m);
String mailserver="mrlx";
//在局域網(wǎng)上發(fā)送電子郵件使用這句代碼指定SMTP服務(wù)器
Properties prop =new Properties();
prop.put("mail.smtp.host",mailserver);
prop.put("mail.smtp.auth","true");
Session sess =Session.getInstance(prop);
sess.setDebug(true);
MimeMessage message=new MimeMessage(sess);
//給消息對(duì)象設(shè)置收件人、發(fā)件人、主題、發(fā)信時(shí)間
InternetAddress mail_from =new InternetAddress(from);
message.setFrom(mail_from);
InternetAddress mail_to =new InternetAddress(to);
message.setRecipient(Message.RecipientType.TO,mail_to);
message.setSubject(subject);
message.setSentDate(new Date());
Multipart mul=new MimeMultipart();
//新建一個(gè)MimeMultipart對(duì)象來(lái)存放多個(gè)BodyPart對(duì)象
BodyPart mdp=new MimeBodyPart();
//新建一個(gè)存放信件內(nèi)容的BodyPart對(duì)象
mdp.setContent(messageText,"text/html;charset=GBK");
mul.addBodyPart(mdp);
//將含有信件內(nèi)容的BodyPart加入到MimeMulitipart對(duì)象中
message.setContent(mul);
//把mul作為消息對(duì)象的內(nèi)容
message.saveChanges();
Transport transport = sess.getTransport("smtp");
//以smtp方式登陸郵箱,第1個(gè)參數(shù)是發(fā)送郵件用的郵件服務(wù)器SMTP地址,
//第2個(gè)參數(shù)為用戶名,第3個(gè)參數(shù)為密碼
transport.connect(mailserver,from,password);
transport.sendMessage(message,message.getAllRecipients());
transport.close();
out.println("<script language='javascript'>alert('郵件已發(fā)送!');window.location.href='index.jsp';</script>");
}catch(Exception e){
System.out.println("發(fā)送郵件產(chǎn)生的錯(cuò)誤:"+e.getMessage());
out.println("<script language='javascript'>alert('郵件發(fā)送失敗!');window.location.href='index.jsp';</script>");
}
%>
希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。
- Java基于JavaMail實(shí)現(xiàn)向QQ郵箱發(fā)送郵件
- java中javamail發(fā)送帶附件的郵件實(shí)現(xiàn)方法
- java中javamail收發(fā)郵件實(shí)現(xiàn)方法
- JavaWeb中使用JavaMail實(shí)現(xiàn)發(fā)送郵件功能實(shí)例詳解
- Java程序中使用JavaMail發(fā)送帶圖片和附件的郵件
- 基于JavaMail的Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送功能
- 基于SSM框架+Javamail發(fā)送郵件的代碼實(shí)例
- Spring框架JavaMailSender發(fā)送郵件工具類詳解
- Java使用JavaMail API發(fā)送和接收郵件的代碼示例
- 輕松學(xué)會(huì)使用JavaMail?API發(fā)送郵件
相關(guān)文章
Java基礎(chǔ)篇之serialVersionUID用法及注意事項(xiàng)詳解
這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)篇之serialVersionUID用法及注意事項(xiàng)的相關(guān)資料,SerialVersionUID屬性是用于序列化/反序列化可序列化類的對(duì)象的標(biāo)識(shí)符,我們可以用它來(lái)記住可序列化類的版本,以驗(yàn)證加載的類和序列化對(duì)象是否兼容,需要的朋友可以參考下2024-02-02
Java編程經(jīng)典小游戲設(shè)計(jì)-打磚塊小游戲源碼
這篇文章主要介紹了Java編程經(jīng)典小游戲設(shè)計(jì)-打磚塊小游戲源碼,還是挺不錯(cuò)的,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11
解決新版 Idea 中 SpringBoot 熱部署不生效的問題
這篇文章主要介紹了解決新版 Idea 中 SpringBoot 熱部署不生效的問題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-08-08
Java Stream 流實(shí)現(xiàn)合并操作示例
這篇文章主要介紹了Java Stream 流實(shí)現(xiàn)合并操作,結(jié)合實(shí)例形式詳細(xì)分析了Java Stream 流實(shí)現(xiàn)合并操作原理與相關(guān)注意事項(xiàng),需要的朋友可以參考下2020-05-05
JavaEE SpringMVC 請(qǐng)求傳參的示例詳解
這篇文章詳細(xì)介紹了SpringMVC中請(qǐng)求參數(shù)的傳遞和接收方式,包括傳遞單個(gè)參數(shù)、多個(gè)參數(shù)、對(duì)象參數(shù)、數(shù)組參數(shù)、集合參數(shù)以及JSON數(shù)據(jù)的傳遞和處理,感興趣的朋友一起看看吧2025-02-02
log4j中l(wèi)ogger標(biāo)簽中additivity屬性的用法說(shuō)明
這篇文章主要介紹了log4j中l(wèi)ogger標(biāo)簽中additivity屬性的用法說(shuō)明,基于很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12

