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:
Java Program to Find Nearest Neighbor for Static Data Set
Java 8 Stream API Analogies in Kotlin
Send email with JavaMail
Java Program to Implement Interval Tree
Java Program to Generate a Random Subset by Coin Flipping
Java 8 Stream findFirst() vs. findAny()
Java Program to Implement Hash Tables with Quadratic Probing
Java Program to Implement an Algorithm to Find the Global min Cut in a Graph
Java Program to Implement Nth Root Algorithm
Vòng lặp for, while, do-while trong Java
Java Program to Generate Random Numbers Using Multiply with Carry Method
Java Program to Check if it is a Sparse Matrix
Java Program to Find the Median of two Sorted Arrays using Binary Search Approach
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Loại bỏ các phần tử trùng trong một ArrayList như thế nào trong Java 8?
The Guide to RestTemplate
Spring Boot Application as a Service
4 tính chất của lập trình hướng đối tượng trong Java
Rate Limiting in Spring Cloud Netflix Zuul
Java Program to Perform Matrix Multiplication
Java Program to Generate a Graph for a Given Fixed Degree Sequence
Command-Line Arguments in Java
Guide to Spring 5 WebFlux
Extract network card address
Java Program to Implement Cartesian Tree
Java InputStream to Byte Array and ByteBuffer
Notify User of Login From New Device or Location
HashSet trong java
Java Program to Implement Skew Heap
Configuring a DataSource Programmatically in Spring Boot
Java Program to Construct an Expression Tree for an Postfix Expression
A Quick Guide to Using Keycloak with Spring Boot