Java 之 Spring Boot 发送邮箱(解决依赖找不到异常)
Posted 北芳科技-蓝盒子itbluebox
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 之 Spring Boot 发送邮箱(解决依赖找不到异常)相关的知识,希望对你有一定的参考价值。
Could not autowire. No beans of ‘JavaMailSender’ type found.解决
javax.mail.internet.MimeMessage 解决
1、引入依赖(注意版本号)pom.xml
<!--邮箱依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId >com.sun.mail</groupId >
<artifactId >javax.mail</artifactId >
<version>1.4.7</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.mail/mail -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
2、设置配置文件
application.properties
spring.mail.host=smtp.qq.com
spring.mail.protocol=smtp
spring.mail.username=xxxx@qq.com
spring.mail.password=#这里是编码到请求邮箱的设置里面寻找
spring.mail.default-encoding=UTF-8
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
3、编写实体类
public class SendEmail implements Serializable
/**
* 邮件接收方,可多人
*/
private String[] tos;
/**
* 邮件主题
*/
private String subject;
/**
* 邮件内容
*/
private String content;
public String[] getTos()
return tos;
public void setTos(String[] tos)
this.tos = tos;
public String getSubject()
return subject;
public void setSubject(String subject)
this.subject = subject;
public String getContent()
return content;
public void setContent(String content)
this.content = content;
public ToEmail()
public SendEmail (String[] tos, String subject, String content)
this.tos = tos;
this.subject = subject;
this.content = content;
4、注入并发送邮件
@Autowired
private JavaMailSender mailSender;
@Value("$spring.mail.username")
private String from;
public Boolean commonEmail(SendEmail sendEmail)
//创建简单邮件消息
SimpleMailMessage message = new SimpleMailMessage();
//谁发的
message.setFrom(from);//from
//谁要接收
message.setTo(sendEmail.getTos());
//邮件标题
message.setSubject(sendEmail.getSubject());
//邮件内容
message.setText(sendEmail.getContent());
try
mailSender.send(message);
return true;
catch (MailException e)
e.printStackTrace();
throw new ServiceException("邮箱格式错误");
以上是关于Java 之 Spring Boot 发送邮箱(解决依赖找不到异常)的主要内容,如果未能解决你的问题,请参考以下文章