新版仿ok交易所-后端
1
zj
2025-10-02 ad597f433afb0e4ead989aa8a30133fe40d3b98c
trading-order-service/src/main/java/com/yami/trading/service/impl/InternalEmailSenderServiceImpl.java
@@ -25,6 +25,7 @@
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
@@ -36,24 +37,20 @@
    private FreeMarkerConfigurer freeMarkerConfigurer;
    @Override
    public void afterPropertiesSet() {
    public void afterPropertiesSet() throws Exception {
        mailSender = new JavaMailSenderImpl();
        mailSender.setUsername(PropertiesUtil.getProperty("email.username"));
        mailSender.setPassword(PropertiesUtil.getProperty("email.password"));
        mailSender.setHost(PropertiesUtil.getProperty("email.host"));
        Properties javaMailProperties = new Properties();
        javaMailProperties.setProperty("mail.smtp.port", "465");
        // 1. 禁用STARTTLS(465端口无需)
        javaMailProperties.setProperty("mail.smtp.starttls.enable", "false");
        javaMailProperties.setProperty("mail.smtp.auth", "true");
        // 2. 修正debug配置
        javaMailProperties.setProperty("mail.debug", "true");
        // 3. 明确TLS协议版本
        javaMailProperties.setProperty("mail.smtp.ssl.protocols", "TLSv1.2");
        javaMailProperties.setProperty("mail.smtp.host", "smtp.gmail.com");
        javaMailProperties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        javaMailProperties.setProperty("mail.smtp.socketFactory.port", "465");
        javaMailProperties.setProperty("mail.smtp.ssl.enable", "true");
        javaMailProperties.setProperty("mail.smtp.ssl.protocols", "TLSv1.2");
        javaMailProperties.setProperty("mail.smtp.ssl.enable", "true");
        javaMailProperties.setProperty("mail.debug", "true");
        mailSender.setJavaMailProperties(javaMailProperties);
        mailMessage = new SimpleMailMessage();
        mailMessage.setFrom(PropertiesUtil.getProperty("email.from"));
@@ -64,6 +61,7 @@
        settings.setProperty("default_encoding", "UTF-8");
        settings.setProperty("locale", "zh_CN");
        freeMarkerConfigurer.setFreemarkerSettings(settings);
        freeMarkerConfigurer.afterPropertiesSet();
    }
    @Override
@@ -90,9 +88,7 @@
                messageHelper.addAttachment(MimeUtility.encodeWord(emailMessage.getFilename()), rarfile);
            }
            this.mailSender.send(mailMsg);// 发送
        } catch (MessagingException e) {
            logger.error(e.getMessage(), e);
        } catch (UnsupportedEncodingException e) {
        } catch (MessagingException | UnsupportedEncodingException e) {
            logger.error(e.getMessage(), e);
        }
    }
@@ -109,9 +105,7 @@
            Template tpl = this.freeMarkerConfigurer.getConfiguration().getTemplate(ftlname);
            // 加入map到模板中 输出对应变量
            html = FreeMarkerTemplateUtils.processTemplateIntoString(tpl, map);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (TemplateException e) {
        } catch (IOException | TemplateException e) {
            e.printStackTrace();
        }
        return html;