public class SimpleMailSender
extends org.springframework.mail.javamail.JavaMailSenderImpl
| 构造器和说明 |
|---|
SimpleMailSender() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
asyncLogic(String subject,
String text,
CoupleMailProcessor coupleMailProcessor,
Object model,
boolean isTemplate,
boolean isHtml,
String... to) |
protected javax.mail.Address |
createFromAddress(String addr,
String personal)
创建发送人邮件地址
|
protected void |
doSend(javax.mail.internet.MimeMessage[] mimeMessages,
Object[] originalMessages)
检查mimeMessages中的from属性有没有值,没有则设置为
fromAddress 值 |
org.springframework.util.concurrent.ListenableFutureCallback<javax.mail.internet.MimeMessage[]> |
getCallback() |
TemplateProcessor |
getDefaultTemplateProcessor() |
org.springframework.core.task.AsyncListenableTaskExecutor |
getExecutor() |
String |
getFromAddress() |
String |
getFromPersonal() |
ConcurrentHashMap<String,TemplateProcessor> |
getProcessorMap() |
ConcurrentHashMap<String,String> |
getTemplateMap() |
protected boolean |
hasPersonal(String address)
验证邮件发送人字符窜中是否设置了昵称,即使用了如下格式:
隔壁老王 <3xxxxx@qq.com>
|
void |
init() |
protected String |
processTemplate(String template,
Object model)
处理模板内容
|
void |
send(String subject,
String text,
String... to)
发送简单的文本邮件
|
void |
sendAsync(CoupleMailProcessor coupleMailProcessor,
String... to)
异步发送简单的文本邮件
|
void |
sendAsync(javax.mail.internet.MimeMessage... mimeMessages)
异步发送邮件
|
void |
sendAsync(String subject,
String text,
String... to)
异步发送简单的文本邮件
|
void |
sendHtml(String subject,
String html,
String... to)
发送HTML格式的邮件
|
void |
sendHtmlAsync(CoupleMailProcessor coupleMailProcessor,
String... to)
异步发送HTML格式的邮件
|
void |
sendHtmlAsync(String subject,
String html,
String... to)
异步发送HTML格式的邮件
|
void |
sendHtmlTmpl(String subject,
String template,
Object model,
String... to)
发送模板邮件 - 邮件内容为HTML格式
|
void |
sendHtmlTmplAsync(CoupleMailProcessor coupleMailProcessor,
Object model,
String... to)
异步发送模板邮件 - 邮件内容为HTML格式
|
void |
sendHtmlTmplAsync(String subject,
String template,
Object model,
String... to)
异步发送模板邮件 - 邮件内容为HTML格式
|
void |
sendTmpl(String subject,
String template,
Object model,
String... to)
发送模板邮件 - 邮件内容为文本格式
|
void |
sendTmplAsync(CoupleMailProcessor coupleMailProcessor,
Object model,
String... to)
异步发送模板邮件 - 邮件内容为文本格式
|
void |
sendTmplAsync(String subject,
String template,
Object model,
String... to)
异步发送模板邮件 - 邮件内容为文本格式
|
void |
setCallback(org.springframework.util.concurrent.ListenableFutureCallback<javax.mail.internet.MimeMessage[]> callback) |
void |
setDefaultTemplateProcessor(TemplateProcessor defaultTemplateProcessor) |
void |
setExecutor(org.springframework.core.task.AsyncListenableTaskExecutor executor) |
void |
setFromAddress(String fromAddress)
fromAddress不支持多个邮件地址,如果传了多个邮件地址,则默认使用第一个。
|
void |
setFromPersonal(String fromPersonal) |
void |
setProcessorMap(Map<String,TemplateProcessor> processorMap) |
void |
setTemplateMap(Map<String,String> templateMap) |
void |
setTemplateProcessorMapping(String mapping)
配置模板和处理器的映射,字符窜格式:
/templates/order.ftl=freemarker
/templates/cards.vm=velocity
注:等号后面的freemarker、velocity是通过
processorMap来决定的 |
connectTransport, createMimeMessage, createMimeMessage, getDefaultEncoding, getDefaultFileTypeMap, getHost, getJavaMailProperties, getPassword, getPort, getProtocol, getSession, getTransport, getUsername, send, send, send, send, send, send, setDefaultEncoding, setDefaultFileTypeMap, setHost, setJavaMailProperties, setPassword, setPort, setProtocol, setSession, setUsername, testConnection@PostConstruct public void init() throws Exception
Exceptionpublic void send(String subject, String text, String... to) throws org.springframework.mail.MailException
subject - 邮件主题text - 邮件内容to - 收件人org.springframework.mail.MailExceptionpublic void sendTmpl(String subject, String template, Object model, String... to) throws org.springframework.mail.MailException, ParseTemplateException
subject - 邮件主题template - 邮件内容model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人org.springframework.mail.MailExceptionParseTemplateExceptionpublic void sendAsync(String subject, String text, String... to)
subject - 邮件主题text - 邮件内容to - 收件人public void sendAsync(CoupleMailProcessor coupleMailProcessor, String... to)
coupleMailProcessor - to - 收件人public void sendTmplAsync(String subject, String template, Object model, String... to)
subject - 邮件主题template - 邮件模板model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人public void sendTmplAsync(CoupleMailProcessor coupleMailProcessor, Object model, String... to)
coupleMailProcessor - model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人public void sendHtml(String subject, String html, String... to) throws org.springframework.mail.MailException, javax.mail.MessagingException
subject - 邮件主题html - 邮件内容to - 收件人org.springframework.mail.MailExceptionjavax.mail.MessagingExceptionpublic void sendHtmlTmpl(String subject, String template, Object model, String... to) throws org.springframework.mail.MailException, ParseTemplateException, javax.mail.MessagingException
subject - 邮件主题template - 邮件内容model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人org.springframework.mail.MailExceptionParseTemplateExceptionjavax.mail.MessagingExceptionpublic void sendHtmlAsync(String subject, String html, String... to)
subject - 邮件主题html - 邮件内容to - 收件人public void sendHtmlAsync(CoupleMailProcessor coupleMailProcessor, String... to)
coupleMailProcessor - to - 收件人public void sendHtmlTmplAsync(String subject, String template, Object model, String... to)
subject - 邮件主题template - 邮件模板model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人public void sendHtmlTmplAsync(CoupleMailProcessor coupleMailProcessor, Object model, String... to)
coupleMailProcessor - model - 模板占位符替换值,可用值类型根据具体模板处理器而定to - 收件人public void sendAsync(javax.mail.internet.MimeMessage... mimeMessages)
mimeMessages - protected void doSend(javax.mail.internet.MimeMessage[] mimeMessages,
Object[] originalMessages)
throws org.springframework.mail.MailException
fromAddress 值doSend 在类中 org.springframework.mail.javamail.JavaMailSenderImplmimeMessages - originalMessages - org.springframework.mail.MailExceptionprotected void asyncLogic(String subject, String text, CoupleMailProcessor coupleMailProcessor, Object model, boolean isTemplate, boolean isHtml, String... to)
protected String processTemplate(String template, Object model) throws ParseTemplateException, IllegalArgumentException
template - model - ParseTemplateExceptionIllegalArgumentExceptionprotected javax.mail.Address createFromAddress(String addr, String personal) throws UnsupportedEncodingException
addr - 邮件地址personal - 人名UnsupportedEncodingExceptionprotected boolean hasPersonal(String address)
隔壁老王 <3xxxxx@qq.com>
address - public String getFromAddress()
public void setFromAddress(String fromAddress)
fromAddress - public String getFromPersonal()
public void setFromPersonal(String fromPersonal)
public org.springframework.core.task.AsyncListenableTaskExecutor getExecutor()
public void setExecutor(org.springframework.core.task.AsyncListenableTaskExecutor executor)
public org.springframework.util.concurrent.ListenableFutureCallback<javax.mail.internet.MimeMessage[]> getCallback()
public void setCallback(org.springframework.util.concurrent.ListenableFutureCallback<javax.mail.internet.MimeMessage[]> callback)
public TemplateProcessor getDefaultTemplateProcessor()
public void setDefaultTemplateProcessor(TemplateProcessor defaultTemplateProcessor)
public void setTemplateProcessorMapping(String mapping)
/templates/order.ftl=freemarker
/templates/cards.vm=velocity
注:等号后面的freemarker、velocity是通过processorMap来决定的mapping - public ConcurrentHashMap<String,String> getTemplateMap()
public ConcurrentHashMap<String,TemplateProcessor> getProcessorMap()
public void setProcessorMap(Map<String,TemplateProcessor> processorMap)
Copyright © 2017. All rights reserved.