Red de conocimiento informático - Material del sitio web - Cómo enviar varios correos electrónicos usando jmail

Cómo enviar varios correos electrónicos usando jmail

El programa principal para enviar correos electrónicos import java.util.Properties;

import common.util.Email_Autherticatorbean

import javax.mail.Authenticator

p >

importar javax.mail.internet.InternetAddress;

importar org.apache.commons.lang.StringUtils

importar javax.mail.internet.MimeBodyPart; p >

importar javax.mail.Multipart;

importar javax.activation.FileDataSource

importar javax.mail.internet.MimeMultipart; javax .activation.DataHandler;

importar javax.mail.internet.MimeUtility;

importar java.util.Date; /**

* Usar java. mail Programa de envío de correo

*/ public class SendMailTest

{

public static void main(String[] args)

{

String title = "titleTest";//El título del correo electrónico enviado

String from="sir_znp@163.com";//Enviado desde allí

String sendTo[] = {"znp@163.net","sir_znp@163.com"};//Envíalo allí

//El contenido de texto del correo electrónico puede contener etiquetas html y se mostrará como página html

Contenido de cadena = "prueba de correo!!!!!!
aaa"

// Archivos adjuntos incluidos y cambio de nombre de los archivos adjuntos

String fileNames[] = {"F:\\music\\text1.txt,text1.txt","F:\\music\\text2.txt,text2 .txt "};

prueba {

// MailSender mailsender = new MailSender();

sendmail(título, de, enviar a, contenido, nombres de archivo, "text /html;charset=gb2312");

} catch (Excepción ex) { ex.printStackTrace();

} envío de correo vacío estático público (Asunto de cadena, Cadena de , String [] a, String text, String[] nombres de archivos,String mimeType) arroja una excepción

{

//ResourceBundle mailProps = ResourceBundle.

getBundle("mail"); Puede leer los parámetros correspondientes desde el archivo de configuración

Properties props = new Properties(); String smtp = "smtp.163.com" //Establezca los parámetros utilizados para enviar correos electrónicos smtp

String servername = "sir_znp";

String serverpaswd = "123"; javax.mail.Session mailSession //Objeto de sesión de correo

javax.mail.internet.MimeMessage mimeMsg; //Objeto de correo MIME props = java.lang.System.getProperties(); //Obtener objeto de propiedades del sistema

props.put("mail.smtp.host" , smtp ); //Configurar el host SMTP

props.put("mail.smtp.auth", "true"); //Si se debe verificar el nombre de usuario y la contraseña del servidor

//Para El servidor verifica si el nombre de usuario y la contraseña enviados son correctos

Email_Autherticatorbean myEmailAuther = new Email_Autherticatorbean(servername, serverpaswd

//Configurar la sesión de correo electrónico

mailSession = javax. mail.Session.getInstance(props, (Authenticator) myEmailAuther);

//Establecer el protocolo de transporte

javax.mail.Transport transport = mailSession .getTransport("smtp");

//Establecer desde, hacia y otra información

mimeMsg = new javax.mail.internet.MimeMessage(mailSession

<); p>if (!StringUtils.isEmpty(from ))

{

Dirección de Internet enviada desde = nueva Dirección de Internet (de);

mimeMsg.setFrom(enviada desde); //Establece la dirección del remitente

} InternetAddress[] sendTo = new InternetAddress[to.length]

for (int i = 0; i < to.length; i++)

{

System.out.println("Enviar a:" + a[i]);

enviar a[i] = nueva dirección de Internet(a[i]); ]);

} mimeMsg.setRecipients(javax.mail.internet.MimeMessage.RecipientType.TO, sendTo);

mimeMsg.setSubject(asunto, "gb2312"); = nuevo MimeBodyPart();

//messageBodyPart.setText(UnicodeToChinese(texto));

messageBodyPart1.setContent(text, mimeType); Multipart multipart = new MimeMultipart();//Formato de transferencia de archivos adjuntos

multipart.addBodyPart(messageBodyPart1 for (int i = 0; i < filenames.length; i++); ) {

MimeBodyPart messageBodyPart2 = new MimeBodyPart();

//Seleccione el nombre de cada archivo adjunto

String filename = filenames[i].split(" ," )[0];

System.out.println("Nombre del archivo adjunto: " + nombre de archivo);

String displayname = nombres de archivo[i].split(",") [1 ];

//Obtener la fuente de datos

FileDataSource fds = new FileDataSource(filename);

//Obtener el archivo adjunto y fusionarlo en BodyPart;

messageBodyPart2.setDataHandler(new DataHandler(fds));

//Obtenga el nombre del archivo e ingrese BodyPart

//messageBodyPart2.setFileName(displayname)

p>

// messageBodyPart2.setFileName(fds.getName());

messageBodyPart2.setFileName(MimeUtility.encodeText(displayname)); p>multipart.addBodyPart(messageBodyPart2)

}

mimeMsg.setContent(multipart);

//Establecer la fecha de envío del encabezado de la carta

mimeMsg.setSentDate(new Date());

mimeMsg.saveChanges();

//Enviar correo electrónico

transport.send( mimeMsg);

transport.close();

} } Clase de autenticación

paquete common.util

importar javax.mail; .Authenticator;

import javax.mail.PasswordAuthentication;

clase pública Email_Autherticatorbean extiende el autenticador

{

cadena privada m_username = null;

cadena privada m_userpass = null; setUsername público void(nombre de usuario de cadena)

{

m_username = nombre de usuario

} setUserpass público void; (Cadena contraseña de usuario)

{

m_userpass =

contraseña de usuario;

} public Email_Autherticatorbean(nombre de usuario de cadena, contraseña de usuario de cadena)

{

super();

setUserpass(userpass); }

public PasswordAuthentication getPasswordAuthentication()

{ return new PasswordAuthentication(m_username,m_userpass

}

} Referencia fuente detallada: /article/15323.htm