纯文本邮件发送:java

1.打开jdk的conf下的security文件的.security,找到并删除,权限问题建议复制文件修改后替换

jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL

删除后的内容

纯文本邮件发送:java_第1张图片

然后导入jar包:两个

纯文本邮件发送:java_第2张图片

授权码:邮箱-设置-账户,下滑自行获取

代码:


import com.sun.mail.util.MailSSLSocketFactory;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.security.GeneralSecurityException;
import java.util.Properties;

public class MailDemo01 {
    public static void main(String[] args) throws GeneralSecurityException, MessagingException {
        Properties prop=new Properties();
        prop.setProperty("mail.host","smtp.qq.com");//设置qq邮件服务器
        prop.setProperty("mail.transport.protocol","smtp");//邮件发送协议
        prop.setProperty("mail.smtp.auth","true");//验证用户账号密码



        //要设置ssl加密,固定代码,针对大厂
        MailSSLSocketFactory sf=new MailSSLSocketFactory();
        sf.setTrustAllHosts(true);
        prop.put("mail.smtp.ssl.enable","true");
        prop.put("mail.smtp.ssl.socketFactory",sf);
       

        //发送邮件,五个步骤

        //1.创建定义整个应用程序所需的环境信息的 session 对象

        //qq才有
        Session session=Session.getDefaultInstance(prop, new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication("@qq.com","授权码");
                    }

                });
        //开启session的debug,查看邮件发送的运行状态
        session.setDebug(true);
        //2.通过session得到transport
        Transport ts=session.getTransport();
        //3.使用邮箱的用户名和授权码连接服务器 ?
        ts.connect("smtp.qq.com","@qq.com","授权码");
        //4.写邮件
        MimeMessage message=new MimeMessage(session);

        //指明发件人
        message.setFrom(new InternetAddress("@qq.com"));
        //收件人
        message.setRecipient(Message.RecipientType.TO,new InternetAddress("@qq.com"));
        //邮件标题
        message.setSubject("纯文本邮件");
        //邮件内容
        message.setContent("

你好啊!

","text/html;charset=UTF-8"); //5.发送邮件 ts.sendMessage(message,message.getAllRecipients()); //6.关闭连接 ts.close(); } }

你可能感兴趣的:(java,服务器,开发语言)