⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testall.jsp

📁 J2EE独立开发制作
💻 JSP
字号:
<%@ page contentType="text/html;charset=GB2312" %> 
<% request.setCharacterEncoding("gb2312");%> 
<%@ page import="java.util.*,javax.mail.*"%> 
<%@ page import="javax.mail.internet.*"%> 
<%@ page import="javax.activation.*"%><!--要发送附件必须引入该库--> 
<%@ page import="java.net.*"%><!--要用到URL类--> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title> 发送成功 </title> 
</head> 
<body> 
<% 
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","smtp.163.com"); 
props.put("mail.smtp.auth","true"); 
Session s=Session.getInstance(props); 
s.setDebug(true); 

MimeMessage message=new MimeMessage(s); 

//给消息对象设置发件人/收件人/主题/发信时间 
InternetAddress from=new InternetAddress("sungxmail@163.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对象 

//设置信件文本内容 
BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象 
mdp.setContent(tcontent,emailtype+";charset=gb2312");//给BodyPart对象设置内容和格式/编码方式 
mm.addBodyPart(mdp);//将含有信件内容的BodyPart加入到MimeMultipart对象中 

//设置信件的附件1(自定义附件:直接将所设文本内容加到自定义文件中作为附件发送) 
mdp=new MimeBodyPart();//新建一个存放附件的BodyPart 
DataHandler dh=new DataHandler(tfj1,"text/plain;charset=gb2312"); 
//新建一个DataHandler对象,并设置其内容和格式/编码方式 
mdp.setFileName("text.txt");//加上这句将作为附件发送,否则将作为信件的文本内容 
mdp.setDataHandler(dh);//给BodyPart对象设置内容为dh 
mm.addBodyPart(mdp);//将含有附件的BodyPart加入到MimeMultipart对象中 

//设置信件的附件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); 

//设置信件的附件3(用远程文件作为附件) 
mdp=new MimeBodyPart(); 


URL urlfj=new URL(tfj3); 
URLDataSource ur=new URLDataSource(urlfj); 
//注:这里用的参数只能为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作为消息对象的内容 

message.saveChanges(); 
Transport transport=s.getTransport("smtp"); 
transport.connect("smtp.163.com","sungxmail","sungxd"); 
transport.sendMessage(message,message.getAllRecipients()); 
transport.close(); 
%> 
<div align="center"> 
<p><font color="#FF6600"> 发送成功! </font></p> 
<p><a href="recmail.jsp"> 去看看我的信箱 </a><br> 
<br> 
<a href="index.htm"> 再发一封 </a> </p> 
</div> 
<% 
}catch(MessagingException e){ 
out.println(e.toString()); 
} 
%> 
</body> 
</html> 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -