Diferencia entre revisiones de «Enviar Mails Con Spring»

De Dos Ideas.
Saltar a: navegación, buscar
(Página nueva: Entre las muchas cosas que nos provee Spring Framework también esta una librería para el envió de mail. Esta se encuentra en el paquete ''org.springframework.mail'' Para el en...)
 
 
(No se muestra una edición intermedia de otro usuario)
Línea 1: Línea 1:
 +
[[Category:Spring Framework]]
 +
 
Entre las muchas cosas que nos provee [[Spring Framework]] también esta una librería para el envió de mail. Esta se encuentra en el paquete ''org.springframework.mail''
 
Entre las muchas cosas que nos provee [[Spring Framework]] también esta una librería para el envió de mail. Esta se encuentra en el paquete ''org.springframework.mail''
  
Línea 12: Línea 14:
  
 
===Archivo application-mail.xml===
 
===Archivo application-mail.xml===
<pre>
+
<code xml>
 
  <beans>
 
  <beans>
 
     <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
 
     <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
Línea 28: Línea 30:
 
     </bean>
 
     </bean>
 
  </beans>
 
  </beans>
</pre>
+
</code>
  
 
En este archivo de configuración lo que hacemos es:
 
En este archivo de configuración lo que hacemos es:
Línea 39: Línea 41:
  
 
Ahora lo único que nos queda es usar nuestro Dao.
 
Ahora lo único que nos queda es usar nuestro Dao.
<pre>
+
<code java>
 
  public class MailDaoImpl implements MailDao {
 
  public class MailDaoImpl implements MailDao {
 
     private MailSender mailSender;
 
     private MailSender mailSender;
Línea 56: Línea 58:
 
     }
 
     }
 
  }
 
  }
</pre>
+
</code>
  
 
==Ver también==
 
==Ver también==
 
* [http://www.springframework.org/docs/reference/mail.html Manual de Spring, capitulo de Mail]
 
* [http://www.springframework.org/docs/reference/mail.html Manual de Spring, capitulo de Mail]

Revisión actual del 18:24 26 ago 2009


Entre las muchas cosas que nos provee Spring Framework también esta una librería para el envió de mail. Esta se encuentra en el paquete org.springframework.mail

Para el envió de mail usaremos la interface MailSender y la clase SimpleMailMessage.

MailSender se encargara de hacer el send del mensaje con la ayuda del servidor que le hayamos configurado.

SimpleMailMessage contendra todo lo que tenga que ver con el mail (from, to , texto, subject..)

Ejemplo

Lo primero que haremos es crear un archivo de configuración para el mail.

Archivo application-mail.xml

<beans>
   <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
       <property name="host" value="smtp.dosideas.com"/>
   </bean>
   <bean id="templateMessage" class="org.springframework.mail.SimpleMailMessage">
       <property name="from" value="zim@gmail.com"/>
       <property name="subject" value="Dos Ideas: Un mail de prueba"/>
   </bean>
   <bean id="dao.EnvioMailDAO" class="com.dosideas.dao.sender.MailDaoImpl">
       <property name="mailSender" ref="mailSender"/>
       <property name="templateMessage" ref="templateMessage"/>
   </bean>
</beans>

En este archivo de configuración lo que hacemos es:

  1. Setear al mailSender el host ("smtp.dosideas.com"),
  2. Setear al templateMessage el from y el subject. Esto es opcional.
  3. Agregar al dao el mailSender y templateMessage como atributos para que cuando usemos el dao estos vengan cargados con los valores que le configuramos.

La clase MailDaoImpl

Ahora lo único que nos queda es usar nuestro Dao.

public class MailDaoImpl implements MailDao {
    private MailSender mailSender;
    private SimpleMailMessage templateMessage;
    //getters y setters...
    public void enviarMail(String textoMensaje,String destinatario) {
        //creamos un SimpleMailMessage apartir del que configuramos.
        SimpleMailMessage msg = new !SimpleMailMessage(this.templateMessage);
        msg.setText(textoMensaje );
        msg.setTo(destinatario);
        this.mailSender.send(msg);
    }
}

Ver también