javamail

1.spring.xml配置

2.Controller层

3.Service接口

4.接口的实现类

因为要邮件要带附件,所以SimpleMailMessage不能用,要换成的MimeMessage

参考的演示

1) 引入jar包

2) spring配置文件中初始化mail sender
<bean name="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
      <property name="host">
          <value>smtp.sina.com</value>
      </property>
      <property name="javaMailProperties">
          <props>
            <prop key="mail.smtp.auth">true</prop>
            <prop key="mail.smtp.starttls.enable">true</prop>
            <prop key="mail.smtp.starttls.required">true</prop>
          </props>
      </property>
      <property name="username">
          <value>XXX@sina.com</value>
      </property>
      <property name="password">
          <value>XXX</value>
      </property>
</bean>

3)  代码使用
 
    @Component
    public class XXX 

	@Autowired
	protected JavaMailSender sender;
	
       //发送邮件
	@Override
	public void sendMail(SimpleMailMessage message) throws Exception {
		sender.send(message);
	}
	
        //构建邮件对象
	@Override
	public SimpleMailMessage buildSimpleMessage(AlarmData alarmData, AlarmForward forward) {
		logger.info("buildSimpleMessage, forwardrule={}", forward);
		SimpleMailMessage message = new SimpleMailMessage();
		message.setFrom(from);
		message.setTo(forward.getEmailaddr().split(","));
		message.setSubject(forward.getTitle());
		message.setText("设备:" + alarmData.getDeveui() + " 上报告警,请及时处理!");
		return message;
	}

补充:

本机测试的环境不是阿里云环境,没有设置端口号(好像默认的端口号为25),测试可以发送邮件,

但阿里云环境要有端口号,加上端口号587

<property name="port">

     <value>587</value>

</property>

<bean name="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
      <property name="host">
          <value>smtp.sina.com</value>
      </property>
      <property name="port">
          <value>587</value>
      </property>
      <property name="javaMailProperties">
          <props>
            <prop key="mail.smtp.auth">true</prop>
            <prop key="mail.smtp.starttls.enable">true</prop>
            <prop key="mail.smtp.starttls.required">true</prop>
          </props>
      </property>
      <property name="username">
          <value>XXX@sina.com</value>
      </property>
      <property name="password">
          <value>XXX</value>
      </property>
</bean>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZHOU_VIP

您的鼓励将是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值