Procházet zdrojové kódy

添加了发送邮件(无法自动注入JavaMailSender,手动返回bean)

xuexb před 6 roky
rodič
revize
c6d3de6b0d

+ 1 - 1
mooctest-user-server/pom.xml

@@ -54,7 +54,7 @@
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-mail</artifactId>
-            <version>1.2.0.RELEASE</version>
+            <version>1.3.8.RELEASE</version>
         </dependency>
 
 

+ 33 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/configure/MailConfiguration.java

@@ -0,0 +1,33 @@
+package cn.iselab.mooctest.user.configure;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.mail.javamail.JavaMailSender;
+import org.springframework.mail.javamail.JavaMailSenderImpl;
+
+/**
+ * @Description: 作用描述
+ * @Author: xuexb
+ * @CreateDate: 18-12-25$ 下午9:45$
+ */
+@Configuration
+public class MailConfiguration {
+
+    @Autowired
+    private MailProperties mailProperties;
+
+    @Bean
+    public JavaMailSender getJavaMailSender(){
+        JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
+        javaMailSender.setProtocol("smtp");
+        javaMailSender.setHost(mailProperties.getHost());
+        javaMailSender.setUsername(mailProperties.getUsername());
+        javaMailSender.setPassword(mailProperties.getPassword());
+//        javaMailSender.setDefaultEncoding(mailProperties.getDefault_encoding());
+        javaMailSender.setDefaultEncoding("UTF-8");
+
+        return javaMailSender;
+    }
+
+}

+ 65 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/configure/MailProperties.java

@@ -0,0 +1,65 @@
+package cn.iselab.mooctest.user.configure;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description: 作用描述
+ * @Author: xuexb
+ * @CreateDate: 18-12-25$ 下午9:42$
+ */
+@ConfigurationProperties(prefix = "mail")
+@Component
+public class MailProperties {
+
+    private String host;
+
+    private String username;
+
+    private String password;
+
+    private String default_encoding;
+
+    public String getHost() {
+        return host;
+    }
+
+    public void setHost(String host) {
+        this.host = host;
+    }
+
+    public String getUsername() {
+        return username;
+    }
+
+    public void setUsername(String username) {
+        this.username = username;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+
+    public String getDefault_encoding() {
+        return default_encoding;
+    }
+
+    public void setDefault_encoding(String default_encoding) {
+        this.default_encoding = default_encoding;
+    }
+
+    @Override
+    public String toString() {
+        return "EboxEmailProperties{" +
+                "host='" + host + '\'' +
+                ", username='" + username + '\'' +
+                ", password='" + password + '\'' +
+                ", default-encoding='" + default_encoding + '\'' +
+                '}';
+    }
+}

+ 1 - 3
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/service/impl/MailServiceImpl.java

@@ -2,9 +2,7 @@ package cn.iselab.mooctest.user.service.impl;
 
 import cn.iselab.mooctest.user.service.MailService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.mail.MailMessage;
 import org.springframework.mail.SimpleMailMessage;
 import org.springframework.mail.javamail.JavaMailSender;
 import org.springframework.mail.javamail.JavaMailSenderImpl;
@@ -22,7 +20,7 @@ public class MailServiceImpl implements MailService {
     private String sender;
 
     @Autowired
-    JavaMailSender mailSender;
+    private JavaMailSender mailSender;
 
     @Override
     public void sendNormalEmail(String sender, String receiver, String subject, String content) {

+ 10 - 6
mooctest-user-server/src/main/resources/application.yaml

@@ -37,7 +37,11 @@ spring:
 #    session:
 #        stroe-type: redis
 
-
+    mail:
+        host: smtp.126.com
+        username: diors_po@126.com
+        password: xxb19970213
+        default-encoding: UTF-8
 
 
 
@@ -72,11 +76,11 @@ spring:
         provider.timeout: 120000
         provider.retries: 0
 
-    mail:
-        host: stmp.126.com
-        username: diors_po@126.com
-        password: xxb19970213
-        default-encoding: UTF-8
+mail:
+    host: smtp.126.com
+    username: diors_po@126.com
+    password: xxb19970213
+    default-encoding: UTF-8