Sending email in Java with SSL

I want use Pentaho to send email to 900 person, but I am not a expert of Pentaho, so I fail. Then, I have to code it by Java. I never have been code anything about email. Luckily, I can use Google to search something, after copy and paste, I have it: package com.viettel.im.database.DAO; import java.util.Date; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.DataSource; import javax.activation.FileDataSource; import javax.mail.Authenticator; 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.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; /** * A utility class for sending e-mail messages * * @author www.codejava.net * */ public class SendEmail { public static void main(String[] args) { try { SendEmail.sendEmail(“smtp.viettel.com.vn”, “465”, “username”, “password”, “thaiph1@viettel.com.vn”, “hello”, “hihihihihihih”); } catch (Exception e) { e.printStackTrace(); } } public static void sendEmail(String host, String port, final String userName, final String password, String toAddress, String subject, String message) throws AddressException, MessagingException { // sets SMTP server properties Properties properties = new Properties(); properties.put(“mail.smtp.host”, host); properties.put(“mail.smtp.port”, port); properties.put(“mail.smtp.auth”, “true”); properties.put(“mail.smtp.starttls.enable”, “true”); properties.put(“mail.smtp.ssl.enable”, “true”); // creates a new session with an authenticator Authenticator auth = new Authenticator() { public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(userName, password); } }; Session session = Session.getInstance(properties, auth); // creates a new e-mail message Message msg = new MimeMessage(session); msg.setFrom(new InternetAddress(userName)); InternetAddress[] toAddresses = {new InternetAddress(toAddress)}; msg.setRecipients(Message.RecipientType.TO, toAddresses); msg.setSubject(subject); msg.setSentDate(new Date()); msg.setText(message); // Create the message part BodyPart messageBodyPart = new MimeBodyPart(); // Fill the message messageBodyPart.setText(“This is message body”); // Create a multipar message Multipart multipart = new MimeMultipart(); // Set text message part multipart.addBodyPart(messageBodyPart); // Part two is attachment messageBodyPart = new MimeBodyPart(); String filename = “D:\temp\quaylai.xls”; DataSource source = new FileDataSource(filename); messageBodyPart.setDataHandler(new DataHandler(source)); messageBodyPart.setFileName(filename); multipart.addBodyPart(messageBodyPart); // Send the complete message parts msg.setContent(multipart); // sends the e-mail Transport.send(msg); } } ...

August 3, 2015 · 2 min · 303 words · kanishi

20 thứ mà lập trình viên Java có kinh nghiệm cần phải biết

Bạn có muốn biết những gì mọi lập trình viên Java nên biết? Chúng tôi đã chọn lọc một số khái niệm và các thành phần của ngôn ngữ Java rất cần thiết cho người mới bắt đầu và cả các lập trình viên cao cấp. Nắm bắt những điều quan trọng có thể giúp bạn có được công việc tốt nhất mà bạn xứng đáng được hưởng. Công nghệ Java đã phát triển và trở thực sự trở nên rất lớn trong thập kỷ qua. Có quá nhiều thứ để học và gần như là không thể để một người có thể làm chủ tất cả chúng. Kiến thức của bạn về công nghệ Java sẽ phụ thuộc hoàn toàn vào những gì bạn đang làm việc. Trong bất kỳ ngôn ngữ nào, như Java hay một số ngôn ngữ khác, sẽ quan trọng và có ích khi nắm bắt các khái niệm tộng quan (hướng đối tượng (OOP), interfaces, class, objects, threading, vv) chứ không phải là các freamwork hoặc cú pháp cụ thể. Luôn dễ dàng để nhanh chóng tìm hiểu các công nghệ mới khi bạn nắm vững các nguyên tắc cơ bản. Kiến thức của lập trình viên Java được dự đoán thông qua hồ sơ của họ. Trong bài này, chúng ta tạm thành 3 loại: ...

June 26, 2015 · 4 min · 685 words · kanishi