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(MimeUtility.encodeText(fname)); multipart.addBodyPart(fileBodyPart); message.setContent(multipart); Transport.send(message); return true; } catch (MessagingException e) { System.out.println(e.getMessage()); return false; }