public class PopupAuthenticator extends Authenticator{ public PasswordAuthentication getPasswordAuthentication() { String username=11111111@qq.com; //邮箱登录帐号 String pwd = "111111"; //登录密码 return new PasswordAuthentication(username,pwd); } } public class SendMail { public static void main(String[] args) { try { Authenticator auth = new PopupAuthenticator(); Properties mailProps = new Properties(); //邮件信息验证 mailProps.put("mail.smtp.host", "smtp.qq.com"); mailProps.put("mail.smtp.auth", "true"); mailProps.put("username", 111111@qq.com); //用户名 mailProps.put("password", "111111");//密码 Session mailSession = Session.getDefaultInstance(mailProps, auth); MimeMessage message = new MimeMessage(mailSession); message.setFrom(new InternetAddress(22222222@qq.com));//发件人地址 Address toInternetAddress=new InternetAddress(wwwwww@qq.com);//收件人地址 message.setRecipient(Message.RecipientType.TO, toInternetAddress); message.setSubject("Mail Test"); //邮件标题 message.setSentDate(new Date()); // 设置邮件发送日期 MimeMultipart multi = new MimeMultipart(); BodyPart textBodyPart = new MimeBodyPart(); //textBodyPart.setText("Hello World!"); //邮件内容 multi.addBodyPart(textBodyPart); message.setContent(multi); message.saveChanges(); //下面代码是发送附件 String fileName = "E:/hello.txt"; //发送附件的文件路径 MimeBodyPart messageBodyPart = new MimeBodyPart(); messageBodyPart.setText("Hi there is message info "); //邮件内容 Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageBodyPart); messageBodyPart = new MimeBodyPart(); DataSource source = new FileDataSource(fileName); messageBodyPart.setDataHandler(new DataHandler(source)); messageBodyPart.setFileName(fileName); multipart.addBodyPart(messageBodyPart); message.setContent(multipart); //推送邮件和附件信息 Transport.send(message); System.out.println("---------邮件发送成功----------"); } catch (Exception ex) { System.err.println("邮件发送失败的原因是:" + ex.getMessage()); System.err.println("具体错误原因:"); ex.printStackTrace(System.err); } } } |