
Kenapa Kirim email pake program
Dalam beberapa kasus pengerjaan system beberapa costumer menginkan agar terdapat fitur untuk mengirim email dari aplikasi pesanan nya. Kali ini saya akan menjelaskan bagaimana cara mengirim email menggunakan java. Sebelumnya kita membutuh kan beberapa librari yaitu smtp.jar dan mailapi.jar.Cara Import Library Java
Setelah di Download add lah librari ke dalam project anda. Karena ribet kalo kita buat semuanya sendiri maka mereka para master sudah menyiapkan library yang membantu kita buat mengembang kan aplikasi salah satunya buat kirim email pake java. caranya Clik kanan di library>Add JAR/Folder.Buat Class kirim Email
Lalu buat lah sebuah class untuk mengirim email. Class ini berisi setingan alamat email yang akan dipakai untuk mengirim email juga buat email yang menerima juga pasword email nya dan configurasi lainnya. Dengan Source Seperti berikut :package utility;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.swing.JOptionPane;
import model.Master.ModelEmail;
/**
*
* @author User
*/
public class kirimemail {
Calendar tgl= Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
model.Master.ModelEmail model=new ModelEmail();
public void kirim(String Judul,String awal,String Akhir){
model.tampil();
try{
final String from = model.getPengirim(); //email pengirim
String to = model.getPenerima(); // email penerima
String host = "127.0.0.1"; //alamat server SMTP
String subject = Judul+awal+Akhir; //subject
final String pass=model.getPass();
Properties properties = System.getProperties();
properties.put("mail.smtp.host","smtp.gmail.com");
properties.put("mail.smtp.auth","true");
properties.put("mail.smtp.ssl.enable","true");
properties.put("mail.smtp.port", "465");//default port dari smptp
Session session = Session.getDefaultInstance(properties,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(
from, pass);
}
});
try {
MimeMessage message = new MimeMessage(session); // email message
message.setFrom(new InternetAddress(from)); // setting header fields
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject); // subject line
// Create the message body part
BodyPart messageBodyPart = new MimeBodyPart();
// Fill the message
messageBodyPart.setText(""+sdf.format(tgl.getTime()));
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
String filename = "D:/data/"+Judul+awal+"-"+Akhir+".pdf";
DataSource source = new FileDataSource(filename);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(filename);
multipart.addBodyPart(messageBodyPart);
// actual email body
message.setContent(multipart);
// Send message
Transport.send(message);
JOptionPane.showMessageDialog(null,"Email Terkirim!!!");
} catch (MessagingException me) {
me.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}
}
Gabungin kerim email dengan Konvert pdf pake library jReport
Biasanya kalo kirim email yang dikirim kan laporan nah gak mungkin kan kita ngirim laporan pake file yang susah dibaca sama user makanya kita gabungin ireport ke aplikasi kita jadi kita bisa ngirim laporannya berupa pdf yang gampang dibuka di komputer user. Kita dapat menggabungkan nya dengan convert jrxml ke pdf menggunakannya Jasper ireport seperti ini
public void email(File x,String awal,String Akhir){
try {
jasperDesign1 = JRXmlLoader.load(x);
jasperReport1 = JasperCompileManager.compileReport(jasperDesign1);
jasperPrint1 = JasperFillManager.fillReport(jasperReport1, param,utility.koneksi.getconnetion());
JasperExportManager.exportReportToPdfFile(jasperPrint1, "D:/data/"+Judul+awal+"-"+Akhir+".pdf");
//JasperViewer.viewReport(jasperPrint1,false);
new kirimemail().kirim(Judul,awal,Akhir);
} catch (JRException ex) {
System.out.printf(Judul,ex);
}
}
Setingan email yang di pakai
Untuk
mengunakan cara ini harus
merubah keamanan gmail untuk
mengizinkan akses aplikasi kurang aman. Berhubung
kita masih di tahap developer jadi kita agak ada beberapa persiapan di email
yang bakal kita pakai nanti ya itu ke amanan di gmailnya semtara ini ane masih
pake gmail buat bikin emailnya gan.
Untuk untuk download project klik di sini
Sekian dulu gan artike ane semoga bisa bermanfaat buat agan agan sekalian
Terimakasih
0 Comments