Gmail SMTP SSL Sending Email Using JavaMail API

Gmail SMTP SSL – Sending Email Using JavaMail API

In this post, I am going to sharing Gmail SMTP SSL – Sending Email Using JavaMail API. First up all we need to get the Gmail SMTP server details and then we will write the java program.

GMail SMTP with SSL Settings

To send emails by using GMail  server by using SMTP SSL protocol

SMTP Username: <Your GMail Username>
SMTP Password: <Your GMail Password>
SMTP Host Name:
SMTP Port: 465
SSL Protocol: ON

For more details click on Google GMail SMTP ,POP3 and IMAP and settings


Example Program


<project xmlns=""





		<!-- -->



import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message.RecipientType;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class GmailTextMsgSendWithSSL {

	Properties properties;
	Session session;
	MimeMessage mimeMessage;

	String USERNAME = "[email protected]";
	String HOSTNAME = "";
	String SSL_PORT = "465";
	boolean AUTH = true;
	String SERVERTYPE = "smtp";

	public static void main(String args[]) throws MessagingException {
		String EmailSubject = "Subject:Text Subject";
		String EmailBody = "Text Message Body: Hello World";
		String ToAddress = "[email protected]";

		GmailTextMsgSendWithSSL gmailTextMsgSend = new GmailTextMsgSendWithSSL();
		gmailTextMsgSend.sendGmail(EmailSubject, EmailBody, ToAddress);

	public void sendGmail(String EmailSubject, String EmailBody, String ToAddress) {
		try {
			properties = new Properties();
			properties.put("", HOSTNAME);

			// SSL_PORT Enabled
			properties.put("mail.smtp.port", SSL_PORT);

			// AUTH Enabled
			properties.put("mail.smtp.auth", AUTH);

			// SSL Enabled
			properties.put("mail.smtp.socketFactory.port", SSL_PORT);
			properties.put("mail.smtp.socketFactory.class", "");

			// Authenticating
			Authenticator auth = new Authenticator() {
				protected PasswordAuthentication getPasswordAuthentication() {
					return new PasswordAuthentication(USERNAME, PASSWORD);

			// creating session
			session = Session.getDefaultInstance(properties, auth);

			// create mimemessage
			mimeMessage = new MimeMessage(session);
			mimeMessage.addRecipient(RecipientType.TO, new InternetAddress(ToAddress));

			// setting text message body

			// sending mail
			System.out.println("Mail Send Successfully");

		} catch (Exception e) {



Replace XXXXXX with your details and run the program.

You can download complete source code. Click Here




Leave a Reply