cafe24 에서 mail 발송하기

원본 : http://snix.tistory.com/216

 

 

 

[27-D10] Mail의 발송(JavaMail API 1.3.3 Release)

[01] Mail의 발송(JavaMail API 1.3.3 Release, JAF)

     - Web Mail Hosting의 이해(www.cafe24.com)

     - JAVA Mail 전송 환경 설정

     JSP, JAVA --------> Tomcat --------> Linux(SendMail) --------> Internet
                        mail.jar         DNS기반 설정
                     activation.jar      고정 IP
                                         cafe24.com

   - 고정IP or webhosting에서 인증된 정보가 있는 경우만 메일을 보낼수 있습니다.

   - mail관련 홈페이지: http://java.sun.com/products/javamail/index.jsp

   - API 다운로드 및 설치

     ⓐ JavaMail API 1.4.1 Release
        . http://java.sun.com/products/javamail/downloads/index.html

     ⓑ JAF (javax.activation) 1.1.1 Get the latest version.
        . http://java.sun.com/products/javabeans/jaf/downloads/index.html

     'WEB-INF/lib' 폴더에 activation.jar, mail.jar을 복사합니다.

   - CAFE24의 경우 메일 발송용 인증 계정은 웹 관리자 모드에서 메일 계정을
     등록해야 가능합니다.



★★★★★★★★★★★★★★★★★★★★★★★★★★★
[중요] jsp소스는 cafe24에 등록되어 있어야 합니다.
       JSP소스, Library를 FTP로 전송해야 함.
★★★★★★★★★★★★★★★★★★★★★★★★★★★



1.  메일 내용 입력 폼
    - 메일 서버는 계정마다 다를 수 있습니다.
    - 보내고 받는 주소는 정상적인 유효한 메일 주소를 입력해야 합니다.
    - http://nulunggijsp.cafe24.com/mail/mail_form.jsp

>>>>> www_jsp/mail/mail_form.jsp





2. 메일 전송
   - 각종 호스팅 회사에서 제시한 소스를 변형하여 구현합니다.

>>>>> www_jsp/mail/mail_proc.jsp





3. 메일로 HTML, 각종 이미지의 전송
   - 이미지는 메일을 보내는 서버에 저장되어 있어야 합니다. 따라서 모든 이미지는
     도메인부터 지정된 절대 경로를 가지고 있어야 합니다.

   - 메일 내용: <body> 태그 안쪽의 내용만 전송

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>

<div style="text-align: left;">
    <b><u>주말 등산 안내</u><b><br>
    <ul>
        <li>날짜 시간: 5월 5일 어린이날 10시 00분</li>
        <li>장소     : 관악산 등산로 입구 </li>
        <li>교통편   : 신림역 및 서울대 입구역서 버스 이용</li>
        <li>준비물   : 등산화 및 편한 목장, 과일 및 기타 </li>
        <li>기타     : 저녁 신림 순대촌서 회식 있슴</li>
        <li>날씨 정보: <a href="http://www.kma.go.kr">기상청</a></li>
        <li>관련 자료: <a href="http://nulunggijsp.cafe24.com/pds/storage/moon.zip">관련 파일 전송</a></li>
    </ul>
    관련 이미지<br>
    <img src='http://img0.gmodules.com/ig/images/korea/logo.gif'><br>
</div>


</body>
</html>





[과제] 서버의 mail 폴더에 files 폴더를 만들고 이미지를 메일로 전송해 보세요.

       서버의 전체 경로: /www/mail/files  





[참고] 메일로 첨부 파일의 전송

   - 메일 서비스를 하는 업체의 서버 설정에 따라 전송용량에 한계가 있을 수 있습니다.

   - File 전송이 안되는 웹사이트도 많습니다.


>>>>> WebContent/mail/mail_file_form.jsp, 메일 쓰기 폼





>>>>> WebContent/mail/mail_file_proc.jsp, 메일 처리





※ cafe24에서 제시한 메일 보내는 소스입니다.
-------------------------------------------------------------
>>>>> www/mail/mail_test.jsp
<%@ page contentType = "text/html; charset=euc-kr" %>
<%@ page import="java.util.*,java.io.*,javax.mail.*" %>
<%@ page import="javax.mail.internet.*,javax.activation.*" %>
<%
// javamail lib 이 필요합니다.
class MyAuthentication extends Authenticator {

    PasswordAuthentication pa;
    public MyAuthentication(){
        pa = new PasswordAuthentication("itwill@nulunggi.cafe24.com", "abc123");  //ex) ID:cafe24@cafe24.com PASSWD:1234
    }

    public PasswordAuthentication getPasswordAuthentication() {
        return pa;
    }
}


String subject = "2006-04-30 메일 테스트";      //subject
String msgText = "메일 내용 테스트입니다.";     //message
String host = "mw-001.cafe24.com";              //smtp mail server     
String from = "itwill@nulunggi.cafe24.com";     //sender email address
//String to = "psilocin@empal.com";             //receiver email address
String to = "uhm2000@nate.com";

Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.auth","true");

Authenticator auth = new MyAuthentication();
Session sess = Session.getInstance(props, auth);

try {
        Message msg = new MimeMessage(sess);
        msg.setFrom(new InternetAddress(from));
        InternetAddress[] address = {new InternetAddress(to)};
        msg.setRecipients(Message.RecipientType.TO, address);
        msg.setSubject(subject);
        msg.setSentDate(new Date());
        msg.setText(msgText);

        Transport.send(msg);
        out.println("메일을 발송했습니다.");
} catch (MessagingException mex) {
        out.println(mex.getMessage()+"<br>");
        out.println("메일 발송을 실패 했습니다.");
}

%>

'IT' 카테고리의 다른 글

카카오뱅크 오픈  (0) 2017.07.27
카카오톡 무료 이모티콘 ~ 제주항공   (0) 2017.05.04
답은 그대들이 찾아라   (0) 2017.02.03
jquery file up.  (0) 2014.05.28
웹뷰 와 크롬 구분 하기  (0) 2014.04.20
javascript jquery 숫자만  (0) 2014.02.24
아이폰충전기로 18650  (0) 2013.08.10
디스크 드라이브를 블링블링하게  (0) 2013.08.10

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받고 있습니다. 1 5

잘생긴 팝콘 방문해주셔서 감사합니다.

이 글을 공유하기

댓글

Designed by JB FACTORY