java自动发送邮件,java邮箱发送

  java自动发送邮件,java邮箱发送

  本文实例为大家分享了爪哇实现简单邮件发送的具体代码,供大家参考,具体内容如下

  需要的jar包:

  激活-1.1.1.jarmail-1.4.7.jarQQ邮箱设置开启POP3/SMTP服务,并获得授权码

  java实现简单邮件发送

  导入com。星期日邮件。util。mailslslocketfactory导入javax。邮件。*;导入javax。邮件。互联网。互联网地址;导入javax。邮件。互联网。mime消息;导入Java。util。属性;公共类mail 1 { public static void main(String[]args)引发异常{ //要发送邮件,需要获得协议和支持!开启服务POP3/SMTP服务授权码: fsxqgoverymigfeb属性prop=new Properties();prop.setProperty(mail.host , SMTP。QQ。com’);//设置即时通信软件邮件服务器道具。设置属性( mail。运输。协议, SMTP );//设置邮箱发送协议道具。设置属性( mail。SMTP。auth , true );//需要验证用户名密码//QQ邮箱还有设置加密套接字协议层加密mailslslssocketfactory SF=new mailslssocketfactory();SF。settrustallhosts(true);prop.put(mail.smtp.ssl.enable , true );道具。放(邮件。SMTP。SSL。插座厂’,SF);//1.创建定义整个应用程序所需要的环境信息的会议对象会话会话=会话。getdefaultinstance(prop,new Authenticator(){ @ Override protected password authentic ation get password authentic ation(){ return new password authentic ation( 1369410772 @ QQ。com , fsxqgovorymigfeb );} });//开启会议的调试模式,这样就可以查看运行状态了会话。设置调试(真);//2.通过会议对象获得运输对象传输传输=会话。get transport();//3.使用邮箱的用户名和授权码连上邮件服务器transport.connect(smtp.qq.com , 1369410772@qq.com , fsxqgoverymigfeb );//4.创建邮件:写邮件MimeMessage消息=新的模拟消息(会话);消息。设置自(新的互联网地址( 1369410772 @ QQ。com’);//发件人message.setRecipient(Message .收件人类型。收件人,新的互联网地址( 1369410772 @ QQ。com’);//收件人message.setSubject(你好);//邮件主题消息。设置内容( h1 style= color : red 你好/h1 , text/html;charset=utf-8 );//邮件内容//5.发送邮件transport.sendMessage(消息,消息。get all recipients());//6.关闭连接运输。close();}}java实现复杂邮件发送(带文件)

  导入com。星期日邮件。util。mailslslocketfactory导入javax。激活。数据处理器;导入javax.activation.FileDa

  taSource;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 Mail1 {    public static  void main(String[] args) throws Exception {        //要发送邮件,需要获得协议和支持!开启服务POP3/SMTP服务  授权码: fsxqgovorymigfeb        Properties prop=new Properties();        prop.setProperty("mail.host","smtp.qq.com");//设置QQ邮件服务器        prop.setProperty("mail.transport.protocol","smtp");//设置邮箱发送协议        prop.setProperty("mail.smtp.auth","true");//需要验证用户名密码        //QQ邮箱还有设置SSL加密        MailSSLSocketFactory sf=new MailSSLSocketFactory();        sf.setTrustAllHosts(true);        prop.put("mail.smtp.ssl.enable","true");        prop.put("mail.smtp.ssl.socketFactory",sf);        //1.创建定义整个应用程序所需要的环境信息的Session对象        Session session=Session.getDefaultInstance(prop, new Authenticator() {            @Override            protected PasswordAuthentication getPasswordAuthentication() {                return new PasswordAuthentication("1369410772@qq.com","fsxqgovorymigfeb");            }        });        //开启session的debug模式,这样就可以查看运行状态了        session.setDebug(true);        //2.通过session对象获得transport对象        Transport transport = session.getTransport();        //3.使用邮箱的用户名和授权码连上邮件服务器        transport.connect("smtp.qq.com","1369410772@qq.com","fsxqgovorymigfeb");        //4.创建邮件:写邮件        MimeMessage message = new MimeMessage(session);        message.setFrom(new InternetAddress("1369410772@qq.com"));//发件人        message.setRecipient(Message.RecipientType.TO,new InternetAddress("1369410772@qq.com"));//收件人        message.setSubject("你好");//邮件主题        //message.setContent("<h1 style=color: red>你好</h1>","text/html;charset=utf-8");//邮件内容        //=============================================================================        //带图片的内容        MimeBodyPart image = new MimeBodyPart();        DataHandler dh = new DataHandler(new FileDataSource("E:\IDEA\JavaWeb\mail-java\src\tx.png"));//图片需要经过数据处理... DataHandler:数据处理        image.setDataHandler(dh);//在Body中放入处理的图片数据        image.setContentID("tx.png");//给图片设置ID        //准备正文数据        MimeBodyPart text = new MimeBodyPart();        text.setContent("这是一封邮件正文带图片<img src=cid:tx.png>的邮件","text/html;charset=utf-8");        //描述数据关系        MimeMultipart mm = new MimeMultipart();        mm.addBodyPart(text);        mm.addBodyPart(image);        mm.setSubType("mixed");        //设置到消息中,保存修改        message.setContent(mm);        message.saveChanges();        //=========================================================================        //5.发送邮件        transport.sendMessage(message,message.getAllRecipients());        //6.关闭连接        transport.close();    }}Spring实现

  1、添加依赖

  

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

2、编写配置文件

 

  

spring.mail.username=1369410772@qq.comspring.mail.password=fsxqgovorymigfebspring.mail.host=smtp.qq.comspring.mail.properties.mail.smtp.ssl.enable=true

3、编写测试类

 

  

import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMailSenderImpl;import org.springframework.mail.javamail.MimeMessageHelper;import javax.mail.MessagingException;import javax.mail.internet.MimeMessage;import java.io.File;@SpringBootTestclass DemoApplicationTests {//简单邮件    @Autowired    JavaMailSenderImpl mailSender;    @Test    void contextLoads() {        //发送邮件        //收件人        //内容        SimpleMailMessage message = new SimpleMailMessage();        message.setSubject("测试");        message.setText("Hello");        message.setFrom("1369410772@qq.com");        message.setTo("1369410772@qq.com");        mailSender.send(message);    }    @Test    public void test2() throws Exception {//复杂邮件        MimeMessage mimeMessage = mailSender.createMimeMessage();        MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);        helper.setSubject("测试");        helper.setText("Hello",true);        //附件        helper.addAttachment("1.jpg",new File(""));        helper.setFrom("1369410772@qq.com");        helper.setTo("1369410772@qq.com");        mailSender.send(mimeMessage);    }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持盛行IT。

 

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: