JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--JSP技术--JAVAMAIL  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
JavaMail操作的总结(2)
作者:未知     文章来源:www.jspcn.net
访问次数:931次     加入时间:2005年01月19日
//此段代码用来进行服务器对用户的认证
public class Email_Autherticator extends Authenticator
{
public Email_Autherticator()
{
super();
}
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication(username,password);
}
}
//该程序为接收邮件
void jButton2_actionPerformed(ActionEvent e) {
try
{
Properties props = System.getProperties(); //获取系统变量
Authenticator auth = new Email_Autherticator();
props.put("mail.smtp.host",host);
props.put("mail.smtp.auth","true");
Session session = Session.getDefaultInstance(props,auth); //建立session
Store store = session.getStore("pop3");
store.connect(host,username,password);

//After connecting to the Store,you can get a Folder,which must be opened before you can read messages from it:
Folder folder = store.getFolder("INBOX");//连接到Store后,取得一个文件夹,一般默认的是INDEX
folder.open(Folder.READ_WRITE);//READ_ONLY为打开方式
Message message[] = folder.getMessages();//从文件夹获取邮件信息

//可以用两种方式去获得邮件信息,getContent()用来获得邮件的主体信息。而WriteTo()可以用来获得邮件的全部信息,包括头部信息
// System.out.println(((MimeMessage)message).getContent());
for (int i=0,n=message.length;i {

String out_from_person = ((InternetAddress)message[i].getFrom()[0]).getPersonal();
String out_from_address = ((InternetAddress)message[i].getFrom()[0]).getAddress();
System.out.println("From:"+out_from_person+" ");
System.out.println("Address:"+out_from_address+" ");

String out_subject = message[i].getSubject();
System.out.println("Subject:"+out_subject+" ");

//以下代码用来获得邮件的正文信息
Part messagePart = message[i];
Object out_content = messagePart.getContent();
if (out_content instanceof Multipart)
{
messagePart = ((Multipart)out_content).getBodyPart(0);
System.out.println("[ Multipart Message ]");
}
String out_content_type = messagePart.getContentType();
System.out.println("CONTENT:"+out_content_type);

if (out_content_type.startsWith("text/plain") | | out_content_type.startsWith("text/html"))
{
InputStream ipstm = messagePart.getInputStream();
BufferedReader bufreader = new BufferedReader(new InputStreamReader(ipstm));
String thisLine = bufreader.readLine();
while (thisLine != null)
{
System.out.println("thisLine: "+thisLine);
thisLine = bufreader.readLine();
}
}
System.out.println("------------------------------------------------------------");
message[i].setFlag(Flags.Flag.DELETED,true);//最后删除服务器端的邮件
}
//DELETED,ANSWERED,DRAFT,FLAGGED,RECENT,SEEN,USER
folder.close(true);//true的话,彻底删除已经标记为DELETE的邮件,如果为false的话,就不删除
store.close();//关闭
}
catch(Exception ej2)
{
System.out.println(ej2);
}
}

void jButton4_actionPerformed(ActionEvent e) {
try
{//该程序为回复邮件
Properties props = System.getProperties(); //获取系统变量
Authenticator auth = new Email_Autherticator(); //取得?uFFFD衿魅现?
props.put("mail.smtp.host",host);
props.put("mail.smtp.auth","true");
Session session = Session.getDefaultInstance(props,auth); //建立session
Store store = session.getStore("pop3");
store.connect(host,username,password);

Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
Message message[] = folder.getMessages();

for (int i=0,n=message.length;i {
// String out_from_person = ((InternetAddress)message[i].getFrom()[0]).getPersonal();//获取邮件发信人的署名

String out_from_address = ((InternetAddress)message[i].getFrom()[0]).getAddress();
System.out.println(out_from_address);

Message forward = new MimeMessage(session);
forward.setSubject("Fwd:"+message[i].getSubject());
forward.setFrom(new InternetAddress(mail_to));
forward.addRecipient(Message.RecipientType.TO,new InternetAddress(out_from_address));

BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("Here you go with the original message: ");

Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);

messageBodyPart = new MimeBodyPart();
messageBodyPart.setDataHandler(message[i].getDataHandler());

multipart.addBodyPart(messageBodyPart);
forward.setContent(multipart);

Transport.send(forward);
message[i].setFlag(Flags.Flag.DELETED,true);//DELETED,ANSWERED,DRAFT,FLAGGED,RECENT,SEEN,USER
}
folder.close(true);
store.close();//关闭
}
catch(Exception ej2)
{
System.out.println(ej2);
}

}

void jButton5_actionPerformed(ActionEvent e) {
try
{
Properties props = new Properties();
Authenticator auth = new Email_Autherticator();

props.put("mail.smtp.host",host);
props.put("mail.smtp.auth","true");
Session session = Session.getDefaultInstance(props,auth);
MimeMessage message = new MimeMessage(session);
message.setContent("Hello","text/plain");
message.setSubject(mail_subject);
message.setText(mail_body);
message.setHeader(mail_head_name,mail_head_value);
message.setSentDate(new Date());
message.setFrom(new InternetAddress(mail_from,"sunxiaoming")); //to signal man  
JSP虚拟主机 | JSP空间 | JSP主机 | JSP双线虚拟主机 | JAVA空间 | JAVA虚拟主机 | 虚拟服务器 | JSP 虚拟服务器 | VPS
Virtual Private Server | JAVA虚拟服务器 | VM服务器 | VHOST | 虚拟操作系统 | JSP论坛 | JAVA论坛 | JSP站点论坛
Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号