(目前在校生,大三,写这个纯属无聊。大家自行看看,能点个赞就更好了。目前这个代码已经测试过了,没有问题的!)
基于spring boot的约定大于配置原理,可以帮助整合大量的技术。
以前使用这些技术时,你可能需要进行大量的代码编写。这需要我们付出大量时间和精力进行专业技术的学习。但是,现在有了spring boot,基于spring boot的约定大于配置原理,我们只需要进行一些简单的配置,就可以使用这些技术。
接下来介绍一个简单的技术,使用spring boot整合mail,来进行邮件的发送。(我使用的是发送QQ邮件,如果要发送其他的邮件,改下配置即可)
一、首先建立一个spring boot项目,并加入mail的依赖
二、在ym配置文件中进行有关的配置
解释一下配置:
host:表示你用哪种发送邮件方式;smtp是一种通信协议,与语言无关,类似于HTTP请求协议,后面的qq.com表示使用QQ邮箱发送邮件(如果使用126邮箱发送邮件,可以改为smtp.126.com)
username:写上发送人的邮箱
password:这个密码可不是你邮QQ邮箱的密码,这个是你要开启smtp协议,并生成的密钥,具体步骤如下:
打开邮箱,点击设置,然后点击账号。再往下拉会发现一个SMTP服务,正常状态下应该是关闭的,我们需要把它开启,并且获取授权码(获取授权码的过程会让你发送一条消息到指定的账号,然后就能获取到授权码;注意,获取到的授权码是一堆密钥的形式,然后将密钥复制到password后)
三、完成yml的配置之后就可以就行代码的编写来 发送邮件
1、新建一个发送邮件的类SendMail,并定义为bean
2、使用spring boot封装好的JavaMailSender来发送邮件
3、定义一个方法来发送邮件,具体的代码如下:
首先定义一个简单的邮件消息mgs,
然后,将收件人的邮箱(to),要发送邮件的标题(subject)、正文(content)都设置为参数,将来在调用方法时,直接进行传参就行。(在这里,我直接将发件人的邮箱写死了,如果你不想写死,可以在定义一个参数进行传递)
四、调用我们写好的SendMail来进行邮件的发送:
我直接在spring boot的测试类中进行测试,代码如下:
我直接用@Autowired进行自动装配(前提是将类定义为bean,交由spring boot进行管理)
接下来我们来看一下QQ邮箱中有没有接收到邮件:
可以看到我们确实收到了由spring boot项目发送的邮件。
五、总结:
那么到这里,我们使用spring boot来整合mail发送邮件,就讲解完成了。其实我讲解的只是最简单的发送邮件,也可以有多种不同的配置,(如:在邮件发送中添加文件、设置邮件的定时发送、循环发送邮件进行电子轰炸,这个就有点贱了,大家不要放在心上。等等)大家可以在spring boot自动封装的JavaSendMailer中进行自行的摸索。