2009-01-27 24 views
10

Necesito una biblioteca que me permita realizar operaciones de correo electrónico (por ejemplo, enviar/recibir correo) en Gmail utilizando Java.Acceder a Gmail desde Java

+6

Maldita sea, ¿Google ha vuelto a bajar? – Bombe

+1

a través de IMAP? A través de POP3/SMTP? Proporcione más información, de lo contrario, es una pregunta "Preguntar a Google". – guerda

Respuesta

13

¿Has visto g4j - GMail API for Java?

GMailer API para Java (g4j) es un conjunto de API que permite al programador de Java comunican a Gmail. Con G4J los programadores pueden hacer la aplicación basada en Java que basado en el gran almacenamiento de GMail.

+0

¿Qué tal usar pop3? ¿Y g4j se mantiene actualizado cuando/si gmail actualiza/cambia su html rendererd client? – Zombies

1

Primero, configure su cuenta de Gmail para aceptar el acceso POP3. ¡Entonces, simplemente acceda a su cuenta de correo usando Javamail!

+1

aún mejor: IMAP – jamesh

9

Puede usar Javamail para eso. Lo que hay que recordar es que GMail usa SMTPS no SMTP.

import javax.mail.*; 
import javax.mail.internet.*; 

import java.util.Properties; 


public class SimpleSSLMail { 

    private static final String SMTP_HOST_NAME = "smtp.gmail.com"; 
    private static final int SMTP_HOST_PORT = 465; 
    private static final String SMTP_AUTH_USER = "[email protected]"; 
    private static final String SMTP_AUTH_PWD = "mypwd"; 

    public static void main(String[] args) throws Exception{ 
     new SimpleSSLMail().test(); 
    } 

    public void test() throws Exception{ 
     Properties props = new Properties(); 

     props.put("mail.transport.protocol", "smtps"); 
     props.put("mail.smtps.host", SMTP_HOST_NAME); 
     props.put("mail.smtps.auth", "true"); 
     // props.put("mail.smtps.quitwait", "false"); 

     Session mailSession = Session.getDefaultInstance(props); 
     mailSession.setDebug(true); 
     Transport transport = mailSession.getTransport(); 

     MimeMessage message = new MimeMessage(mailSession); 
     message.setSubject("Testing SMTP-SSL"); 
     message.setContent("This is a test", "text/plain"); 

     message.addRecipient(Message.RecipientType.TO, 
      new InternetAddress("[email protected]")); 

     transport.connect 
      (SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD); 

     transport.sendMessage(message, 
      message.getRecipients(Message.RecipientType.TO)); 
     transport.close(); 
    } 
} 

ref: Send email with SMTPS (eg. Google GMail) (Javamail)

Cuestiones relacionadas