spring文本的,有图片的,有附件的邮件发送

    技术2022-05-13  6

    import java.io.File;import java.util.Properties;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import org.apache.commons.lang.StringUtils;import org.springframework.core.io.FileSystemResource;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMailSenderImpl;import org.springframework.mail.javamail.MimeMessageHelper;import com.opensymphony.xwork2.ActionSupport;

    public class SpringMailSend extends ActionSupport{  private static final long serialVersionUID = 1L; private String sendMailRezult; private String mailTitle; private String mailContent; private String mailListStr;  public String sendMailForFile() {  try {   String[] mailArr = mailListStr.split(":");   InternetAddress[] mailList = new InternetAddress[mailArr.length];   for (int i = 0; i < mailArr.length; i++) {    if (!StringUtils.equals(mailArr[i], "")) {     mailList[i] = new InternetAddress(mailArr[i]);    }   }   JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();   // 设定mail server   senderImpl.setHost("xxxxx");   senderImpl.setUsername("xxxxx"); // 根据自己的情况,设置username   senderImpl.setPassword("xxxxx"); // 根据自己的情况, 设置password   Properties prop = new Properties();   prop.put("mail.smtp.auth", "true"); // 将这个参数设为true,让服务器进行认证,认证用户名和密码是否正确   prop.put("mail.smtp.timeout", "25000");   senderImpl.setJavaMailProperties(prop);   // 建立邮件消息,发送简单邮件和html邮件的区别   MimeMessage mailMessage = senderImpl.createMimeMessage();   // 注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,   // multipart模式   MimeMessageHelper messageHelper = new MimeMessageHelper(     mailMessage, true,"utf-8");   // 设置收件人,寄件人   messageHelper.setTo(mailArr);   messageHelper.setFrom("xxxxx");   messageHelper.setSubject(getMailTitle());   // true 表示启动HTML格式的邮件   messageHelper.setText(     "<html><head></head><body><h1>"+getMailContent()+"</h1></body></html>", true);   FileSystemResource img = new FileSystemResource(new File("c:/gxfc.gif"));   FileSystemResource img1 = new FileSystemResource(new File("c:/test.htm"));   messageHelper.addAttachment("test1", img);   messageHelper.addAttachment("test2", img1);   // 发送邮件   senderImpl.send(mailMessage);   System.out.println("邮件发送成功..");  } catch (Exception e) {   e.printStackTrace();  }  sendMailRezult="1";  return SUCCESS; } public String sendMailForImage() {  try {   String[] mailArr = mailListStr.split(":");   InternetAddress[] mailList = new InternetAddress[mailArr.length];   for (int i = 0; i < mailArr.length; i++) {    if (!StringUtils.equals(mailArr[i], "")) {     mailList[i] = new InternetAddress(mailArr[i]);    }   }   JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();   // 设定mail server   senderImpl.setHost("xxxxx");   senderImpl.setUsername("xxx"); // 根据自己的情况,设置username   senderImpl.setPassword("xxxvan"); // 根据自己的情况, 设置password   Properties prop = new Properties();   prop.put("mail.smtp.auth", "true"); // 将这个参数设为true,让服务器进行认证,认证用户名和密码是否正确   prop.put("mail.smtp.timeout", "25000");   senderImpl.setJavaMailProperties(prop);   // 建立邮件消息,发送简单邮件和html邮件的区别   MimeMessage mailMessage = senderImpl.createMimeMessage();   // 注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,   // multipart模式   MimeMessageHelper messageHelper = new MimeMessageHelper(     mailMessage, true,"utf-8");   // 设置收件人,寄件人   messageHelper.setTo(mailArr);   messageHelper.setFrom("xxx@sh.vanceinfo.com");   messageHelper.setSubject(getMailTitle());   // true 表示启动HTML格式的邮件   messageHelper.setText(     "<html><head></head><body><h1>"+getMailContent()+"</h1>"       + "<img src=/"cid:gongxi/"/></body></html>", true);   FileSystemResource img = new FileSystemResource(new File("c:/gxfc.gif"));   messageHelper.addInline("gongxi", img);   // 发送邮件   senderImpl.send(mailMessage);   System.out.println("邮件发送成功..");  } catch (Exception e) {   e.printStackTrace();  }  sendMailRezult="1";  return SUCCESS; }  public String sendMailForTxt() {  try {   String[] mailArr = mailListStr.split(":");   InternetAddress[] mailList = new InternetAddress[mailArr.length];   for (int i = 0; i < mailArr.length; i++) {    if (!StringUtils.equals(mailArr[i], "")) {     mailList[i] = new InternetAddress(mailArr[i]);    }   }   JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();   // 设定mail server   senderImpl.setHost("xxxxx");   senderImpl.setUsername("xxx"); // 根据自己的情况,设置username   senderImpl.setPassword("xxxvan"); // 根据自己的情况, 设置password   Properties prop = new Properties();   prop.put("mail.smtp.auth", "true"); // 将这个参数设为true,让服务器进行认证,认证用户名和密码是否正确   prop.put("mail.smtp.timeout", "25000");   senderImpl.setJavaMailProperties(prop);   // 建立邮件消息,发送简单邮件和html邮件的区别   SimpleMailMessage mailMessage  =   new  SimpleMailMessage();    mailMessage.setTo(mailArr);       mailMessage.setFrom("xxxxx");       mailMessage.setSubject(getMailTitle());       mailMessage.setText(getMailContent());   // 发送邮件   senderImpl.send(mailMessage);   System.out.println("邮件发送成功..");  } catch (Exception e) {   e.printStackTrace();  }  sendMailRezult="1";  return SUCCESS; } public String getMailListStr() {  return mailListStr; } public void setMailListStr(String mailListStr) {  this.mailListStr = mailListStr; } public String getSendMailRezult() {  return sendMailRezult; } public void setSendMailRezult(String sendMailRezult) {  this.sendMailRezult = sendMailRezult; } public String getMailTitle() {  return mailTitle; } public void setMailTitle(String mailTitle) {  this.mailTitle = mailTitle; } public String getMailContent() {  return mailContent; } public void setMailContent(String mailContent) {  this.mailContent = mailContent; }}


    最新回复(0)