Artigo anterior AIntrodução ao Javamail No terceiro artigo para enviar e -mails, aprendemos a usar a classe de transporte fornecida pela API Javamail para enviar e -mails. Da mesma forma, a API Javamail também fornece algumas classes especiais para executar operações relacionadas na recepção de emails. Antes de apresentar essas classes, vamos primeiro entender a arquitetura da API de recepção de email. A API do Javamail define uma classe java.mail.store, que é usada para executar tarefas de recepção de email. Chamamos métodos nesta classe no programa para obter informações sobre cada pasta de email na caixa de correio. O Javamail usa o objeto Pasta para representar a pasta de email. Através do método do objeto da pasta, todas as informações de email na pasta de email podem ser obtidas. Sabemos que as informações do email podem ser representadas pelo objeto de mensagem. A classe de mensagem contém vários métodos para operar o email, como obter o remetente, sujeito, conteúdo corporal, tempo de envio etc. O relacionamento de trabalho deles é o seguinte:
1. Obtenha um objeto de loja que implementa um determinado protocolo de envio de email do objeto de sessão;
2. Faça login no endereço de e -mail e conecte -se ao servidor POP3 ou IMAP4;
3. Ligue para o método GetFolder da loja para obter o objeto de pasta de uma determinada pasta de email na caixa de correio;
4. Ligue para o método GetMessage ou GetMessages no objeto Pasta para obter um determinado email ou todos os emails na pasta de email. Cada email é retornado como um objeto de mensagem.
Em seguida, usamos a classe acima para receber e -mails
importar java.util.properties; importar javax.mail.address; importar javax.mail.folder; importar javax.mail.message; importar javax.mail.session; import javax.mail.store; classe Mailreceives {public Stoid Main Main (string [] args) se move = "pop.qq.com"; String protocol = "pop3"; String userName = "[email protected]"; String senha = "******************"; // O código de autorização SMTP da caixa de correio QQ, qual é o código de autorização e como é definido? Propriedades Props = new Properties (); props.setProperty ("Mail.transport.protocol", protocolo); // protocolo usado (exigido pela especificação javamail) props.setProperty ("Mail.smtp.host", pop3Server); // O endereço do servidor SMTP da caixa de correio do remetente // Obtenha a sessão de conexão session = session.getDefaultInstance (Props); session.setDebug (false); // Obtenha a loja de objetos da loja Store = session.getStore (protocolo); store.connect (pop3Server, nome de usuário, senha); // Autenticação de login do servidor POP3 // Ao obter o objeto de armazenamento através do protocolo POP3, o nome da pasta de email pode ser especificado apenas como pasta "de entrada" da pasta = store.getFolder ("caixa de entrada"); // Obtenha a pasta da conta de email do usuário.open (pasta.read_write); // Defina o acesso à mensagem da conta de email [] mensagens = pasta.getMessages (); // Obtenha todas as mensagens na conta de email para (mensagem de mensagem: mensagens) {string sujeito = message.getSubject (); // obtenha o endereço de email de = (endereço) message.getFrom () [0]; // obtenha o endereço do remetente/sistema de remetente.Println "" System.out.println ("O conteúdo da mensagem é:"); message.WritETO (System.out); // Ema forma o conteúdo de email para o console} pasta.close (false); // feche o objeto de pasta store.close (); // Fechar o objeto de conexão}}Resultado da saída do console:
Você pode ver que o console gera o conteúdo original do email, que ainda não foi analisado, por isso precisa ser analisado antes da leitura. O próximo artigo, Introdução ao Javamail, capítulo 5, analisar e -mails, explicará como analisar e -mails.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.