SpringBoot实现发送邮件、发送微信公众号推送
SpringBoot实现发送邮件、发送微信公众号推送
SpringBoot实现发送邮件
JavaMailSender是Spring封装的邮件发送封装类,支持普通文本、附件、html等格式。
pom.xml
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency> 
application.yml
代码实现
带附件的格式发送邮件需要借助JavaMailSender对象的createMimeMessage()方法创建的实例MimeMessage作为发送对象,而设置邮件参数通过MimeMessageHelper对象完成。 我们创建EmailUtil工具类,在其中定义sendMail方法进行邮件发送,EmailUtil完整代码如下:
@Component
public class EmailUtil {
          
   
	@Value("${spring.mail.username}")
	private String from;
	@Resource
	private JavaMailSender javaMailSender;
	
	public boolean sendMail(String email, String subject, String text) {
          
   
		MimeMessage mimeMessage = javaMailSender.createMimeMessage();
		try {
          
   
			MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
			// 设置发件人
			mimeMessageHelper.setFrom(from);
			// 设置收件人
			mimeMessageHelper.setTo(email);
			// 设置邮件主题
			mimeMessageHelper.setSubject(subject);
			// 设置发送的文本信息
			mimeMessageHelper.setText(text);
			javaMailSender.send(mimeMessage);
			return true;
		} catch (MessagingException e) {
          
   
			e.printStackTrace();
			return false;
		}
	}
} 
这里对成员变量JavaMailSender使用了@Resource注解。@Resource注解和@Autowired注解类似,都用来声明需要自动装配的bean,区别在于@Autowired是类型驱动的注入,而@Resource是名称驱动的注入,所以前者存在多bean问题,而后者,只要保证bean命名唯一就不会出现多bean的问题。
pom.xml
<dependency>
            <groupId>com.github.binarywang</groupId>
            <artifactId>weixin-java-mp</artifactId>
            <version>3.3.0</version>
        </dependency> 
代码实现
各个配置项例如appId和secret等都需要在application.yml中配置,然后用@Value注解将我们配置文件的属性读出来,我这里是偷懒了
上一篇:
			            uniapp开发微信小程序-2.页面制作 
			          
			          下一篇:
			            微信小程序 背景图片设置 
			          
			        