Cet article explique le processus détaillé de l'envoi de courriels Java pour votre référence. Le contenu spécifique est le suivant
1. Contrat par e-mail
Envoyé par e-mail par: SMTP (simple Protocal de transport de courrier)
Protocole de réception par e-mail: POP3 (Post Office Protocal 3)
Les e-mails peuvent également être reçus en envoyant de nouveaux protocoles IMAP.
(Interagir avec le serveur étape par étape)
SMTP:
2. Le processus d'envoi et de réception des e-mails:
D'une manière générale, SMTP et POP3 sont deux serveurs (hôtes).
Le port de SMTP Mail est de 25.
Le port POP3 est de 110.
Exemple par e-mail
1) Installer Foxmail:
2) Lors de l'envoi d'un e-mail, codage de base64 du nom d'utilisateur et du mot de passe
// Base64 Encodage de nom d'utilisateur et de mot de passe @Test public void base64 () {String name = "wj_leaf12345"; String pwd = "1qaz2wsx"; Base64Encoder en = new Base64Encoder (); name = en.encode (name.getBytes ()); pwd = en.encode (pwd.getBytes ()); System.err.println (nom); System.err.println (PWD); }3) Envoyez des e-mails via le code Java
Envoyer des e-mails à Java, vous devez importer un nouveau package
Package Core Mail.jar pour envoyer des e-mails
Activation.jar chiffre les utilisateurs et les mots de passe.
Il y a trois classes de base dans Mail.jar:
Javax.mail.Session fait référence à une session avec un serveur de messagerie. Il n'y en a qu'un dans l'ensemble du projet.
Javax.mail.message (interface) - Préparez-vous à envoyer des informations de données.
MimeMessage - Vous pouvez définir le type d'informations sur les données.
Transportez-le a une méthode pour envoyer un message.
Étape 1: Importer deux packages en pot
Étape 2: Envoyez un e-mail simple
public void sendmail () lève une exception {// Étape 1: Déclarez l'objet Propriétés pour mettre les propriétés d'information Prop = new Properties (); // Définissez le serveur pour se connecter à Prop.SetProperty ("Mail.host", "smtp.126.com"); // Définissez s'il faut vérifier Prop.SetProperty ("Mail.smtp.auth", "true"); // Étape 2: Déclarez le nom d'utilisateur et le mot de passe Authenticator Auth = new Authenticator () {// Cet objet d'accès qui renvoie l'utilisateur et le mot de passe public PasswordAuthentication GetPasswordAuthentication () {PasswordAuthentication PA = new PasswordAuthentication ("AAA", "SSS"); retourner PA; }}; //// Étape 2: Obtenez l'objet Session Session Session = Session.getDefaultInstance (Prop, Auth); // Définissez le mode de débogage de session Session.SetDebug (true); // Étape 3: Déclarez les informations mimeMessage MM1 = new MimeMessage (session); // Étape 4: Définissez l'adresse e-mail de l'expéditeur de = new InternetAddress ("[email protected]"); mm1.setFrom (de); // Étape 5: Définissez le destinataire mm1.setRecicipient (destinataireType.to, nouveau InternetAddress ("[email protected]")); mm1.setReccipient (destinataireype.cc, nouveau InternetAddress ("[email protected]")); mm1.setRecipient (destinataireType.bcc, nouveau InternetAddress ("[email protected]")); // Étape 6: Définissez le sujet MM1.SetSubject ("Ceci est un e-mail envoyé dans Java 3"); mm1.setContent ("Bonjour, il s'agit d'un e-mail envoyé en java, réessayez 3333", "text / plain; charset = utf-8"); // Étape 7: Transport.send (MM1); }Étape 3: v Envoyer des e-mails avec hyperconnection
MM1.SetSubject ("Ceci est l'e-mail envoyé dans Java SFASDF3"); mm1.setContent ("Bonjour, c'est l'e-mail envoyé en java, <a href = 'http: //www.baidu.com'> baidu </a>", "text / html; charset = utf-8"); // Étape 7: Transport.send (MM1);Étape 4: Email du symbole
public void sendFile () lève une exception {Propriétés p = new Properties (); P.SetProperty ("Mail.host", "SMTP.163.com"); P.SetProperty ("Mail.smtp.auth", "True"); Session s = session.getDefaultInstance (p, new Authenticator () {@Override public PasswordAuthentication getPasswordAuthentication () {return new PasswordAuthentication ("ww", "123");}}); S.SetDebug (true); // Déclare MimeMessage mimeMessage msg = new mimeMessage (s); msg.setFrom (nouveau InternetAddress ("[email protected]")); msg.setReccipient (destinataireType.to, new InternetAddress ("[email protected]")); MSG.SETSUBject ("image"); // Étape 1: Déclare la partie multiprocessement mimeMultupart mm = new mimemMultupart (); // Étape 2: Déclare MIMEBODYPART BODY1 = new MIMEBODYPART (); // Étape 3: Définissez le caractère DataSource DS = new FileDataSource (nouveau fichier ("./ img / a.jpg")); Datahandler dh = new Datahandler (ds); Body1.setDatahandler (DH); // Le nom doit être défini Body1.setFileName (mimeutility.encodeText ("Beauty.jpg")); MIMEBODYPART Body2 = new MIMEBODYPART (); // Étape 3: Définissez le caractère DataSource DS2 = new FileDataSource (nouveau fichier ("./ img / b.jpg")); Datahandler dh2 = new Datahandler (ds2); Body2.SetDatahandler (DH2); // le nom doit être défini Body2.setFileName (mimeutility.encodeText ("Beauty 2.jpg")); MIMEBODYPART Body3 = new MIMEBODYPART (); // Étape 3: Définissez le caractère DataSource DS3 = new FileDataSource (nouveau fichier ("./ img / m.mp3")); Datahandler dh3 = new Datahandler (ds3); Body3.SetDatahandler (DH3); // Le nom doit être défini Body3.SetFileName (mimeutility.encodetext ("fin du siècle.mp3")); // Ajouter Body1 à MM MM.AddBodyPart (Body1); MM.AddbodyPart (Body2); MM.AddbodyPart (Body3); msg.setContent (mm); // Envoyer Transport.Send (MSG); }Ce qui précède concerne cet article, j'espère qu'il sera utile à l'apprentissage de tout le monde.