Programação  
 
Rede de conhecimento computador >> Programação >> Programação em Java >> Content
Como você envia um e -mail com Java?
O Java oferece várias maneiras de enviar email, mas a abordagem mais comum e direta é usar a API `javax.mail`. Esta API faz parte do pacote Javamail, que você precisará incluir em seu projeto. Aqui está um detalhamento de como enviar um e -mail simples usando o Javamail, juntamente com explicações e considerações importantes:

1. Dependências:

Você precisará adicionar a dependência do Javamail ao seu projeto. Se você estiver usando o MAVEN, adicione isso ao seu `pom.xml`:

`` `xml

com.sun.mail
javax.mail
1.6.2
`` `

Se você estiver usando o gradle, adicione isso ao seu `build.gradle`:

`` `gradle
Implementação 'com.sun.mail:javax.mail:1.6.2'
`` `

2. Exemplo de código:

`` `Java
importar javax.mail.*;
importar javax.mail.internet.*;
importar java.util.properties;

classe pública sendemail {

public static void main (string [] args) {

// ID de e -mail do destinatário
String para ="[email protected]";

// ID de e -mail do remetente e senha
String de ="[email protected]";
String senha ="your_password";

// Assunto do email
String sujeito ="Email de teste de Java";

// corpo do e -mail
String message ="Este é um email de teste enviado de Java.";

// Configurando propriedades
Propriedades Props =new Properties ();
props.put ("Mail.smtp.host", "smtp.example.com"); // Substitua pelo seu servidor SMTP
props.put ("Mail.smtp.port", "587"); // Substitua pela sua porta SMTP (geralmente 587 ou 465)
props.put ("Mail.smtp.auth", "true"); // Ativar autenticação
props.put ("Mail.smtp.starttls.enable", "true"); // Ative a criptografia TLS

// Crie um objeto de sessão
Sessão session =session.getInstance (Props, new javax.mail.authenticator () {
Protected PasswordAuthentication getPasswordAuthentication () {
retornar nova senha da autenticação (de, senha);
}
});

tentar {
// Crie um objeto Mimemessage padrão.
MIMEMESSAGE MENSAGEM1 =NOVO MIMEMESSAGE (SESSÃO);

// Defina em:Campo de cabeçalho do cabeçalho.
message1.setFrom (new InternetAddress (de));

// Defina como:Campo do cabeçalho do cabeçalho.
message1.addrecipient (message.recipientType.to, novo internetddress (to));

// Defina o assunto:Campo de cabeçalho
message1.SetSubject (sujeito);

// agora defina a mensagem real
message1.settext (mensagem);

// Enviar mensagem
Transport.send (mensagem1);

System.out.println ("Email enviado com sucesso!");

} catch (MessagingException mex) {
mex.printStackTrace ();
}
}
}
`` `

3. Explicação:

* `Propriedades Props`: Este objeto contém a configuração do seu servidor SMTP (o servidor de email de saída). Você deve Substitua `" smtp.example.com "`, `" 587 "`, `" [email protected] "` e `" your_password "` com os detalhes do servidor SMTP reais, porta, endereço de e -mail e senha. A porta é frequentemente 587 (para TLS) ou 465 (para SSL). Verifique a documentação do seu provedor de e -mail para obter as configurações corretas.
* `sessão session`: Isso cria um objeto de sessão usando as propriedades e um `autenticator` para lidar com a autenticação com seu servidor SMTP.
* `Mimemessage message1`: Isso cria a mensagem de email.
* `setFrom`,` addrecipient`, `setSubject`,` setText`: Esses métodos definem o cabeçalho e o corpo do email.
* `transport.send (mensagem1)`: Isso envia o email.
* Manuseio de erro: O bloco `Try-Catch` lida com potenciais erros de` MessagingException` durante o processo de envio de email.


4. Considerações importantes:

* Segurança: Nunca codifique sua senha de e -mail diretamente no seu código. Considere o uso de variáveis ​​de ambiente ou um método mais seguro para armazenar informações confidenciais.
* configurações do servidor SMTP: Certifique -se de ter as configurações corretas do servidor SMTP do seu provedor de e -mail (Gmail, Outlook, Yahoo, etc.). Eles geralmente exigem ativar o "acesso a aplicativo menos seguro" ou configurar uma senha de aplicativo por motivos de segurança.
* Manuseio de erro: O tratamento robusto de erro é crucial para lidar com possíveis problemas de rede, falhas de autenticação e outros problemas. O exemplo fornecido inclui manuseio básico de erros, mas você deve adicionar um registro mais abrangente e relatórios de erros em um ambiente de produção.
* Anexos: Para adicionar anexos, você precisará usar `MimebodyPart` e` Multipart` para construir uma mensagem mais complexa. Isso está além do escopo deste exemplo simples, mas é facilmente pesquisável online.
* e -mails html: Para enviar e -mails HTML, você precisará definir o `contentType` da mensagem para` text/html`.


Essa explicação detalhada deve ajudá -lo a enviar e -mails usando o Java. Lembre -se de substituir os valores de espaço reservado por suas próprias credenciais e informações do servidor. Sempre priorize a segurança e lide com os erros graciosamente.

Anterior :

Próximo :
  Os artigos relacionados
·O que Jhsmith criou? 
·Como Craft um Sachet 
·Como criptografar um arquivo grande em Java 
·Como acessar as variáveis ​​de classe pública em Java…
·Como detectar Unicode de caracteres internacionais em J…
·O que é um Java Widget 
·Como traduzir o código C para Java 
·Como usar o Java na classe da matemática 
·O que é um Socket em Java 
·Como verificar se ResultSet é nulo 
  Artigos em destaque
·Como posso especificar um Taglib em Java 
·Como ler e-mail em Visual Basic 
·Como testar Cordas em Korn Shell 
·Como excluir caracteres de uma URL em PHP 
·Como excluir todas as instâncias de uma classe em Pyth…
·Como converter uma String a uma Lista 
·Como alterar a Base de Dados em Python 
·Como: Array para sentença em Ruby 
·Exec Vs . Sistema em PHP 
·Como alterar o login do Windows XP em Usando VB 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados