“Conocimiento Programación>Programación Java

¿Cómo se envía un correo con Java?

2014/5/13
Java ofrece varias formas de enviar correo electrónico, pero el enfoque más común y directo es usar la API 'Javax.mail`. Esta API es parte del paquete Javamail, que deberá incluir en su proyecto. Aquí hay un desglose de cómo enviar un correo electrónico simple usando Javamail, junto con explicaciones y consideraciones importantes:

1. Dependencias:

Deberá agregar la dependencia de Javamail a su proyecto. Si está usando Maven, agregue esto a su `pom.xml`:

`` `XML

com.sun.mail

javax.mail

1.6.2

`` `` ``

Si está usando Gradle, agregue esto a su `build.gradle`:

`` `Gradle

Implementación 'com.sun.mail:javax.mail:1.6.2'

`` `` ``

2. Ejemplo de código:

`` `Java

import javax.mail.*;

import javax.mail.internet.*;

import java.util.properties;

clase pública sendemail {

public static void main (string [] args) {

// ID de correo electrónico del destinatario

Cadena a ="[email protected]";

// ID de correo electrónico y contraseña del remitente

Cadena de ="[email protected]";

String Password ="Your_Password";

// Asunto del correo electrónico

String SUMPORT ="Test Correo electrónico de Java";

// cuerpo del correo electrónico

String Message ="Este es un correo electrónico de prueba enviado desde Java.";

// Configuración de propiedades

Propiedades Props =New Properties ();

props.put ("mail.smtp.host", "smtp.example.com"); // reemplazar con su servidor SMTP

propssput ("mail.smtp.port", "587"); // Reemplace con su puerto SMTP (a menudo 587 o 465)

propssput ("mail.smtp.auth", "verdadero"); // Habilitar autenticación

props.put ("mail.smtp.starttls.enable", "true"); // Habilitar el cifrado TLS

// crear un objeto de sesión

Sesión session =session.getInstance (props, new javax.mail.authenticator () {

protegido PassionAuthentication getPasswordAuthentication () {

devolver una nueva contraseña Authentication (desde, contraseña);

}

});

intentar {

// Crear un objeto MIMEMESSAGE predeterminado.

MIMEMESSAGE MENSAJE1 =new MimemEssage (sesión);

// establecido desde:campo de encabezado del encabezado.

Message1.setFrom (nuevo Internetaddress (desde));

// Establecer en:campo de encabezado del encabezado.

Message1.addrecipient (Message.RecipientType.to, nuevo Internetaddress (a));

// Establecer sujeto:campo de encabezado

Message1.setsubject (sujeto);

// ahora establece el mensaje real

Message1.settext (mensaje);

// Enviar mensaje

Transport.send (Mensaje1);

System.out.println ("¡correo electrónico enviado correctamente!");

} catch (MessionGingException Mex) {

mex.printstacktrace ();

}

}

}

`` `` ``

3. Explicación:

* `Propiedades de propiedades`: Este objeto contiene la configuración de su servidor SMTP (el servidor de correo saliente). Tú debe Reemplace `" smtp.example.com "`, `" 587 "`, `" [email protected] "`, y `" Your_Password "` con los detalles de su servidor SMTP reales, el puerto, la dirección de correo electrónico y la contraseña. El puerto es a menudo 587 (para TLS) o 465 (para SSL). Consulte la documentación de su proveedor de correo electrónico para obtener la configuración correcta.

* `Sesión Sesión`: Esto crea un objeto de sesión utilizando las propiedades y un 'Authenticator' para manejar la autenticación con su servidor SMTP.

* `Mimemessage Message1`: Esto crea el mensaje de correo electrónico.

* `setFrom`,` AdDRecipient`, `setSubject`,` setText`: Estos métodos establecen el encabezado y el cuerpo del correo electrónico.

* `Transport.send (Message1)`: Esto envía el correo electrónico.

* Manejo de errores: El bloque `try-Catch` maneja los posibles errores de` MessésgingException` durante el proceso de envío de correo electrónico.

4. Consideraciones importantes:

* Seguridad: Nunca hardifique su contraseña de correo electrónico directamente en su código. Considere usar variables de entorno o un método más seguro para almacenar información confidencial.

* Configuración del servidor SMTP: Asegúrese de tener la configuración correcta del servidor SMTP de su proveedor de correo electrónico (Gmail, Outlook, Yahoo, etc.). A menudo requieren habilitar "acceso de aplicación menos seguro" o configurar una contraseña de una aplicación por razones de seguridad.

* Manejo de errores: El manejo de errores robusto es crucial para manejar posibles problemas de red, fallas de autenticación y otros problemas. El ejemplo proporcionado incluye el manejo básico de errores, pero debe agregar registros más completos de registro e informes de errores en un entorno de producción.

* Adjuntos: Para agregar archivos adjuntos, deberá usar `mimeBodyPart` y` multipart` para construir un mensaje más complejo. Esto está más allá del alcance de este simple ejemplo, pero se puede buscar fácilmente en línea.

* correos electrónicos html: Para enviar correos electrónicos HTML, deberá establecer el `ContentType` del mensaje en` Text/HTML`.

Esta explicación detallada debería ayudarlo a enviar correos electrónicos con Java. Recuerde reemplazar los valores del marcador de posición con sus propias credenciales e información del servidor. Priorice siempre la seguridad y maneje los errores con gracia.

Programación Java
¿Qué es un encabezado en Java
¿Cuál es la complejidad del tiempo de las operaciones de cola prioritaria en Java?
Las diferencias entre Java y Javascript
Cómo devolver un campo oculto en JSP
Cómo cambiar el color de la barra de desplazamiento Usando Java
Acerca de las funciones de caracteres Java
Cómo hacer un Hit Java Mostrador
¿Estás intentando descargar Java en MacBook Pro?
Conocimiento de la computadora © http://www.ordenador.online