0.3.2 修改邮件的发送方式

This commit is contained in:
2020-07-02 23:46:49 +08:00
parent 21a400d1f7
commit ce0cb65756
3 changed files with 19 additions and 17 deletions

View File

@@ -1,6 +1,6 @@
buildscript { buildscript {
ext { ext {
kotlin_version = '1.3.41' kotlin_version = '1.3.72'
} }
repositories { repositories {
@@ -21,7 +21,7 @@ allprojects {
subprojects { subprojects {
ext { ext {
version '0.3.0' version '0.3.2'
spring_version = "2.3.0.RELEASE" spring_version = "2.3.0.RELEASE"
} }

View File

@@ -12,21 +12,23 @@ import java.io.File
@Component @Component
class EmailMessenger : IEmailMessenger { class EmailMessenger : IEmailMessenger {
private var mailSender = JavaMailSenderImpl()
@Value("\${mail.host}") @Autowired
private lateinit var mailSender: JavaMailSenderImpl
@Value("\${spring.mail.host}")
var host = "" var host = ""
@Value("\${mail.port}") @Value("\${spring.mail.port}")
var port = "" var port = ""
@Value("\${mail.sender}") @Value("\${spring.mail.sender}")
var sender = "" var sender = ""
@Value("\${mail.username}") @Value("\${spring.mail.username}")
var username = "" var username = ""
@Value("\${mail.password}") @Value("\${spring.mail.password}")
var password = "" var password = ""
@Autowired @Autowired
@@ -40,18 +42,16 @@ class EmailMessenger : IEmailMessenger {
* @param receivers 邮件接受者 * @param receivers 邮件接受者
* @param files 附件 * @param files 附件
*/ */
override fun sendMessage(subject: String, content: String, receivers: List<String>, files: Map<String, String>) { override fun sendMessage(subject: String, content: String, receivers: List<String>, files: Map<String, String>): Map<String, Boolean> {
val result = mutableMapOf<String, Boolean>()
this.check() this.check()
mailSender.host = host receivers.forEach { receiver ->
mailSender.username = username result[receiver] = true
mailSender.password = password
mailSender.port = if (port.isEmpty()) port.toInt() else 25
receivers.forEach {
try { try {
val mail = mailSender.createMimeMessage() val mail = mailSender.createMimeMessage()
val mimeMessageHelper = MimeMessageHelper(mail, true, "utf-8") val mimeMessageHelper = MimeMessageHelper(mail, true, "utf-8")
mimeMessageHelper.setFrom(sender) mimeMessageHelper.setFrom(sender)
mimeMessageHelper.setTo(it) mimeMessageHelper.setTo(receiver)
mimeMessageHelper.setSubject(subject) mimeMessageHelper.setSubject(subject)
mimeMessageHelper.setText(content, true) mimeMessageHelper.setText(content, true)
@@ -61,9 +61,11 @@ class EmailMessenger : IEmailMessenger {
} }
mailSender.send(mail) //发送 mailSender.send(mail) //发送
} catch (e: Exception) { } catch (e: Exception) {
logger.error(e, "发送邮件[$subject]至地址[$it]失败") logger.error(e, "发送邮件[$subject]至地址[$receiver]失败")
result[receiver] = false
} }
} }
return result
} }
private fun check() { private fun check() {

View File

@@ -10,5 +10,5 @@ interface IEmailMessenger {
* @param files 附件 * @param files 附件
*/ */
fun sendMessage(subject: String, content: String, fun sendMessage(subject: String, content: String,
receivers: List<String>, files: Map<String, String> = mapOf()) receivers: List<String>, files: Map<String, String> = mapOf()): Map<String, Boolean>
} }