jsp 에 이메일 보 내기

jsp 에서 email 1 을 보 내 면 sun 규범 을 지원 하 는 sun.net.smtp 패키지 의 JSP 엔진(예 를 들 어 JSWDK)을 통 해 mail 을 보 낼 수 있 습 니 다.(경고:내 장 된 internal Sun 규범 패 키 지 를 사용 하면 jsp 프로그램의 이식 성에 영향 을 줄 수 있 습 니 다.)아래 scriptlet 는 SmtpClient 클래스 를 이용 하여 jsp 파일 에 email 을 보 냅 니 다.2.자바 메 일 은 공식 자바 메 일 API 이 므 로 참고 할 수 있 습 니 다.http://java.sun.com/products/javamail/。이 API 는 sun.net.smtp.SmtpClient 보다 풍부 하거나 복잡 하지만 이식 이 가능 합 니 다.자바 메 일 API 를 포함 하 는 MailSender 클래스 를 다시 만 들 었 습 니 다.다음 과 같이:/msprefix is for MailSender class variables // str prefix is for String // astr prefix is for array of Strings // strbuf prefix is for StringBuffers, etc. public MailSender( String strFrom, // sender String[] astrTo, // recipient(s) String[] astrBCC, // bcc recipient(s), optional String strSubject, // subject boolean debugging) { ms_strFrom = strFrom; // who the message is from ms_astrTo = astrTo; // who (plural) the message is to ms_debugging = debugging; // who (plural) the message is to // set the host Properties props = new Properties(); props.put(\"mail.smtp.host\", ms_strSMTPHost); // create some properties and get the default Session Session session = Session.getDefaultInstance(props, null); session.setDebug(ms_debugging); try { // create a message ms_msg = new MimeMessage(session); // set the from InternetAddress from = new InternetAddress(strFrom); ms_msg.setFrom(from); // set the to InternetAddress[] address = new InternetAddress[astrTo.length]; for (int i = 0; i astrTo.length; ++i) { address[i] = new InternetAddress(astrTo[i]); } ms_msg.setRecipients(Message.RecipientType.TO, address); // set the bcc recipients if (astrBCC != null) { address = new InternetAddress[astrBCC.length]; for (int i = 0; i astrBCC.length; ++i) { eh.dbg(\"astrBCC[\" + i + \"] is: \'\" + astrBCC[i] + \"\'\"); address[i] = new InternetAddress(astrBCC[i]); } ms_msg.setRecipients(Message.RecipientType.BCC, address); } // set the subject ms_msg.setSubject(strSubject); // set up the string buffer which will hold the message ms_strbufMsg = new StringBuffer(); } catch (MessagingException mex) { mex.printStackTrace(System.err); } catch (Exception ex) { ex.printStackTrace(System.err); } } public void ms_add(String strText) { ms_strbufMsg.append(strText); } public void ms_send() { try { // set the content as plain text ms_msg.setContent(new String(ms_strbufMsg), \"text/plain\"); // and away Transport.send(ms_msg); } catch (Exception ex) { System.out.println(\"Caught exception in MailSender.ms_send: \" + ex); } }

좋은 웹페이지 즐겨찾기