티스토리 뷰

Study

Java(자바) send mail(메일 보내기)

메디츠 2024. 1. 7. 12:02
반응형

16년 9월 기준.

 

package com.real.sonyparser.util;

 

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Properties;

 

import javax.mail.Message;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

 

import com.real.sonyparser.config.AppConfig;

import com.real.sonyparser.controller.DataController;

 

public class MailSender {

String date;

public void sendMail() {

String host = AppConfig.APP_CONFIG.get("EmailHost");

String port = AppConfig.APP_CONFIG.get("EmailPort");

final String username = AppConfig.APP_CONFIG.get("EmailUser");

final String password = AppConfig.APP_CONFIG.get("EmailPassword");

int subAt = 0;

Properties props = System.getProperties();

props.put("mail.smtp.host", host);

props.put("mail.smtp.port", port);

props.put("mail.smtp.auth", "true");

props.put("mail.smtp.starttls.enable", "true");

props.put("mail.smtp.ssl.trust", host);

 

for(int i=0;i<username.length();i++)

{

System.out.println(i+" "+username.charAt(i));

if(username.charAt(i) == '@')

subAt = i;

}

 

final String u = username.substring(0, subAt);

 

Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {

protected PasswordAuthentication getPasswordAuthentication() {

String user = username;

String pwd = password;

return new PasswordAuthentication(user, pwd);

}

});

session.setDebug(true); //for debug

 

try {

System.out.println(subAt+"/"+username+" "+u);

Message mimeMessage = new MimeMessage(session);

mimeMessage.setFrom(new InternetAddress(username));

mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(AppConfig.APP_CONFIG.get("EmailUser")));

mimeMessage.setSubject("SonyParser "+date);

mimeMessage.setText(

"path "+DataController.CSV_PATH+"\n"

+"name "+DataController.CSV_NAME

);

Transport.send(mimeMessage);

}catch(Exception e)

{

e.printStackTrace();

}

}

public void getDate() {

Date d = new Date();

SimpleDateFormat format = new SimpleDateFormat("yyMMdd");

date = format.format(d);

}

}

반응형

'Study' 카테고리의 다른 글

OpenNMS(오픈엔엠에스) 관련  (0) 2024.01.07
HAProxy(에이치에이프록시) SSL 관련  (1) 2024.01.07
Tomcat(톰캣) mod_jk 설정 관련  (0) 2024.01.07
keepalived(킵얼라이브) 관련  (1) 2024.01.07
Apache(아파치) 설치  (0) 2024.01.07
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2026/01   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함