如何使用JSP开发WebMail系统__教程 |
|
日期:2007-5-20 0:38:40 人气:93 [大 中 小] |
|
|
|
} contentbody=buf.toString(); }
如果信息类型为text/html,不同的信息类型处理的方式稍有不同(如下段代码),由于篇幅有限不再一一说明。
else if (message[j].isMimeType("text/html")) contentbody=(String)o+" | ";
发送邮件代码段
根据用户输入的内容,获取邮件头信息代码如下:
String host = "nyist.net"; String from = request.getParameter("from"); String to = request.getParameter("to"); String subject = request.getParameter("subject"); String content = request.getParameter("content"); Properties props = System.getProperties(); //设置邮件服务 props.put("mail.smtp.host", host); Session session2 =Session.getInstance(props, null);
设置邮件头信息代码如下:
MimeMessage message =new MimeMessage(session2); message.setFrom(new InternetAddress(from)); message.addRecipient(Message.RecipientType.TO,new InternetAddress(to)); message.setSubject(subject); message.setSentDate(new Date()); // create the message part MimeBodyPart messageBodyPart =new MimeBodyPart();
设置邮件内容,构建程序段如下:
messageBodyPart.setText(content); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageBodyPart);
用户在发送邮件时常常带有附件,就是将浏览器客户端用户本地的文件传送到POP客户端,实现代码如下:
for (int i=0;i{ com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i); if (!myFile.isMissing()) { myFile.saveAs("/upload/" + myFile.getFileName()); count ++; }
在上传附件的同时,对上传文件的数量进行统计,并通过out.println("上传了"+count + "个文件")将其在屏幕上显示出来。
在发送的信件中如果有附件,使用如下代码进行发送:
for(int i=0;request.getParameter("file"+i)!=null;i++) { messageBodyPart = new MimeBodyPart(); File file=new File("/home/mengyu/ROOT/upload/",request.getParameter("file"+i)); DataSource source =new FileDataSource(file); messageBodyPart.setDataHandler(new DataHandler(source)); messageBodyPart.setFileName(request.getParameter("file"+i)); multipart.addBodyPart(messageBodyPart); } // Put parts in message message.setContent(multipart);
调用Transport的send方法,将构造好MIME Message对象发送出去,代码如下:
Transport.send(message);
删除电子邮件代码段
在通过Web界面使用电子邮件过程中,经常要对接收到垃圾邮件或已查看过的邮件进行删除,这也是电子邮件中必不可少的一个功能,所以我们设计了Web界面中删除电子邮件的相应功能,主要程序代码段如下:
Folder folder=store.getFolder("INBOX"); folder.open(Folder.READ_WRITE); Message message[]=folder.getMessages(); String msg[]=request.getParameterValues("msg");
|
出处:本站原创 作者:佚名 |
|
|