使用java程序发送邮件,以QQ邮箱为例

需要引入javax依赖

此外还需要把对应的参数换成你自己的

    public static void sendEmailToOne(EmailConfigEntity emailConfigEntity, EmailAndMessageTestEntity em) throws Exception {
        //创建一个配置文件并保存
        Properties properties = new Properties();
        properties.setProperty("mail.host", emailConfigEntity.getHost());
        properties.setProperty("mail.smtp.port", String.valueOf(emailConfigEntity.getPort()));
        properties.setProperty("mail.transport.protocol", "smtp");
        properties.setProperty("mail.smtp.auth", "true");
        //QQ存在一个特性设置SSL加密
        properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
//        properties.put("mail.smtp.ssl.enable", "true");
//        properties.put("mail.smtp.ssl.checkserveridentity", "true");
        //创建一个session对象
        Session session = Session.getInstance(properties, new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(emailConfigEntity.getFromEmail(), KettleEncr.decryptPasswd(emailConfigEntity.getAuthCode()));
            }
        });
        //开启debug模式
        session.setDebug(true);
        //获取连接对象
        Transport transport = session.getTransport();
        //连接服务器
        //transport.connect(emailConfigEntity.getHost(), emailConfigEntity.getFromEmail(), KettleEncr.decryptPasswd(emailConfigEntity.getAuthCode()));
        transport.connect();
        //创建邮件对象
        MimeMessage mimeMessage = new MimeMessage(session);
        //邮件发送人
        String nameOfSendEmail = "小毛驴";
        mimeMessage.setFrom(new InternetAddress(emailConfigEntity.getFromEmail(), nameOfSendEmail));
        InternetAddress email = new InternetAddress(em.getSendTo());
        //邮件接收人
        mimeMessage.addRecipient(Message.RecipientType.TO,email);
        //邮件标题
        mimeMessage.setSubject("邮件测试");
        //邮件内容
        mimeMessage.setContent(em.getContent(), "text/html;charset=UTF-8");
        //发送邮件
        transport.sendMessage(mimeMessage, mimeMessage.getAllRecipients());
        //关闭连接
        transport.close();
    }

版权声明:本文为weixin_43890281原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。