SMTP is the protocol used to send an email.
import java.net.*; import java.io.*; public class SendVietMXMail { public static void main(String s[]) { // // Send fake mail from Elvis Presley // // SendVietMXMail [mail server] [recipient address] // mail server can be hostname or IP address // // ex. SendVietMXMail mail.company.com myFriend@somewhere.vn // SendVietMXMail t = new SendVietMXMail(); t.sendMail(s[0], s[1]); } public void sendMail(String mailServer, String recipient) { try { Socket s = new Socket(mailServer, 25); BufferedReader in = new BufferedReader (new InputStreamReader(s.getInputStream(), "8859_1")); BufferedWriter out = new BufferedWriter (new OutputStreamWriter(s.getOutputStream(), "8859_1")); send(in, out, "HELO theWorld"); // warning : some mail server validate the sender address // in the MAIL FROm command, put your real address here send(in, out, "MAIL FROM: <viet.mai@maixuanviet.com>"); send(in, out, "RCPT TO: " + recipient); send(in, out, "DATA"); send(out, "Subject: In the ghetto"); send(out, "From: Viet Mai <viet.mai@maixuanviet.com>"); send (out, "\n"); // message body send(out, "I'm alive. Help me!"); send(out, "\n.\n"); send(in, out, "QUIT"); s.close(); } catch (Exception e) { e.printStackTrace(); } } public void send(BufferedReader in, BufferedWriter out, String s) { try { out.write(s + "\n"); out.flush(); System.out.println(s); s = in.readLine(); System.out.println(s); } catch (Exception e) { e.printStackTrace(); } } public void send(BufferedWriter out, String s) { try { out.write(s + "\n"); out.flush(); System.out.println(s); } catch (Exception e) { e.printStackTrace(); } } }
Done! Happy Coding!
Related posts:
Spring WebFlux Filters
A Guide to the ResourceBundle
Spring Webflux and CORS
Examine the internal DNS cache
Spring Boot - Google OAuth2 Sign-In
Spring Boot - Building RESTful Web Services
Setting a Request Timeout for a Spring REST API
Hướng dẫn Java Design Pattern – Strategy
Model, ModelMap, and ModelAndView in Spring MVC
Constructor Injection in Spring with Lombok
Java Program to Give an Implementation of the Traditional Chinese Postman Problem
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Hướng dẫn Java Design Pattern – Chain of Responsibility
Converting a List to String in Java
Assert an Exception is Thrown in JUnit 4 and 5
Quick Intro to Spring Cloud Configuration
LinkedList trong java
Java Program to Find the Longest Subsequence Common to All Sequences in a Set of Sequences
HandlerAdapters in Spring MVC
Java Program to Implement Word Wrap Problem
Guide to Spring Cloud Kubernetes
Check If a File or Directory Exists in Java
Java Program to implement Associate Array
Java Program to Implement Hash Trie
Default Password Encoder in Spring Security 5
Java Program to Implement Bubble Sort
Java – File to Reader
Hướng dẫn Java Design Pattern – Facade
Lớp Collectors trong Java 8
A Guide to Java SynchronousQueue
Java Program to Implement RoleList API
Mảng (Array) trong Java