Simple email:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
class SimpleMail {
public static void main(String[] args) throws Exception{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "mymail.server.org");
props.setProperty("mail.user", "emailuser");
props.setProperty("mail.password", "");
Session mailSession = Session.getDefaultInstance(props, null);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage(mailSession);
message.setSubject("Testing javamail plain");
message.setContent("This is a test", "text/plain");
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("maixuanviet.com@gmail.com"));
transport.connect();
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
}
HTML Email:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
class SimpleHTMLMail {
public static void main(String[] args) throws Exception{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "mymail.server.org");
props.setProperty("mail.user", "emailuser");
props.setProperty("mail.password", "");
Session mailSession = Session.getDefaultInstance(props, null);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage(mailSession);
message.setSubject("Testing javamail html");
message.setContent
("This is a test <b>HOWTO<b>", "text/html; charset=ISO-8859-1");
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("maixuanviet.com@gmail.com"));
transport.connect();
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
}
Email with attachment:
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.FileDataSource;
import javax.activation.DataHandler;
import java.util.Properties;
class SimpleMailWithAttachment {
public static void main(String[] args) throws Exception{
boolean debug = false;
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "mymail.server.org");
props.setProperty("mail.user", "emailuser");
props.setProperty("mail.password", "");
Session mailSession = Session.getDefaultInstance(props, null);
mailSession.setDebug(debug);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage(mailSession);
message.setSubject("Testing javamail with attachment");
MimeBodyPart textPart = new MimeBodyPart();
textPart.setContent("<h1>Check attachment</h1>", "text/html");
MimeBodyPart attachFilePart = new MimeBodyPart();
FileDataSource fds =
new FileDataSource("SimpleMailWithAttachment.java");
attachFilePart.setDataHandler(new DataHandler(fds));
attachFilePart.setFileName(fds.getName());
Multipart mp = new MimeMultipart();
mp.addBodyPart(textPart);
mp.addBodyPart(attachFilePart);
message.setContent(mp);
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("maixuanviet.com@gmail.com"));
transport.connect();
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
}
Done! Happy Coding!
Related posts:
A Custom Media Type for a Spring REST API
Spring 5 Functional Bean Registration
Netflix Archaius with Various Database Configurations
Why String is Immutable in Java?
Java Program to Find Median of Elements where Elements are Stored in 2 Different Arrays
Guide to Guava Table
Spring Data JPA @Query
Spring REST with a Zuul Proxy
Introduction to Spring Data REST
Java Program to Generate a Random UnDirected Graph for a Given Number of Edges
Quick Guide to the Java StringTokenizer
Java – Combine Multiple Collections
Java Program to Implement Suffix Tree
Introduction to Netflix Archaius with Spring Cloud
Giới thiệu Google Guice – Aspect Oriented Programming (AOP)
Java Program to Find Second Smallest of n Elements with Given Complexity Constraint
Spring RestTemplate Error Handling
Mapping Nested Values with Jackson
Java Program to Find the GCD and LCM of two Numbers
Find the Registered Spring Security Filters
Check if there is mail waiting
Java Program to Implement the String Search Algorithm for Short Text Sizes
Giới thiệu Json Web Token (JWT)
Spring Data Java 8 Support
The SpringJUnitConfig and SpringJUnitWebConfig Annotations in Spring 5
Java Program to Find the Connected Components of an UnDirected Graph
List Interface trong Java
Working with Network Interfaces in Java
Bootstrap a Web Application with Spring 5
Exploring the Spring Boot TestRestTemplate
An Example of Load Balancing with Zuul and Eureka
Java Program to Implement Efficient O(log n) Fibonacci generator