Я отправляю электронную почту с помощью Spring MVC, но она отображается по-разному в браузере и электронной почте Outlook
@Service("emailService")
public class EmailService {
@Autowired
private JavaMailSender mailSender;
StringBuilder ResponseTable=new StringBuilder();
public void sendMail(String emailid,String subject,int
tracking_id,String classification_type){
MimeMessage message=mailSender.createMimeMessage();
MimeMessageHelper helper=new MimeMessageHelper(message,true,"UTF- 8");
helper.setTo(emailid);
helper.setText(ResponseTable.toString(),true);
helper.setSubject(subject);
mailSender.send(message);
}
}
-1
Deepak Singh
16 Дек 2019 в 12:49
Пожалуйста, повторно отметьте свой вопрос. Этот вопрос вряд ли связан с каким-либо из этих тегов. В основном это связано с тем, «как форматировать таблицы в Mails / Outlook».
– Alexander
16 Дек 2019 в 13:07
С помощью всего 2 скриншотов на этот вопрос невозможно ответить. Добавьте код, который подготавливает и отправляет электронное письмо, вашу конфигурацию и т. д. Пожалуйста, прочтите stackoverflow.com/help/how-to-ask о том, как задать хороший вопрос.
– M. Deinum
16 Дек 2019 в 13:15
1 ответ
Вы можете использовать шаблон Velocity Engine для создания пользовательского шаблона:
создайте свой шаблон mailTemplate.vm
создайте метод, в который вы можете вставить данные в модель
создайте метод для вставки этой модели в ваш шаблон
1.mailTemplate.vm
<html> <head></head> <body> <p>hello,</p> <p>${variable}</p> </body> </html>
Создать модель для отправки уведомления по электронной почте
public Boolean NotificationMail (отправитель строки, получатель строки, URL-адрес строки, Тема строки, нижний колонтитул строки) { LOG.info(" ... Отправка нового письма с уведомлением о подписке "); пытаться { JavaMailSenderImpl mailSender = new JavaMailSenderImpl(); mailSender.setHost(mailHost); mailSender.setPort(порт); mailSender.setJavaMailProperties(setMailProperties()); Map
model = new HashMap (); model.put("переменная", "привет это текст будет отображаться в почте"); Тело строки = getVelocityTemplate (модель); LOG.info("Почтовый хост {}, порт {}, URL-адрес {}, отправитель {}, получатель {}, тема {}, тело {}", mailHost, порт, URL, отправитель, получатель, тема, тело); Логическое значение send = mailService.sendMailWithImg (отправитель, получатель, тема, тело); вернуть истину; } поймать (IllegalArgumentException e) { LOG.error("IllegalArgumentException , Отсутствует конфигурация", e); } поймать (Исключение e) { LOG.error("Общее исключение: {}", e); } вернуть ложь; } код>пре>ли> вставить модель в шаблон
protected String getVelocityTemplateContent (модель Map
) { StringWriter stringWriter = новый StringWriter(); Построитель StringBuilder = новый StringBuilder(); builder.append("/template/mailTemplate.vm"); пытаться { VelocityEngineUtils.mergeTemplate(velocityEngine, builder.toString(), "UTF8", модель, СтроковыйПрайтер); вернуть stringWriter.toString(); } поймать (Исключение e) { ЛОГ.ошибка("Ошибка",е); } вернуть ноль; } } код>пре>ли>
0
BENMOHAMED Charfeddine
16 Дек 2019 в 16:07
Похожие вопросы
Новые вопросы
spring
Spring Framework - это среда с открытым исходным кодом для разработки приложений на платформе Java. В ее основе лежит широкая поддержка компонентно-ориентированных архитектур, и в настоящее время в ней имеется более двадцати высокоинтегрированных модулей.