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

📄 mailserver.java

📁 一个可以发送java邮件的小程序
💻 JAVA
字号:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import javax.activation.*;
 
class MailServer {
   public MailServer(){}
   
   public boolean sendMail(){
      boolean debug = false;
      //收件者、主旨、內文的設定
      String[] To = {"xxxxxx@gmail.com","xxxxxx@pchome.com.tw","xxxxxx@yahoo.com.tw"};
      String[] Cc = {"xxxxxx@hotmail.com"};
      String[] Bcc = {"xxxxxx@xxxxxx.com.tw"};
      String Subject = "測試信件,html內容含附檔"; //主旨
      String sendMsgHtml = "<html><body>測試內容,我的姓名叫<h1>AJ</h1></body></html>"; //HTML內文
      
      //郵件資訊設定    
      String From = "xxxxxx@xxxxxx.com.tw"; //發信人信箱
      String Personal = "xxxxxx"; //發信人(顯示的文字)
      String smtpServer = "xxxxxx.xxxxxx.xxxxxx.xxxxxx"; //Mail Server
      String account = "xxxxxx"; //登入帳號
      String passwd = "xxxxxx"; //登入密碼
 
      //設定SMTP伺服器
      Properties props = new Properties();
      props.put("mail.smtp.host", smtpServer);
      props.put("mail.smtp.port", "25");
      props.put("mail.smtp.auth", "true"); //採用認證,因為使用外部smtp主機
      props.put("mail.smtp.connectiontimeout","1000");
      props.put("mail.smtp.timeout","2000");
      Authenticator smtpAuthenticator = new SMTPAuthenticator(account, passwd);
 
      //建立session
      Session session = null;
      MimeMessage msg = null;
      try{
         session = Session.getDefaultInstance(props, smtpAuthenticator);
         session.setDebug(debug); //停止偵錯
         
         //設定寄件者
         msg = new MimeMessage(session); //建立新的MimeMessage物件   
         msg.setFrom(new InternetAddress(From,Personal,"Big5"));
 
         //設定收件者TO、Cc、Bcc資料
         InternetAddress[] Toaddress = new InternetAddress[To.length];
          for (int i = 0; i < To.length; i++)
               Toaddress[i] = new InternetAddress(To[i]);
               
         msg.setRecipients(Message.RecipientType.TO,Toaddress);
 
         if(Cc != null){ //驗證是否有多位副本收件者
            InternetAddress[] Ccaddress = new InternetAddress[Cc.length];
            for (int i = 0; i < Cc.length; i++)
               Ccaddress[i] = new InternetAddress(Cc[i]);
            msg.setRecipients(Message.RecipientType.CC,Ccaddress);
         }
            
         if(Bcc != null){ //驗證是否有多位密件副本收件者
            InternetAddress[] Bccaddress = new InternetAddress[Bcc.length];
            for (int i = 0; i < Bcc.length; i++)
               Bccaddress[i] = new InternetAddress(Bcc[i]);
            msg.setRecipients(Message.RecipientType.BCC, Bccaddress); 
         }                   
         
         //其他設定
         msg.setSubject(Subject,"Big5");//設定郵件主旨
         msg.setSentDate(new Date()); //設定發送時間        
         
         //建立多內容 Multpart 郵件物件
         Multipart multipart = new MimeMultipart();
         
         MimeBodyPart mbp = new MimeBodyPart();
         
         //建立html格式內容
         mbp.setContent(sendMsgHtml,"text/html;charset=big5");
         
         //將內容加入 Multpart 郵件物件
         multipart.addBodyPart(mbp);
         
         //附加檔案
         mbp = new MimeBodyPart();
         DataSource fds = new FileDataSource("report\\附件.txt");
         mbp.setDataHandler(new DataHandler(fds));
         mbp.setFileName(MimeUtility.encodeText(fds.getName(), "Big5", "B"));         
 
         //將附加檔案內容加入 Multpart 郵件物件
         multipart.addBodyPart(mbp);
         
         //對 Multpart 郵件物件設定訊息
         msg.setContent(multipart);
 
         Transport.send(msg);
         return true; //發送信件動作正常
      }catch(Exception e){
         e.printStackTrace();
      }finally{
         if(msg!=null) msg = null;
         if(session!=null) session = null;
      }
      return false; //發送信件動作異常
   }
}

⌨️ 快捷键说明

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