JSP與JavaMail如何編寫靈活的郵件發(fā)送程序

這篇文章給大家分享的是有關(guān)JSP與JavaMail如何編寫靈活的郵件發(fā)送程序的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供明山網(wǎng)站建設(shè)、明山做網(wǎng)站、明山網(wǎng)站設(shè)計、明山網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、明山企業(yè)網(wǎng)站模板建站服務(wù),十年明山做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。





更改后的撰寫界面程序如下:
-------------------------------------------------------------------------------------------




收信人地址:
主題:
信件類型
附件1(自定義):

(輸入文本信息)
附件2(本地):
附件3(遠程):

(輸入URL)







處理郵件的JSP程序如下:
----------------------------------------------------------------------------------------
<%@ page="" contenttype="text/html;charset=GB2312">
<%request.setcharacterencoding("gb2312");%>
<%@ page="" import="Java.util.*,javax.mail.*">
<%@ page="" import="javax.mail.inte.NET.*">
<%@ page="" import="javax.activation.*"><!--要發(fā)送附件必須引入該庫--&gt
<%@ page="" import="java.net.*"><!--要用到URL類--&gt

發(fā)送成功




<%
try{
String tto=request.getParameter("to");
String ttitle=request.getParameter("title");
String emailtype=request.getParameter("emailtype");//獲取email類型
String tcontent=request.getParameter("content");
String tfj1=request.getParameter("fj1");
String tfj2=request.getParameter("fj2");
String tfj3=request.getParameter("fj3");

Properties props=new Properties();
props.put("mail.smtp.host","127.0.0.1");
props.put("mail.smtp.auth","true");
Session s=Session.getInstance(props);
s.setDebug(true);

MimeMessage message=new MimeMessage(s);

//給消息對象設(shè)置發(fā)件人/收件人/主題/發(fā)信時間
InternetAddress from=new InternetAddress("xxf@cafe.com");
message.setFrom(from);
InternetAddress to=new InternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);
message.setSubject(ttitle);
message.setSentDate(new Date());

Multipart mm=new MimeMultipart();//新建一個MimeMultipart對象用來存放多個BodyPart對象

//設(shè)置信件文本內(nèi)容
BodyPart mdp=new MimeBodyPart();//新建一個存放信件內(nèi)容的BodyPart對象
mdp.setContent(tcontent,emailtype+";charset=gb2312");//給BodyPart對象設(shè)置內(nèi)容和格式/編碼方式
mm.addbodyPart(mdp);//將含有信件內(nèi)容的BodyPart加入到MimeMultipart對象中

//設(shè)置信件的附件1(自定義附件:直接將所設(shè)文本內(nèi)容加到自定義文件中作為附件發(fā)送)
mdp=new MimeBodyPart();//新建一個存放附件的BodyPart
DataHandler dh=new DataHandler(tfj1,"text/plain;charset=gb2312");
//新建一個DataHandler對象,并設(shè)置其內(nèi)容和格式/編碼方式
mdp.setFileName("text.txt");//加上這句將作為附件發(fā)送,否則將作為信件的文本內(nèi)容
mdp.setDataHandler(dh);//給BodyPart對象設(shè)置內(nèi)容為dh
mm.addBodyPart(mdp);//將含有附件的BodyPart加入到MimeMultipart對象中

//設(shè)置信件的附件2(用本地上的文件作為附件)
mdp=new MimeBodyPart();
FileDatasource fds=new FileDataSource(tfj2);
dh=new DataHandler(fds);
int ddd=tfj2.lastIndexOf("");
String fname=tfj2.substring(ddd);//提取文件名
String ffname=new String(fname.getBytes("gb2312"),"ISO8859-1");//處理文件名是中文的情況
mdp.setFileName(ffname);//可以和原文件名不一致,但最好一樣
mdp.setDataHandler(dh);
mm.addBodyPart(mdp);

//設(shè)置信件的附件3(用遠程文件作為附件)
mdp=new MimeBodyPart();


URL urlfj=new URL(tfj3);
URLDataSource ur=new URLDataSource(urlfj);
//注:這里用的參數(shù)只能為URL對象,不能為URL字串,在前面類介紹時有誤(請諒解),這里糾正一下.
dh=new DataHandler(ur);
int ttt=tfj3.lastIndexOf("/");
String urlname=tfj3.substring(ttt);
//String urlfname=new String(urlname.getBytes("gb2312"),"ISO8859-1");//不知怎么回事,這里不能處理中文問題
mdp.setFileName(urlname);
mdp.setDataHandler(dh);
mm.addBodyPart(mdp);

message.setContent(mm);//把mm作為消息對象的內(nèi)容

message.saveChanges();
Transport transport=s.getTransport("smtp");
transport.connect("127.0.0.1","xxf","coffee");
transport.sendMessage(message,message.getAllRecipients());
transport.close();
%>

發(fā)送成功!

去看看我的信箱



再發(fā)一封


<%
}catch(MessagingException e){
out.println(e.toString());
}
%>

感謝各位的閱讀!關(guān)于“JSP與JavaMail如何編寫靈活的郵件發(fā)送程序”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

名稱欄目:JSP與JavaMail如何編寫靈活的郵件發(fā)送程序
網(wǎng)站URL:http://bm7419.com/article10/jcehdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、電子商務(wù)、關(guān)鍵詞優(yōu)化、微信小程序、商城網(wǎng)站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名