zoukankan      html  css  js  c++  java
  • spring 发送邮件代码示例(带附件和不带附件的)

    import javax.mail.MessagingException;
    import javax.mail.internet.MimeMessage;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.core.io.FileSystemResource;
    import org.springframework.mail.MailParseException;
    import org.springframework.mail.SimpleMailMessage;
    import org.springframework.mail.javamail.JavaMailSender;
    import org.springframework.mail.javamail.MimeMessageHelper;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    @Controller
    @RequestMapping("/api")
    public class SendMailController {
    
        @Autowired
        private JavaMailSender mailSender;
    
        private SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
    
        @RequestMapping(value = "/sendmsg", method = RequestMethod.GET)
        @ResponseBody
         public String sendMessage(@RequestParam String mail){
    
            simpleMailMessage.setSubject("~-Test-~");
            simpleMailMessage.setText("test");
            simpleMailMessage.setFrom("xxxxy@xxxxy.com");

              if(mail.indexOf(",")>0){
              String[] tos=mail.split(",");
              simpleMailMessage.setTo(tos);
              }else{
              simpleMailMessage.setTo(mail);
              }

            mailSender.send(simpleMailMessage);
    
            return "Mail Sent";
    
        }
        
        @RequestMapping(value = "/sendMessageWithAttachment", method = RequestMethod.GET)
        @ResponseBody
        public String sendMessageWithAttachment(@RequestParam String mail){
    
            simpleMailMessage=new SimpleMailMessage();
            simpleMailMessage.setFrom("xxxxy@xxxxy.com");

          if(mail.indexOf(",")>0){
          String[] tos=mail.split(",");
          simpleMailMessage.setTo(tos);
          }else{
          simpleMailMessage.setTo(mail);
          }

            simpleMailMessage.setSubject("xxxxy" );
            simpleMailMessage.setText("dear davidwangwei456"+"
     xxxxy" +",见附件所示");
            
            sendMailWithAttachment("xxxxy.xls",simpleMailMessage);
    
            return "Mail Sent";
    
        }
        
        private void sendMailWithAttachment(String fileName,SimpleMailMessage simpleMailMessage) {
            // 发送邮件
            MimeMessage message  = mailSender.createMimeMessage();          
            try {
                MimeMessageHelper helper = new MimeMessageHelper(message , true, "UTF-8");
                helper.setFrom(simpleMailMessage.getFrom());
                helper.setTo(simpleMailMessage.getTo());
                helper.setSubject(simpleMailMessage.getSubject());
                helper.setText(simpleMailMessage.getText());
    
                FileSystemResource file = new FileSystemResource(fileName);
                helper.addAttachment(file.getFilename(), file);
    
            } catch (MessagingException e) {
                throw new MailParseException(e);
            }
            mailSender.send(message);
        }
    
        @RequestMapping(value = "/hello" , method = RequestMethod.GET)
        @ResponseBody
        public String getHello(){
            return "Hello";
        }
  • 相关阅读:
    创建FLASK,同步docker
    FLASK Buleprint
    restful api
    Angular JS
    线程日志
    将项目部署到linux下的docker容器中
    安装和卸载docker
    学习目录总编
    Ansible
    装饰器
  • 原文地址:https://www.cnblogs.com/davidwang456/p/6905532.html
Copyright © 2011-2022 走看看