?? sendmailfile.jsp
字號:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="javax.activation.*"%><!--要發送附件必須引入該庫-->
<%@ page import="java.net.*"%><!--要用到URL類-->
<%!
public String codeToString(String str)
{//處理中文字符串的函數
String s=str;
try
{
byte tempB[]=s.getBytes("ISO-8859-1");
s=new String(tempB);
return s;
}
catch(Exception e)
{
return s;
}
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>發送郵件結果</title>
</head>
<body>
<%
try{
String to_mail=codeToString(request.getParameter("to"));
String to_title=codeToString(request.getParameter("title"));
String to_content=codeToString(request.getParameter("content"));
Properties props=new Properties();
props.put("mail.smtp.host","smtp.126.com");
props.put("mail.smtp.auth","true");
Session s=Session.getInstance(props);
s.setDebug(true);
MimeMessage message=new MimeMessage(s);
//給消息對象設置發件人、收件人、主題、發信時間
InternetAddress from=new InternetAddress("tougao-email@126.com");
message.setFrom(from);
InternetAddress to=new InternetAddress(to_mail);
message.setRecipient(Message.RecipientType.TO,to);
message.setSubject(to_title);
message.setSentDate(new Date());
Multipart mm=new MimeMultipart();//新建一個MimeMultipart對象用來存放多個BodyPart對象
//設置信件文本內容
BodyPart mdp=new MimeBodyPart();//新建一個存放信件內容的BodyPart對象
mdp.setContent(to_content,"text/html;charset=gb2312");//給BodyPart對象設置內容和格式/編碼方式
mm.addBodyPart(mdp);//將含有信件內容的BodyPart加入到MimeMultipart對象中
//設置信件的附件1(自定義附件:直接將所設文本內容加到自定義文件中作為附件發送)
mdp=new MimeBodyPart();//新建一個存放附件的BodyPart
DataHandler dh=new DataHandler("JavaMail附件測試","text/plain;charset=gb2312");
//新建一個DataHandler對象,并設置其內容和格式/編碼方式
mdp.setFileName("fj.txt");//加上這句將作為附件發送,否則將作為信件的文本內容
mdp.setDataHandler(dh);//給BodyPart對象設置內容為dh
mm.addBodyPart(mdp);//將含有附件的BodyPart加入到MimeMultipart對象中
//設置信件的附件2(用本地上的文件作為附件)
mdp=new MimeBodyPart();
FileDataSource fds=new FileDataSource("d:/story.txt");
dh=new DataHandler(fds);
mdp.setFileName("story.txt");//可以和原文件名不一致
mdp.setDataHandler(dh);
mm.addBodyPart(mdp);
message.setContent(mm);//把mm作為消息對象的內容
message.saveChanges();
Transport transport=s.getTransport("smtp");
//以smtp方式登錄郵箱,第一個參數是發送郵件用的郵件服務器SMTP地址,第二個參數為用戶名,第三個參數為密碼
transport.connect("smtp.126.com","tougao-email","8807698");
transport.sendMessage(message,message.getAllRecipients());
transport.close();
%>
<div align="center">
<p><font color="#FF6600">發送成功!</font></p>
</div>
<%
}catch(MessagingException e){
out.println(e.toString());
}
%>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -