📄 viewmail.jsp
字号:
<%@ page language="java" contentType="text/html;charset=gb2312" %>
<%@ page import="java.util.*,java.io.*,java.text.*" %>
<%@ page import="javax.mail.*,javax.mail.internet.*,javax.activation.*,service.Mail" %>
<style type="text/css">
<!--
p { font-family: "宋体"; font-size: 9pt;}
td {font-size: 9pt ; line-height:normal; }
A{text-transform: none; text-decoration: none; font-size: 9pt;}
a:hover {text-decoration:underline; font-size: 9pt}
body { font-size: 9pt}
.mjMenuLink {
text-decoration: none;
CURSOR: hand;
}
-->
</style>
<%!
private String getDisplayAddress(Address a)
{ //转换RFC822为Unicode
String pers = null;
String addr = null;
if(a instanceof InternetAddress &&((pers=((InternetAddress)a).getPersonal())!=null))
addr=pers+" "+"<"+((InternetAddress)a).getAddress()+">";
else
addr = a.toString();
return addr;
}
%>
<%
Session mailsession=Session.getInstance(System.getProperties(),null);
mailsession.setDebug(false);
Store store=mailsession.getStore("pop3");//protocol为连接协议,IMAP或是POP
store.connect(session.getAttribute("pop").toString(),session.getAttribute("user").toString(),session.getAttribute("pwd").toString());//mailhost主机,user为用户名,passwd为密码
//store.connect("pop.126.com","tougao-email","8807698");//mailhost主机,user为用户名,passwd为密码
Folder folder = store.getFolder("INBOX");
try
{ folder.open(Folder.READ_WRITE);}
catch (MessagingException ex)
{
folder.open(Folder.READ_ONLY);}
Message message[]=folder.getMessages();
FetchProfile fp=new FetchProfile();
fp.add(FetchProfile.Item.ENVELOPE);
fp.add(FetchProfile.Item.FLAGS);
fp.add("X-Mailer");
folder.fetch(message,fp);
int id=0,j=0;
Mail pmm = null;
for(int i=0;i<request.getParameter("id").length();i++)//假设要阅读第ID个邮件。
id=id*10+(request.getParameter("id").charAt(i)-48);
for(j=0;j<id;j++);
message[j].setFlag(Flags.Flag.SEEN,true);
pmm = new Mail((MimeMessage)message[j]);
if ("del".equals(request.getParameter("act"))){
pmm.delMail();
response.sendRedirect("viewmailall.jsp");
}
else if ("fwd".equals(request.getParameter("act"))){
Properties props=new Properties();
props.put("mail.smtp.from",session.getAttribute("from").toString());
props.put("mail.smtp.to",request.getParameter("toAddr"));
props.put("mail.smtp.host",session.getAttribute("smtp").toString());
props.put("mail.smtp.auth","true");
props.put("mail.smtp.user",session.getAttribute("user").toString());
props.put("mail.smtp.password",session.getAttribute("pwd").toString());
pmm.fwdMail(props);
%>
<script language="JavaScript">
alert("邮件已经成功转发至<%=request.getParameter("toAddr")%>!");
history.go(-1);
</script>
<%
}
else
{
%>
<script language="javascript">
function fwdMail(){
var pass=prompt("请输入转发邮件地址","@");
if (pass!=null){
location.href="?act=fwd&id=<%=request.getParameter("id")%>&toAddr="+pass;
}
}
</script>
<table width="95%" border="0" align="center" bgcolor="#EFF7FF" cellspacing="0" style="border:1px #8CA5B5 solid;">
<tr>
<td colspan="2">
<div align="center"><a href="send.jsp?from=<%=pmm.getFrom()%>">回复</a>
<a href="Javascript:fwdMail();">转发</a> <a href="?act=del&id=<%=request.getParameter("id")%>">删除</a>
<a href="Javascript:history.go(-1);">返回</a> </div>
</td>
</tr>
</table>
<table width="95%" border="0" bgColor="#93BEE2" align="center" cellspacing="0" style='border:1px #336699 solid;'>
<tr>
<tr>
<td width="17%" height="20"> <div align="right"><font class="s" color="#104A7B"><b>日期: </b></font></div></td>
<td width="83%" bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'><table width="100%" border="0" cellspacing="0">
<tr>
<td><%=pmm.getSentDate()%></td>
<td><div align="right"></div></td>
</tr>
</table></tr>
<tr>
<td width="17%" height="20"> <div align="right"><font class="s" color="#104A7B"><b>发件人: </b></font></div></td>
<td width="83%" bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'><%=pmm.getFrom()%></td>
</tr>
<tr>
<td width="17%" height="20"> <div align="right"><font class="s" color="#104A7B"><b>收件人地址: </b></font></div></td>
<td width="83%" bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'><%=pmm.getMailAddress("to")%></td>
</tr>
<tr>
<td height="20" align="right"><font class="s" color="#104A7B"><b>抄送: </b></font></td>
<td bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'><%=pmm.getMailAddress("cc")%></td>
</tr>
<tr>
<td height="20" align="right"><font class="s" color="#104A7B"><b>密送: </b></font></td>
<td bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'><%=pmm.getMailAddress("bcc")%></td>
</tr>
<tr>
<td width="17%" height="20"> <div align="right"><font class="s" color="#104A7B"><b>主题: </b></font></div></td>
<td width="83%" bgcolor="#93BEE2" style='border-bottom:1px #336699 solid;'>
<%=pmm.getSubject()%> </td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" id="zoom"> <%
pmm.getMailContent((Part)message[j]);
out.print(pmm.getBodyText());%></td>
</tr>
<%if (pmm.isContainAttach((Part)message[j])){%>
<tr>
<td colspan="2" height="20" bgcolor="#DBEAF5" style='border-top:1px #336699 solid; border-bottom:1px #336699 solid;'>
<div align="center"><font class="s" color="#104A7B"><b>附 件</b></font></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2"> <%
String[] files=pmm.getAttachMentNames((Part)message[j]);
for (int k=0;k<files.length;k++)
out.print(files[k]+"<br>");
pmm.setAttachPath("c:\\mails");
pmm.saveAttachMent((Part)message[j]);
out.print("已经下载到本地c:\\mails目录!");
%></td>
</tr>
<%}%>
</table>
<%
}
folder.close(true);
store.close();
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -