Рубрики
Без рубрики

Spring – Определение шаблона электронной почты в файле конфигурации компонента

– Spring – Определите шаблон электронной почты в файле конфигурации компонента

В последнем учебнике по электронной почте Spring вы жестко кодируете все свойства электронной почты и содержимое сообщений в теле метода, это непрактично и следует избегать. Вам следует рассмотреть возможность определения шаблона сообщения электронной почты в файле конфигурации компонента Spring.

1. Зависимость от проекта

Добавьте зависимость JavaMail и Spring.

Файл: pom.xml


  4.0.0
  com.mkyong.common
  SpringExample
  jar
  1.0-SNAPSHOT
  SpringExample
  http://maven.apache.org
  
  
  	
  		Java.Net
  		http://download.java.net/maven/2/
  	
  
  
  

    
        junit
        junit
        3.8.1
        test
    
    
    
    
	    javax.mail
	    mail
	    1.4.3
    
    
    
    
     	org.springframework
	    spring
	    2.5.6
    
    
  

2. Отправитель весенней почты

Класс Java для отправки электронной почты с интерфейсом Spring MailSender и использования String.format для замены сообщения электронной почты ” %s ” переменной передачи в файле конфигурации компонента.

Файл: MailMail.java

package com.mkyong.common;

import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;

public class MailMail
{
	private MailSender mailSender;
	private SimpleMailMessage simpleMailMessage;
	
	public void setSimpleMailMessage(SimpleMailMessage simpleMailMessage) {
		this.simpleMailMessage = simpleMailMessage;
	}

	public void setMailSender(MailSender mailSender) {
		this.mailSender = mailSender;
	}
	
	public void sendMail(String dear, String content) {

	   SimpleMailMessage message = new SimpleMailMessage(simpleMailMessage);
		
	   message.setText(String.format(
			simpleMailMessage.getText(), dear, content));

	   mailSender.send(message);
		
	}	
}

3. Файл конфигурации компонента

Определите шаблон электронной почты ” пользовательское сообщение электронной почты ” и сведения об отправителе почты в файле конфигурации компонента.

Файл: Spring-Mail.xml




	
	
	
	
		
	
	     
           	true
           	true
       	     
	

	

	
	

	


	
	
	
	
	   
		
        



4. Запустите его

package com.mkyong.common;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class App 
{
    public static void main( String[] args )
    {
    	ApplicationContext context = 
           new ClassPathXmlApplicationContext("Spring-Mail.xml");
    	 
    	MailMail mm = (MailMail) context.getBean("mailMail");
        mm.sendMail("Yong Mook Kim", "This is text content");
        
    }
}

выход

 Dear Yong Mook Kim,
 Mail Content : This is text content

Скачать Исходный Код

Оригинал: “https://mkyong.com/spring/spring-define-an-e-mail-template-in-bean-configuration-file/”