改寫後的使用javamail pop3收信的javabean
来源:互联网 发布:阿尔弗雷德阿德勒 知乎 编辑:程序博客网 时间:2024/06/05 04:24
/*
*Author:tyfun
*DateTime:2003.01.10
*Package:com.westarsoft.mail
*/
package com.westarsoft.mail;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
public class GetMail {
public static String receive(String popServer, String popUser, String popPassword) {
String mailContent = "";
Store store = null;
Folder folder = null;
try {
Properties props = System.getProperties();
Session session = Session.getDefaultInstance(props, null);
store = session.getStore("pop3");
store.connect(popServer, popUser, popPassword);
folder = store.getDefaultFolder();
if(folder == null) throw new Exception("No default folder");
folder = folder.getFolder("INBOX");
if(folder == null) throw new Exception("No POP3 INBOX");
folder.open(Folder.READ_ONLY);
Message[] msgs = folder.getMessages();
for(int msgNum = 0; msgNum < msgs.length; msgNum++) {
mailContent = mailContent + getMessage(msgs[msgNum]) + "/n/n/n/n";
}
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
if (folder!=null) folder.close(false);
if (store!=null) store.close();
}
catch (Exception ex2) {
ex2.printStackTrace();
}
}
return mailContent;
}
public static String getMessage(Message message) {
String mailContent = null;
try {
String from = ((InternetAddress)message.getFrom()[0]).getPersonal();
if(from==null) from = ((InternetAddress)message.getFrom()[0]).getAddress();
mailContent = "FROM: "+from;
String subject = message.getSubject();
mailContent = mailContent + "/n" +"SUBJECT: "+subject;
Part messagePart = message;
Object content = messagePart.getContent();
if(content instanceof Multipart) {
messagePart = ((Multipart)content).getBodyPart(0);
mailContent = mailContent + "/n" +"[ Multipart Message ]";
}
mailContent = mailContent + "/n" +"CONTENT: "+content.toString();
String contentType = messagePart.getContentType();
mailContent = mailContent + "/n" +"CONTENT:"+contentType;
if(contentType.startsWith("text/plain") || contentType.startsWith("text/html")) {
InputStream is = messagePart.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String thisLine = reader.readLine();
while(thisLine!=null) {
mailContent = mailContent + "/n" +thisLine;
thisLine = reader.readLine();
}
}
}
catch(Exception ex) {
ex.printStackTrace();
}
return mailContent;
}
}
<%
GetMail mail = new GetMail();
String content = mail.receive("pop3.server.com","user","password");
if((content.trim() == null)||(content.trim() == "")) {
System.out.println("No mail!");
}
else {
System.out.println("You got a new mail!");
}
%>
*Author:tyfun
*DateTime:2003.01.10
*Package:com.westarsoft.mail
*/
package com.westarsoft.mail;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
public class GetMail {
public static String receive(String popServer, String popUser, String popPassword) {
String mailContent = "";
Store store = null;
Folder folder = null;
try {
Properties props = System.getProperties();
Session session = Session.getDefaultInstance(props, null);
store = session.getStore("pop3");
store.connect(popServer, popUser, popPassword);
folder = store.getDefaultFolder();
if(folder == null) throw new Exception("No default folder");
folder = folder.getFolder("INBOX");
if(folder == null) throw new Exception("No POP3 INBOX");
folder.open(Folder.READ_ONLY);
Message[] msgs = folder.getMessages();
for(int msgNum = 0; msgNum < msgs.length; msgNum++) {
mailContent = mailContent + getMessage(msgs[msgNum]) + "/n/n/n/n";
}
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
if (folder!=null) folder.close(false);
if (store!=null) store.close();
}
catch (Exception ex2) {
ex2.printStackTrace();
}
}
return mailContent;
}
public static String getMessage(Message message) {
String mailContent = null;
try {
String from = ((InternetAddress)message.getFrom()[0]).getPersonal();
if(from==null) from = ((InternetAddress)message.getFrom()[0]).getAddress();
mailContent = "FROM: "+from;
String subject = message.getSubject();
mailContent = mailContent + "/n" +"SUBJECT: "+subject;
Part messagePart = message;
Object content = messagePart.getContent();
if(content instanceof Multipart) {
messagePart = ((Multipart)content).getBodyPart(0);
mailContent = mailContent + "/n" +"[ Multipart Message ]";
}
mailContent = mailContent + "/n" +"CONTENT: "+content.toString();
String contentType = messagePart.getContentType();
mailContent = mailContent + "/n" +"CONTENT:"+contentType;
if(contentType.startsWith("text/plain") || contentType.startsWith("text/html")) {
InputStream is = messagePart.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String thisLine = reader.readLine();
while(thisLine!=null) {
mailContent = mailContent + "/n" +thisLine;
thisLine = reader.readLine();
}
}
}
catch(Exception ex) {
ex.printStackTrace();
}
return mailContent;
}
}
<%
GetMail mail = new GetMail();
String content = mail.receive("pop3.server.com","user","password");
if((content.trim() == null)||(content.trim() == "")) {
System.out.println("No mail!");
}
else {
System.out.println("You got a new mail!");
}
%>
- 改寫後的使用javamail pop3收信的javabean
- POP3收信的perl客户端
- javamail通過pop3收信,附件下載,我的辦法(代碼!)
- jmail4.1用pop3收信的例子
- javamail发信和收信机制(smtp、pop3、imap)
- JavaMail IMAP 和JavaMail Pop3 简介以及使用过程遇到的问题总结
- pop3客户端,email收信
- JavaMail之POP3协议判断新邮件的思路
- JavaMail之POP3协议判断新邮件的思路
- JavaMail之POP3协议判断新邮件的思路 .
- 【利用javamail和POP3、SMPT协议实现邮件的收发】
- Gmail 收信的一些规则
- JavaMail(4)--使用POP3接收邮件
- 了解POP3协议,使用简单的代码监控pop3邮箱
- 了解POP3协议,使用简单的代码监控pop3邮箱
- javamail的使用
- javamail的使用
- javamail的使用
- 用java開發Email工具之發送郵件
- JavaMail操作的總結
- 让时髦走开--论语音应用的结构
- jxl&poi
- javamail通過pop3收信,附件下載,我的辦法(代碼!)
- 改寫後的使用javamail pop3收信的javabean
- JAVA复习题与解答
- JavaMail發送郵件中主題亂碼的解決方法
- 修改後可以發送附件、抄送、密送的javabean,吐血推薦~(javamail範例)
- 感受Template Meta Programming
- javamail使用完全手冊,
- 郵件例程 - JavaMail - 發送HTML郵件
- 一段帶smtp認證的JavaMail代碼。
- 在jsp中發送email !