使用spring框架的broadleaf mail sender类
这在java中意味着什么…我看到了一些新的东西,我以前从未见过这样的东西…这段代码使用spring框架javamailsender类发送邮件使用spring框架的broadleaf mail sender类,spring,jakarta-mail,broadleaf-commerce,Spring,Jakarta Mail,Broadleaf Commerce,这在java中意味着什么…我看到了一些新的东西,我以前从未见过这样的东西…这段代码使用spring框架javamailsender类发送邮件 public MimeMessagePreparator buildMimeMessagePreparator(final HashMap<String,Object> props) { MimeMessagePreparator preparator = new MimeMessagePreparator() {
public MimeMessagePreparator buildMimeMessagePreparator(final HashMap<String,Object> props) {
MimeMessagePreparator preparator = new MimeMessagePreparator() {
public void prepare(MimeMessage mimeMessage) throws Exception {
EmailTarget emailUser = (EmailTarget) props.get(EmailPropertyType.USER.getType());
EmailInfo info = (EmailInfo) props.get(EmailPropertyType.INFO.getType());
MimeMessageHelper message = new MimeMessageHelper(mimeMessage, (info.getAttachments() != null && info.getAttachments().size() > 0));
message.setTo(emailUser.getEmailAddress());
message.setFrom(info.getFromAddress());
message.setSubject(info.getSubject());
if (emailUser.getBCCAddresses() != null && emailUser.getBCCAddresses().length > 0) {
message.setBcc(emailUser.getBCCAddresses());
}
if (emailUser.getCCAddresses() != null && emailUser.getCCAddresses().length > 0) {
message.setCc(emailUser.getCCAddresses());
}
String messageBody = info.getMessageBody();
if (messageBody == null) {
messageBody = buildMessageBody(info, props);
}
message.setText(messageBody, true);
for (Attachment attachment : info.getAttachments()) {
ByteArrayDataSource dataSource = new ByteArrayDataSource(attachment.getData(), attachment.getMimeType());
message.addAttachment(attachment.getFilename(), dataSource);
}
}
}; // why there is a semicolon here
return preparator;
}
public MimeMessagePreparator buildMimeMessagePreparator(最终HashMap道具){
MimeMessagePreparator preparator=新的MimeMessagePreparator(){
public void prepare(MimeMessage MimeMessage)引发异常{
EmailTarget emailUser=(EmailTarget)props.get(EmailPropertyType.USER.getType());
EmailInfo=(EmailInfo)props.get(EmailPropertyType.info.getType());
MimeMessageHelper message=新的MimeMessageHelper(mimeMessage,(info.getAttachments()!=null&&info.getAttachments().size()>0));
message.setTo(emailUser.getEmailAddress());
message.setFrom(info.getFromAddress());
message.setSubject(info.getSubject());
if(emailUser.getbccadrides()!=null&&emailUser.getbccadrides().length>0){
message.setBcc(emailUser.getbccadrides());
}
if(emailUser.getccaddress()!=null&&emailUser.getccaddress().length>0){
message.setCc(emailUser.getccaddress());
}
字符串messageBody=info.getMessageBody();
如果(messageBody==null){
messageBody=buildMessageBody(信息、道具);
}
message.setText(messageBody,true);
对于(附件:info.getAttachments()){
ByteArrayDataSource dataSource=新的ByteArrayDataSource(attachment.getData(),attachment.getMimeType());
message.addAttachment(attachment.getFilename(),数据源);
}
}
};//为什么这里有分号
报税表编制人;
}
如果您对分号感到困惑,代码将创建一个匿名内部类,它是MimeMessagePreparator的子类。分号是preparator变量赋值的结尾