반응형
안녕하세요 알통몬입니다. 공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
jsp 에서 메일을 보내는 예제입니다.
1. 오라클 사이트에서 2개의 라이브러리를 먼저 다운받아야 합니다.
위 두개를 다운받아 주세요.
저는 이메일 인증번호를 보내는 예제를 만들어봤어요.
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.util.*"%> <%@ page import="javax.activation.*"%> <%@ page import="javax.mail.*"%> <%@ page import="javax.mail.internet.*"%> <%@ page import="init.Info"%> <%@ page import="init.Members"%> <%! public class MyAuthentication extends Authenticator { //아이디 패스워드 인증받기 함수 PasswordAuthentication pa; public MyAuthentication(String mail, String pwd) { pa = new PasswordAuthentication(mail, pwd); } @Override protected PasswordAuthentication getPasswordAuthentication() { return pa; } } %> <% request.setCharacterEncoding("UTF-8"); // SMTP 서버 주소 //받는 사람의 정보 String toEmail = request.getParameter("email"); Info info = new Info(); String fromName = info.getFromName(); String fromEmail = info.getFromMail(); try { Properties props = new Properties(); props.put("mail.smtp.host", "smtp.worksmobile.com"); // 저는 네이버웍스 메일을 사용했어요. props.put("mail.smtp.port", "587"); props.put("mail.smtp.auth", "true"); // 메일 인증 Authenticator myauth = new MyAuthentication("보낼 이메일", "비밀번호"); Session sess = Session.getInstance(props, myauth); InternetAddress addr = new InternetAddress(); addr.setPersonal(fromName, "UTF-8"); addr.setAddress("보내는 이메일"); Message msg = new MimeMessage(sess); msg.setFrom(addr); int auth_number = (int) ((Math.random() * 900000) + 100000); String auth_num = String.valueOf(auth_number); /*"AUTH_NUMBER : ["+auth_num+"]" */ msg.setSubject(MimeUtility.encodeText("JUMO authentication number", "utf-8", "B")); msg.setContent("AUTH_NUMBER : [" + auth_num + "]", "text/html;charset=utf-8"); msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(toEmail)); Transport.send(msg); String result = members.updateAuth(toEmail, auth_num); out.print(result); } catch (Exception e) { e.printStackTrace(); return; } //보내는 사람의 정보 %> | cs |
AUTH_NUMBER : [" + auth_num + "] 여기에 보내고 싶은 내용을 입력하시면 됩니다.
이상입니다.
저는 위 예제를 안드로이드 앱에서 회원가입 할 때 이메일 주소를 인증하는 용도로 사용했어요~
반응형
'자바' 카테고리의 다른 글
자바 배열에서 [] 와 ... 의 차이?! (0) | 2018.04.03 |
---|---|
자바 NIO UDP 채널 발신자와 수신자와 통신 (0) | 2017.05.05 |
자바 NIO 비동기 채널 채팅 클라이언트 만들기 (0) | 2017.05.04 |
자바 NIO 비동기 채널 채팅 서버 만들기 (0) | 2017.05.04 |
자바 NIO TCP 비동기 채널 - 서버 소켓 채널, 소켓 채널, 소켓 채널 데이터 통신 (0) | 2017.04.27 |