public class MailSender { /** * 发送单个邮件 * @throws Exception */ public void sendMail() throws Exception{ Properties props = new Properties();//创建属性对象 props.put("mail.smtp.host", getHost());//设置smtp服务器地址 props.put("mail.smtp.auth", "true");//设置服务器smtp需要验证 Session session = Session.getInstance(props, null);//创建新邮件并群发 //Session session = Session.getDefaultInstance(props); //session.setDebug(true); MimeMessage message = new MimeMessage(session);//创建过程对象 message.setFrom(new InternetAddress(getFromAddr())); message.addRecipient(Message.RecipientType.TO,new InternetAddress(getToAddr())); message.setSubject(getTitle());//设置主题 Multipart multipart = new MimeMultipart(); BodyPart contentPart = new MimeBodyPart(); contentPart.setContent(this.getSendtext(), "text/html;charset=GBK");//设置信件内容 multipart. addBodyPart(contentPart); if(getAttachPath() != null && getAttachName() != null){ BodyPart attachmentPart= new MimeBodyPart(); DataSource source = new FileDataSource(getAttachPath()); attachmentPart.setDataHandler(new DataHandler(source)); BASE64Encoder enc = new BASE64Encoder(); attachmentPart.setFileName("=?GBK?B?"+enc.encode(getAttachName().getBytes())+"?="); multipart.addBodyPart(attachmentPart); } message.setContent(multipart); message.saveChanges(); Transport transport = session.getTransport("smtp"); transport.connect(host, getUsername(), getPassword()); transport.sendMessage(message, message.getAllRecipients()); transport.close(); } /** * 群发邮件 * @throws Exception */ public void sendMails() throws Exception{ Properties props = new Properties();//创建属性对象 props.put("mail.smtp.host", getHost());//设置smtp服务器地址 props.put("mail.smtp.auth", "true");//设置服务器smtp需要验证 Session session = Session.getInstance(props, null);//创建新邮件并群发 //Session session = Session.getDefaultInstance(props); //session.setDebug(true); MimeMessage message = new MimeMessage(session);//创建过程对象 message.setFrom(new InternetAddress(getFromAddr()));//设置发送邮件地址 message.setSentDate(new Date());//设置时间 InternetAddress[] address = new InternetAddress[this.getMutliTo().length]; //群发地址 for(int i = 0; i < this.getMutliTo().length; i++) { //循环发送 address[i] = new InternetAddress((this.getMutliTo())[i]); } message.setRecipients(Message.RecipientType.TO, address); // message.addRecipient(Message.RecipientType.TO,new InternetAddress(getToAddr())); message.setSubject(getTitle());//设置主题 Multipart multipart = new MimeMultipart(); BodyPart contentPart = new MimeBodyPart(); contentPart.setContent(this.getSendtext(), "text/html;charset=GBK");//设置信件内容 multipart. addBodyPart(contentPart); if(getAttachPath() != null && getAttachName() != null){ BodyPart attachmentPart= new MimeBodyPart(); DataSource source = new FileDataSource(getAttachPath()); attachmentPart.setDataHandler(new DataHandler(source)); BASE64Encoder enc = new BASE64Encoder(); attachmentPart.setFileName("=?GBK?B?"+enc.encode(getAttachName().getBytes())+"?="); multipart.addBodyPart(attachmentPart); } message.setContent(multipart); message.saveChanges(); Transport transport = session.getTransport("smtp"); transport.connect(host, getUsername(), getPassword()); transport.sendMessage(message, message.getAllRecipients()); transport.close(); } private String host = null; //邮件服务器 private String fromAddr = null; //发送邮件地址 private String toAddr = null; //接收邮件地址 private String username = null; //发送邮件用户名 private String password = null; //发送邮件密码 private String title = null; //邮件标题 private String attachPath = null; //邮件附件路径 private String attachName = null; //邮件附件名 private String sendtext = null; //邮件内容 private String[] MutliTo = null; //群发用户 public String[] getMutliTo() { return MutliTo; } public void setMutliTo(String[] mutliTo) { MutliTo = mutliTo; } public String getSendtext() { return sendtext; } public void setSendtext(String sendtext) { this.sendtext = sendtext; } public String getHost() { return host; } public void setHost(String host) { this.host = host; } public String getFromAddr() { return fromAddr; } public void setFromAddr(String fromAddr) { this.fromAddr = fromAddr; } public String getToAddr() { return toAddr; } public void setToAddr(String toAddr) { this.toAddr = toAddr; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getAttachPath() { return attachPath; } public void setAttachPath(String attachPath) { this.attachPath = attachPath; } public String getAttachName() { return attachName; } public void setAttachName(String attachName) { this.attachName = attachName; } }
折射配置文件的内容
#\u914d\u7f6eemail\u53d1\u9001\u6587\u4ef6 host=smtp.163.com username=***** password=***** fromadd=*****@163.com
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索string
, 邮件
, enc28j60
, new
, null
, public
, message
, session actory null
SMTP host
java发送邮件代码、java发送邮件带附件、javamail发送邮件、java发送qq邮件、java发送短信,以便于您获取更多的相关知识。
时间: 2024-09-29 19:30:18