Cuando el usuario ha comprado el producto, debemos enviar un correo electrónico al usuario para decirle que se ha generado el pedido y que la dirección de correo electrónico se obtiene de la información básica del usuario. Bien, veamos primero el método de enviar correos electrónicos en Java.
1. Métodos para enviar correo electrónico en Java
Antes de mejorar este proyecto, primero revisemos cómo se envían los correos electrónicos en Java. En primer lugar, debe enviar correos electrónicos: mail.jar, importarlos al directorio lib. Bien, escribamos un programa de Java ordinario para revisar los puntos de conocimiento del correo electrónico de Java:
La clase pública SendEmaildemo {public static void main (String [] args) lanza la excepción {// 1. Inicie sesión en el cliente de correo electrónico (Crear sesión Crear sesión) Propiedades prop = new Properties (); prop.setProperty ("mail.transport.protocol", "smtp"); // Crear sesión Sesión Sesión Sesión Sesión = Session.GetDefaultInstance (PROP); // Establecer el modo de depuración para depurar el mensaje session.setDebug (true); // crear un mensaje de objeto de correo electrónico = new Mimemessage (sesión); // Escribir un mensaje de carta. Setsubject ("¡Bienvenido a mi página de inicio del blog CSDN!") // Text Content Message.setContent ("Bienvenido a mi blog CSDN Blog HomePage: http://blog.csdn.net/eson_15" + ", Momoda ~", "Text/html; charset = utf-8"); // dirección del accesor Message.setFrom (nueva Internetaddress ("[email protected]")); Transport Transport = session.getTransport (); // Información de certificación del transporte del servidor de correo de enlaces. // Establezca la dirección del destinatario y envíe el correo electrónico transport.sendMessage (mensaje, nuevo Internetaddress [] {new InternetAddress ("[email protected]")}); transport.close (); }}Lo anterior es el proceso de enviar correos electrónicos en Java: crear una sesión> Información de correo electrónico encapsular> Establecer dirección del remitente> Establecer dirección del destinatario> Enviar.
2. Encapsular envío de la función de correo
Después de revisar el método de enviar correos electrónicos por Java, encapsulamos este proceso en una clase de herramientas, creamos una nueva clase de implementación de correo electrónico.
// La interfaz de correo electrónico extraída interfaz pública de interfaz de correo electrónico {public abstract void sendEmail (string Correo electrónica, ID de cadena);} // Correo electrónico Clase de implementación Correo electrónico Cliente (Crear sesión Session) Propiedades prop = new Properties (); Sesión sesión = nulo; Mensaje mensaje = nulo; Transporte de transporte = nulo; intente {prop.setProperty ("mail.transport.protocol", "smtp"); // Crear sesión Session = Session.GetDefaultInstance (PROP); // Establecer el modo de depuración para depurar el mensaje session.setDebug (true); // crear un mensaje de objeto de correo electrónico = new Mimemessage (sesión); // Escribir una carta Message.SetSubject ("Comentarios en el orden del centro comercial en línea"); // Text Content Message.setContent ("Hola Cliente, bienvenido a visitar el centro comercial en línea, ordene" + ID + "Pagado con éxito!", "Text/Html; Charset = UTF-8"); // Dirección de archivo adjunto Message.setFrom (nuevo Internetaddress ("[email protected]")); transport = session.getTransport (); // Información de autenticación del transporte del servidor de correo de enlace. // Establezca la dirección del destinatario y envíe el transporte por correo electrónico. } catch (Exception e) {E.PrintStackTrace (); tirar nueva runtimeException (e); } finalmente {try {transport.close (); } catch (MessionGingException e) {E.PrintStackTrace (); tirar nueva runtimeException (e); }}}3. Mejorar
Complete la encapsulación de la clase de herramientas. A continuación, colocamos la clase de herramientas en Baseaction y la inyectamos a través de la anotación @Resource para su uso por acción. A continuación mejoraremos el método de backbank () en la acción de pago anterior, de la siguiente manera:
@Controller ("PayAction")@Scope ("Prototype") Public Class PayAction extiende BASEACTION <ject> Implementa ParameteraSAWare {// omitir código irrelevante ... public void backbank () {backdata backdata = (backdata) modelo; System.out.println (modelo); boolean isok = payservice.checkbackData (backdata); if (isok) {// 1. Actualizar el estado del pedido, los parámetros se transmiten por sí solo de acuerdo con la situación en la base de datos, y se utilizan para probar Forderservice.updatestatusById (Integer.ValueOf (201605006), 2); // 2. Envíe el correo electrónico de acuerdo con la dirección de correo electrónico del usuario String CageAddress = BackData.getR8_MP (). Split (",") [0]; correo electrónico. // 3. Enviar mensajes de texto de teléfono móvil, el próximo blog presenta la función de enviar mensajes de texto System.out.println ("--- ¡éxito! ----"); } else {System.out.println ("---- falso !!! -----"); }}} En la información devuelta desde Yibao, el parámetro R6_ORDER guarda el número de pedido, y el parámetro R8_MP es el número de correo electrónico y el número de teléfono del usuario. La primera es la dirección de correo electrónico y la segunda es el número de teléfono, separado por comas, por lo que primero debemos obtener la dirección de correo electrónico del usuario y luego enviar el correo electrónico. Ok, se completa la función de enviar correos electrónicos al usuario después de completar el pago.
Enlace original: http://blog.csdn.net/eson_15/article/details/51475046
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.