前言:
当前你们对“java怎么设置回车发送”大概比较关心,看官们都需要分析一些“java怎么设置回车发送”的相关文章。那么小编在网络上搜集了一些对于“java怎么设置回车发送””的相关资讯,希望姐妹们能喜欢,大家一起来学习一下吧!1、要使用JavaMailSender发送邮件,首先需要在pom.xml文件中引入spring-boot-starter-mail依赖:
2、引入依赖包后需要在application.properties文件中配置属性:
password为客户端授权码,而不是我们平常登录邮箱的密码,我这里使用的是163邮箱作为发送方(客户端授权码需要进入邮箱里面设置获取,这里就不介绍了)。
3、引入依赖包,写好配置文件后,接下来就是写业务代码了,代码很简单,想要深究原理就得去阅读源码了,这里只介绍如何实现,废话不多说,业务代码如下:(截图无法显示,只能贴代码了)
@Service
public class MailService {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired
private JavaMailSender sender;
//发送者
@Value("${spring.mail.username}")
private String from;
/**
* 发送纯文本的简单邮件
* @param sendTo 接收者
* @param Subject 邮件主题
* @param mailContent 邮件内容
* @return
*/
public String sendSimpleMail(String sendTo, String Subject, String mailContent){
//建立邮件消息
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from);
message.setTo(sendTo);
message.setSubject(Subject);
message.setText(mailContent);
try {
sender.send(message);
logger.info("");
} catch (Exception e) {
logger.error("发送简单邮件时发生异常!", e);
}
return "";
}
/**
* 发送HTML格式邮件
* @param sendTo
* @param Subject
* @param mailContent
*/
public void sendHtmlMail(String sendTo, String Subject, String mailContent){
MimeMessage message = sender.createMimeMessage();
try {
//true表示需要创建一个multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(sendTo);
helper.setSubject(Subject);
//HTML格式邮件需先进行Base64加密,取数据时再解码
helper.setText(mailContent, true);
sender.send(message);
logger.info("HTML邮件已经发送。");
} catch (MessagingException e) {
logger.error("发送HTML邮件时发生异常!", e);
}
}
/**
* 带附件的邮件
* @param sendTo
* @param Subject
* @param mailContent
* @param filePath
*/
public void sendAttachmentsMail(String sendTo, String Subject, String mailContent, String filePath){
MimeMessage message = sender.createMimeMessage();
try {
//true表示需要创建一个multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(sendTo);
helper.setSubject(Subject);
helper.setText(mailContent, true);
FileSystemResource file = new FileSystemResource(new File(filePath));
String fileName = filePath.substring(filePath.lastIndexOf(File.separator));
helper.addAttachment(fileName, file);
sender.send(message);
logger.info("带附件的邮件已经发送。");
} catch (MessagingException e) {
logger.error("发送带附件的邮件时发生异常!", e);
}
}
/**
* 发送带图片(静态资源)的邮件
* @param sendTo
* @param Subject
* @param mailContent 邮件内容,需要包含一个静态资源的id
* @param rscPath 静态资源路径和文件名
* @param rscId 静态资源id
*/
public void sendInlineResourceMail(String sendTo, String Subject, String mailContent, String rscPath, String rscId){
MimeMessage message = sender.createMimeMessage();
try {
//true表示需要创建一个multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(sendTo);
helper.setSubject(Subject);
helper.setText(mailContent, true);
FileSystemResource res = new FileSystemResource(new File(rscPath));
helper.addInline(rscId, res);
sender.send(message);
logger.info("带图片的邮件已经发送。");
} catch (MessagingException e) {
logger.error("发送带图片的邮件时发生异常!", e);
}
}
}
4、写完业务代码就可以写测试代码进行测试了,我是写了个controller进行调用,用Junit也可以,方式不限,测试代码如下下
@RestController
@RequestMapping("/mail")
public class MailController {
@Autowired
private MailService mailService;
@RequestMapping("/sendmail")
public String sendMail(){
//接收者邮箱(随意什么邮箱)
String to = "123456@qq.com";
return mailService.sendSimpleMail(to, "主题:测试发送邮件功能", "测试发送邮件功能");
}
}
到了这里,在浏览器地址栏输入127.0.0.1:8080/mail/sendmail并回车,邮件便可以发送成功了。
标签: #java怎么设置回车发送