java SSL 邮件发送

     Properties props = new Properties();
        props.put("mail.smtp.host", smtp);
        props.put("mail.smtp.socketFactory.port", "465");
        props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.port", "465");
        
        Session session = Session.getDefaultInstance(props,
            new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(address,passwd);
                }
            });
        try {
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(address));
            message.setRecipients(Message.RecipientType.TO,
                    InternetAddress.parse(email));
            message.setSubject(subject);
//          message.setContent(content, "text/html;charset=utf-8");  

            //创建 Mimemultipart添加内容(可包含多个附件)  
            MimeMultipart multipart = new MimeMultipart();  
            //MimeBodyPart(用于信件内容/附件)  
            BodyPart bodyPart = new MimeBodyPart();  
            bodyPart.setContent(content.toString(), "text/html;charset=utf-8");  
            //添加到MimeMultipart对象中  
            multipart.addBodyPart(bodyPart);  
            FileDataSource fds = new FileDataSource(new File(tTempPath));  
            BodyPart fileBodyPart = new MimeBodyPart();  
            // 字符流形式装入文件  
            fileBodyPart.setDataHandler(new DataHandler(fds));  
            // 设置附件文件名
            String fname = new File(tTempPath).getName();
            fname = new String(fname.getBytes("UTF-8"), "ISO-8859-1");
            fileBodyPart.setFileName(fname);
            multipart.addBodyPart(fileBodyPart);  
            message.setContent(multipart);
            
            Transport.send(message);
            return true;

        } catch (MessagingException e) {
            System.out.println(e.getMessage());
            return false;
        }

Properties props = new Properties();        props.put("mail.smtp.host", smtp);        props.put("mail.smtp.socketFactory.port", "465");        props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");        props.put("mail.smtp.auth", "true");        props.put("mail.smtp.port", "465");            Session session = Session.getDefaultInstance(props,        new javax.mail.Authenticator() {            protected PasswordAuthentication getPasswordAuthentication() {            return new PasswordAuthentication(address,passwd);            }        });        try {            Message message = new MimeMessage(session);            message.setFrom(new InternetAddress(address));            message.setRecipients(Message.RecipientType.TO,                    InternetAddress.parse(email));            message.setSubject(subject);//          message.setContent(content, "text/html;charset=utf-8");  
            //创建 Mimemultipart添加内容(可包含多个附件)              MimeMultipart multipart = new MimeMultipart();              //MimeBodyPart(用于信件内容/附件)              BodyPart bodyPart = new MimeBodyPart();              bodyPart.setContent(content.toString(), "text/html;charset=utf-8");              //添加到MimeMultipart对象中              multipart.addBodyPart(bodyPart);              FileDataSource fds = new FileDataSource(new File(tTempPath));              BodyPart fileBodyPart = new MimeBodyPart();              // 字符流形式装入文件              fileBodyPart.setDataHandler(new DataHandler(fds));              // 设置附件文件名            String fname = new File(tTempPath).getName();            fname = new String(fname.getBytes("UTF-8"), "ISO-8859-1");            fileBodyPart.setFileName(fname);            multipart.addBodyPart(fileBodyPart);              message.setContent(multipart);                        Transport.send(message);            return true;
        } catch (MessagingException e) {        System.out.println(e.getMessage());        return false;        }

猜你喜欢

转载自www.cnblogs.com/xiufengd/p/8944622.html