일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- php
- java
- 주식
- JavaScript
- IPO
- 제이쿼리
- Stock
- 6월 공모주 청약 일정
- 공모주 청약
- 7월 공모주 청약 일정
- Eclipse
- 주식 청약 일정
- 코드이그나이터
- 주식 청약
- 맥
- codeigniter
- 오라클
- 공모주 청약 일정
- SQL
- html
- 자바스크립트
- 리눅스
- jquery
- MYSQL
- Oracle
- linux
- css
- Stock ipo
- 공모주
- 자바
- Today
- Total
개발자의 끄적끄적
[java] 메일발송 소스 자바 메일 템플릿 html 여부 치환 실전 [펌] 본문
[java] 메일발송 소스 자바 메일 템플릿 html 여부 치환 실전 [펌]
자바에서 메일발송하는 부분을 구현하던중
html 형식으로 메일 전송할수 있는 내용을 참고하기위해
퍼왔습니다!
출처는 아래 명시했습니다!!
참고들 하세요!!
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
/**
* @author 김성박(urstory@nownuri.net)
*
* J2SDK 1.4 이상에서 동작한다. String class의 replaceAll메소드 사용.
*
*/
public class SendMail {
private String to;
private String from;
private String host;
private String template;
private String subject;
private String msg;
private boolean istext;
public SendMail(String to, String from, String host, String subject, String msg, boolean istext){
this(to, from, host, null, subject, msg, istext);
}
/**
* 메일을 보내기 위하여 정보를 초기화 한다.
* @param to 받는 사람
* @param from 보내는 사람
* @param host 보내기 위한 메일 서버
* @param template 메세지의 템플릿 --body-- 부분이 msg 로 치환된다.
* @param subject 제목
* @param msg 보내는 메일
* @param istext 텍스트 메일일 경우 true, html형식일 경우 false
*/
public SendMail(String to, String from, String host, String template, String subject, String msg, boolean istext){
this.to = to;
this.from = from;
this.host = host;
this.template = template;
this.subject = subject;
this.msg = msg;
this.istext = istext;
}
/**
* 메일을 전송한다.
* @return 메일을 성공적으로 전송하였을 경우 true, 그렇지 않을 경우 false
*/
public boolean send(){
Properties props = new Properties();
props.put("mail.smtp.host", host);
Session sess = Session.getDefaultInstance(props, null);
try {
// create a message
Message message = new MimeMessage(sess);
message.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(to)};
message.setRecipients(Message.RecipientType.TO, address);
message.setSubject(subject);
message.setSentDate(new Date());
if(template != null){
msg = template.replaceAll("--body--", msg);
}
if(!istext)
message.setContent(msg,"text/html; charset=euc-kr"); // HTML 형식
else
message.setText(msg); // TEXT 형식
Transport.send(message);
} catch (MessagingException mex) {
System.out.println("error msg :" + mex.toString());
return false;
}
return true;
}
public static void main(String[] args) {
//SendMail sendMail = new SendMail("받는사람email주소", "보내는사람email주소", "smtp 서버주소", null, "안녕하세요.", "안녕하세요. 이것은 본문 내용이에요.<h1>hello</h1>", false);
SendMail sendMail = new SendMail("받는사람email주소", "보내는사람email주소", "smtp서버주소", "<table border=1><tr><td>--body--</td></tr></table>", "안녕하세요.", "안녕하세요. 이것은 본문 내용이에요.<h1>hello</h1>", false);
if(sendMail.send())
System.out.println("전송이 성공하였습니다.");
else
System.out.println("전송이 실패하였습니다.");
}
'개발 > java & jsp' 카테고리의 다른 글
[java] email 체크 정규식 (0) | 2020.01.03 |
---|---|
[java] 자바 SMTP와 Mail 발송하기(Google, Naver) [펌] (0) | 2020.01.03 |
[javascript / java] JS(자바스크립트) 에서 JSP 변수 사용하기 (0) | 2019.12.30 |
[java] Gmail SMTP를 이용한 메일 보내기 [펌] (0) | 2019.12.29 |
[java] SMTP프로토콜을 이용하여 메일 보내기 구현(SOCKET)[펌] (0) | 2019.12.29 |