Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 精品国产中文字幕,日韩中文字幕在线观看,国产韩国在线

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          Java發送QQ郵件

          天學習了如何用Java[1] 發送普通郵件,HTML郵件和帶附件的郵件。黑客最喜歡干的事情就是發釣魚郵件,安全磚家還為其美名叫魚叉攻擊,嘖嘖。

          ailx10:網絡安全優秀回答者,網絡安全碩士


          發送一封簡單的QQ郵件:

          • 收件人會收到純文本的郵件!
          package hackbiji;
          
          import javax.mail.*;
          import javax.mail.internet.InternetAddress;
          import javax.mail.internet.MimeMessage;
          import java.util.Properties;
          
          public class hello {
              public static void main(String[] args) {
                  String to = "792161993@qq.com";
                  String from = "393803933@qq.com";
                  String host = "smtp.qq.com";
                  Properties properties = System.getProperties();
                  properties.setProperty("mail.smtp.host",host);
                  properties.put("mail.smtp.auth","true");
          
          
                  Session session = Session.getDefaultInstance(properties, new Authenticator() {
                      public PasswordAuthentication getPasswordAuthentication()
                      {
                          return new PasswordAuthentication("393803933","***********");
                      }
                  });
          
                  try {
                      MimeMessage mimeMessage = new MimeMessage(session);
                      mimeMessage.setFrom(new InternetAddress(from));
                      mimeMessage.addRecipient(Message.RecipientType.TO,
                              new InternetAddress(to));
                      mimeMessage.setSubject("主題:黑客筆記");
                      mimeMessage.setText("正文:我是ailx10,我喜歡2進制安全和滲透技術");
                      Transport.send(mimeMessage);
                      System.out.println("發送郵件成功");
          
                  } catch (MessagingException e) {
                      e.printStackTrace();
                  }
          
              }
          }

          發送一封HTML QQ郵件:

          • 收件人會收到HTML的郵件,這里就可以做成釣魚鏈接了!
          package hackbiji;
          
          import javax.mail.*;
          import javax.mail.internet.InternetAddress;
          import javax.mail.internet.MimeMessage;
          import java.util.Properties;
          
          public class hello {
              public static void main(String[] args) {
                  String to = "792161993@qq.com";
                  String from = "393803933@qq.com";
                  String host = "smtp.qq.com";
                  Properties properties = System.getProperties();
                  properties.setProperty("mail.smtp.host",host);
                  properties.put("mail.smtp.auth","true");
          
          
                  Session session = Session.getDefaultInstance(properties, new Authenticator() {
                      public PasswordAuthentication getPasswordAuthentication()
                      {
                          return new PasswordAuthentication("393803933@qq.com","************");
                      }
                  });
          
                  try {
                      MimeMessage mimeMessage = new MimeMessage(session);
                      mimeMessage.setFrom(new InternetAddress(from));
                      mimeMessage.addRecipient(Message.RecipientType.TO,
                              new InternetAddress(to));
                      mimeMessage.setSubject("主題:黑客筆記");
                      mimeMessage.setContent("<img src=\"http://hackbiji.top/images/avatar.jpg\" width=\"50\" height=\"50\" />","text/html");
                      Transport.send(mimeMessage);
                      System.out.println("發送郵件成功");
          
                  } catch (MessagingException e) {
                      e.printStackTrace();
                  }
          
              }
          }

          發送一封帶附件的QQ郵件

          package hackbiji;
          
          import javax.activation.DataHandler;
          import javax.activation.FileDataSource;
          import javax.mail.*;
          import javax.mail.internet.InternetAddress;
          import javax.mail.internet.MimeBodyPart;
          import javax.mail.internet.MimeMessage;
          import javax.mail.internet.MimeMultipart;
          import java.util.Properties;
          
          public class hello {
              public static void main(String[] args) {
                  String to = "792161993@qq.com";
                  String from = "393803933@qq.com";
                  String host = "smtp.qq.com";
                  Properties properties = System.getProperties();
                  properties.setProperty("mail.smtp.host",host);
                  properties.put("mail.smtp.auth","true");
          
          
                  Session session = Session.getDefaultInstance(properties, new Authenticator() {
                      public PasswordAuthentication getPasswordAuthentication()
                      {
                          return new PasswordAuthentication("393803933@qq.com","***********");
                      }
                  });
          
                  try {
                      MimeMessage mimeMessage = new MimeMessage(session);
                      mimeMessage.setFrom(new InternetAddress(from));
                      mimeMessage.addRecipient(Message.RecipientType.TO,
                              new InternetAddress(to));
                      mimeMessage.setSubject("主題:黑客筆記");
          
                      MimeBodyPart msgBodyPart = new MimeBodyPart();
                      msgBodyPart.setText("正文:我是ailx10");
                      MimeMultipart mimeMultipart = new MimeMultipart();
                      mimeMultipart.addBodyPart(msgBodyPart);
                      msgBodyPart = new MimeBodyPart();
                      String filepath = "C:\\Users\\Admin\\IdeaProjects\\helloworld\\src\\src\\main\\java\\hackbiji\\hack.zip";
                      String filename = "hack.zip";
                      FileDataSource fileDataSource = new FileDataSource(filepath);
                      msgBodyPart.setDataHandler(new DataHandler(fileDataSource));
                      msgBodyPart.setFileName(filename);
                      mimeMultipart.addBodyPart(msgBodyPart);
          
                      mimeMessage.setContent(mimeMultipart);
          
                      Transport.send(mimeMessage);
                      System.out.println("發送郵件成功");
          
                  } catch (MessagingException e) {
                      e.printStackTrace();
                  }
          
              }
          }

          參考

          1. ^Java入門教程 https://www.runoob.com/java/java-tutorial.html

          歡迎再次回到我們的Python郵件發送系列文章!在上一篇文章中,我們成功搭建了使用Python發送郵件的基礎環境,并學會了如何連接到SMTP服務器。今天,我們將繼續深入,學習如何編寫一封完整的郵件內容,并通過Python將其發送出去。

          一、創建郵件內容

          在Python中,email模塊提供了豐富的類和方法,讓我們能夠輕松地構建郵件內容。對于簡單的文本郵件,我們可以使用email.mime.text.MIMEText類。

          from email.mime.text import MIMEText
          
          # 郵件正文內容
          message_text = "你好,這是一封來自Python的郵件!希望你喜歡Python編程的樂趣。"
          
          # 創建郵件對象
          # 注意:這里的'plain'表示純文本,'utf-8'是字符編碼
          message = MIMEText(message_text, 'plain', 'utf-8')
          
          # 設置郵件的頭部信息
          # 發件人、收件人和郵件主題都是郵件頭部的重要部分
          message['From'] = 'your_email@gmail.com'  # 請替換成你的郵箱地址
          message['To'] = 'receiver_email@example.com'  # 請替換成接收者的郵箱地址
          message['Subject'] = 'Hello from Python!'  # 郵件主題

          二、發送郵件

          現在,我們已經有了郵件內容(包括正文和頭部信息),接下來就是通過SMTP服務器發送郵件了。我們將復用之前文章中創建的SMTP連接邏輯,來完成發送任務。

          import smtplib
          
          # SMTP服務器和端口(以Gmail為例)
          smtp_server = 'smtp.gmail.com'
          port = 587
          
          # 你的Gmail賬號和密碼(或應用專用密碼)
          email = 'your_email@gmail.com'  # 請替換成你的郵箱地址
          password = 'your_app_specific_password'  # 請替換成你的Gmail應用專用密碼
          
          try:
              # 創建一個SMTP連接
              server = smtplib.SMTP(smtp_server, port)
              server.starttls()  # 啟用TLS加密
              server.login(email, password)  # 登錄
          
              # 發送郵件
              # 注意:sendmail方法的第一個參數是發件人郵箱,第二個參數是接收者郵箱列表(即使只有一個接收者也要用列表形式),第三個參數是郵件內容對象
              server.sendmail(email, [message['To']], message.as_string())
              print("郵件發送成功!")
          
          finally:
              # 關閉SMTP連接
              server.quit()

          注意

          • 請確保將your_email@gmail.comyour_app_specific_passwordreceiver_email@example.com等占位符替換成你自己的郵箱地址、Gmail應用專用密碼和接收者郵箱地址。
          • 如果你使用的是其他郵件服務提供商(如Outlook、QQ郵箱等),請相應地更改SMTP服務器地址、端口號以及可能的登錄驗證方式。

          結語

          恭喜你,現在你已經學會了如何使用Python編寫并發送一封簡單的文本郵件!在下一篇文章中,我們將進一步探索如何發送HTML郵件和帶附件的郵件,讓你的郵件內容更加豐富多彩。請繼續關注我們的系列文章,不要錯過任何精彩內容!

          pringBoot整合了Java Mail可以很方便的發送電子郵件。

          我們來看看如何發送HTML格式的電子郵件。

          導入郵件依賴

          在SpringBoot的pom文件中導入電子郵件的starter。

          <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-mail</artifactId>
          </dependency>

          配置郵件信息

          在application.properties中配置郵箱信息,包括郵件服務器地址、用戶名和密碼。

          spring.mail.host=smtp.qq.com
          spring.mail.username=123@qq.com
          spring.mail.password=456

          注入郵件發送器

          使用@Autowired注解注入JavaMailSender對象。

          @Autowired
          private JavaMailSender javaMailSender;

          4.構造HTML郵件

          創建mimeMessage對象發送HTML郵件。

          MimeMessage mimeMessage = javaMailSender.createMimeMessage();
          MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
          
          try {
              helper.setFrom("123@qq.com(帥鍋)");
              helper.setTo("456@qq.com");
              helper.setSubject("你好");
              helper.setText("<a href='https://www.qq.com'>點我</a>",true);
          } catch (MessagingException e) {
              e.printStackTrace();
          }

          通過MimeMessageHelper對象設置郵件信息。

          setText第一個參數是郵件的正文,在這里輸入HTML代碼

          setText第二個參數是設置是否是HTML郵件,要設置為true

          方法

          作用

          helper.setFrom

          設置發件人地址,可以通過“()”設置別名

          helper.setTo

          設置收件人地址

          helper.setSubject

          設置郵件標題

          helper.setText

          設置郵件正文,第二個參數設置是否為HTML郵件

          發送郵件

          通過 javaMailSender.send方法發送電子郵件,參數是構建的mimeMessage對象。

          @Component
          public class MailServiceImpl implements MailService{
          
              @Autowired
              private JavaMailSender javaMailSender;
          
              @Override
              public void sendMail() {
                  MimeMessage mimeMessage = javaMailSender.createMimeMessage();
                  MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
          
                  try {
                      helper.setFrom("123@qq.com(帥鍋)");
                      helper.setTo("456@qq.com");
                      helper.setSubject("你好");
                      helper.setText("<a href='https://www.qq.com'>點我</a>",true);
                  } catch (MessagingException e) {
                      e.printStackTrace();
                  }
          
                  javaMailSender.send(mimeMessage);
              }
          }

          測試

          通過測試方法測試郵件發送。

          @SpringBootTest
          public class MailTest {
          
              @Autowired
              private MailService mailService;
          
              @Test
              void test(){
                  mailService.sendMail();
              }
          }

          郵箱收到了發送的郵件,連接是可以點擊的,是一個HTML格式的郵件。


          主站蜘蛛池模板: 日韩免费视频一区二区| 麻豆精品人妻一区二区三区蜜桃 | 亚洲一区二区电影| 日韩成人无码一区二区三区 | 丰满人妻一区二区三区视频| 午夜福利一区二区三区高清视频| 无码视频一区二区三区| 亚拍精品一区二区三区| 久久精品一区二区三区日韩| 天堂Aⅴ无码一区二区三区| 色系一区二区三区四区五区| 亚洲一区二区三区高清在线观看| 国模私拍一区二区三区| AV天堂午夜精品一区| 亚洲国产成人久久一区久久| 日本在线视频一区二区三区| 多人伦精品一区二区三区视频| 亚洲午夜一区二区电影院| 亚州日本乱码一区二区三区 | 正在播放国产一区| 欧美亚洲精品一区二区| 色综合视频一区二区三区44| 亚洲国产av一区二区三区丶| 久久亚洲日韩精品一区二区三区| 亚洲乱码国产一区三区| 无码国产精品一区二区免费模式| 国产免费一区二区三区免费视频| 精品国产一区二区22| 成人国产一区二区三区| 丰满爆乳一区二区三区| 精品福利一区二区三| 亚洲一区二区久久| 欧美日韩综合一区二区三区| 国产乱码精品一区三上| 一区二区在线播放视频| 精品一区二区在线观看| 制服丝袜一区在线| 日韩在线视频不卡一区二区三区| 国产一区二区三区不卡在线看| 精品视频午夜一区二区| 国产免费一区二区视频|