Wednesday February 4, 2009 10:54
Java Mail ile Mail Gönderme Örneği
Sending Email From Your Application Using Java Mail
By Sudhir Ancha
http://www.javacommerce.com/displaypage.jsp?name=javamail.sql&id=18274
Now a Day’s informing the Clients about the successful updation of data or sending other automated information form your Java Programs, either from your Servlets or from your Applications has become a requirement, more than a feature. Here we show how to use the Java Mail API to send a Mail. To Test Program all you need to have is a SMTP address (Which your ISP Provides).
Before Using this Program, you need to have Javasoft’s JavaMail class files which can be downloaded from here http://www.javasoft.com/products/javamail/index.html
You will also need the JavaBeansTM Activation Framework extension or JAF (javax.activation). It is available at http://java.sun.com/beans/glasgow/jaf.html.
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException
{
boolean debug = false; //Set the host smtp address
Properties props = new Properties();
props.put(”mail.smtp.host”, “smtp.jcom.net“); // create some properties and get the default Session
Session session = Session.getDefaultInstance(props, null);
session.setDebug(debug); // create a message
Message msg = new MimeMessage(session); // set the from and to address
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++)
{
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType.TO, addressTo);
// Optional : You can also set your custom headers in the Email if you Want
msg.addHeader(”MyHeaderName”, “myHeaderValue”);
msg.setSubject(subject); // Setting the Subject and Content Type
msg.setContent(message, “text/plain”);
Transport.send(msg);
}
To Send a Email, from your Program, just call the above method, With the following parameters,
String to — Email Address of the Recipient
String subject — Email Subject
String message — Content or Body of the Message
String from — Your (Senders) Email Address
smtp.jcom.net — Replace this with your ISP’s SMTP address.
That’s it, you are all set to send a Email.
If your SMTP Server need you to do Authentication using Username and Password before Sending out mail, download the complete code from here
SendMailUsingAuthentication.java
Daha Fazla Ayrıntı için ve Mesajı Türkçe Yapmak için Encoding ile oynamalısınız:
InternetAddress kime = new InternetAddress(epst,isim);
InternetAddress kimden = new InternetAddress(”mail@mail.com”,”Admin”);
Properties props = new Properties();
props.setProperty(”mail.transport.protocol”, “smtp”);
props.setProperty(”mail.host”, “10.10.0.11″);
props.setProperty(”mail.user”, “adm”);
props.setProperty(”mail.password”, “123″);
props.setProperty(”useUnicode”, “true”);
props.setProperty(”characterEncoding”, “UTF-8″);
Session oturum = Session.getDefaultInstance(props, null);
Message mesaj = new MimeMessage(oturum);
mesaj.addRecipient(Message.RecipientType.TO, kime);
mesaj.setContent(”Bu mail size E-Bülten‘e kayıt olduğunuz için gönderilmiştir.”, “text/html”);
mesaj.setSubject(”SK E-Bülten”);
mesaj.setFrom(kimden);
Transport.send(mesaj);
Related Posts:
- Category: Encoding, Java, Mail
- (2) Comments
soner sivri
January 13th, 2010 at 12:42
HtmlEmail kullanılabilir. Daha kolay ve daha basit
soner sivri
January 13th, 2010 at 12:43
HtmlEmail email = new HtmlEmail();
email.setHostName(”xxx.com.tr”);
email.addTo(to);
// email.setAuthentication(”xxx”, “xxx”);
email.setFrom(from);
email.setSubject(”Test”);
email.setCharset(”UTF-8″);
// set the html message
email.setHtmlMsg(”çŞĞ”);
// set the alternative message
email.setTextMsg(”Your email client does not support HTML messages”);
// send the email
email.send();