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

📄 email.java

📁 java发送email的一个程序
💻 JAVA
字号:
package com.mail;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;

import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Part;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class Email {
    public static void post(String server,String port,String user,String from,String recipient,String subject,String message)
    throws MessagingException {
post(server,port,user,from, new String[]{recipient}, subject, message);
}

/**
* Sends a message to a list of recipients.
*/
public static void post(String server,String port,String user,String from,String[] recipients,String subject,String message)
    throws MessagingException {
Properties props = new Properties();
props.put("mail.smtp.host", server);
if(port != null)
  props.put("mail.smtp.port", port);
if(user != null)
  props.put("mail.smtp.user", user);
Session session = Session.getDefaultInstance(props, null);
session.setDebug(false);
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(from));
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++) addressTo[i] = new InternetAddress(recipients[i]);
msg.setRecipients(Message.RecipientType.TO, addressTo);
msg.setSubject(subject, "UTF-8");
msg.setText(message, "UTF-8");
Transport.send(msg);
}

/**
* receive messages from user's inbox.
*/
public static Message[] receive(String popServer, String popUser, String popPassword){
Store store = null;
Folder folder = null;
Message[] msgs = null;
try{
  Properties props = System.getProperties();
  Session session = Session.getDefaultInstance(props,null);
  store = session.getStore("pop3");
  store.connect(popServer,popUser,popPassword);
  folder = store.getFolder("INBOX");
  folder.open(Folder.READ_ONLY);
  msgs = folder.getMessages();
  for(int msgNum = 0;msgNum<msgs.length;msgNum++){
    printMessage(msgs[msgNum]);
  }
}
catch(Exception e1){
  e1.printStackTrace();
}
finally{
  try{
    if(folder != null)
      folder.close(false);
    if (store!= null)
      store.close();
  }
  catch(Exception e2){
    e2.printStackTrace();
  }
}
return msgs;
}

public static void printMessage(Message message){
try{
String from = ((InternetAddress)message.getFrom()[0]).getPersonal();
if(from == null)
  from = ((InternetAddress)message.getFrom()[0]).getAddress();
System.out.println("From:"+from);
String subject = message.getSubject();
System.out.println("Subject:"+subject);
Part msgPart = message;
Object content = msgPart.getContent();
if(content instanceof Multipart)
{
  System.out.println("[ Multipart Message ],total: "+((Multipart)content).getCount()+" parts");
  for(int i=0;i<((Multipart)content).getCount();i++){
    msgPart = ((Multipart)content).getBodyPart(i);
    System.out.println("CONTENT:"+msgPart.getContentType());
  }
}
String contentType =  msgPart.getContentType();
if (contentType.startsWith("text/plain")||contentType.startsWith("text/html"))
{
  InputStream is = msgPart.getInputStream();
  BufferedReader reader=new BufferedReader(new InputStreamReader(is));
  String thisLine=reader.readLine();
  while (thisLine!=null)
  {
    System.out.println(thisLine);
    thisLine=reader.readLine();
  }
}
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
}
catch(Exception e){
e.printStackTrace();
}
}
}

⌨️ 快捷键说明

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