¼Ò¼³°°ÀºJSP2ºÎ  7Àå Custom Tag & JavaMail  13 ¸ÞÀÏ Àü¼Û¿¡ °ü°èµÇ´Â Ŭ·¡½ºµé  

 

7.13 ¸ÞÀÏ Àü¼Û¿¡ °ü·ÃµÇ´Â ÁÖ¿ä Ŭ·¡½ºµé

 

¾Õ¿¡¼­ »ìÆìº», ¸ÞÀÏÀÇ Àü¼Û¿¡ °ü·ÃµÇ´Â Ŭ·¡½º´Â ÁÖ·Î JavaMail APIÀÇ javax.mail ÆÐŰÁö, javax.mail.internet ÆÐŰÁö¿¡ Æ÷ÇԵ˴ϴÙ. ±×¸®°í µÚ¿¡ »ìÆìº¼ ÷ºÎÆÄÀÏÀ» º¸³»´Â ¸ÞÀÏ¿¡´Â javax.activation ÆÐŰÁöÀÇ Å¬·¡½º°¡ ÇÔ²² ¾²ÀÌ°Ô µË´Ï´Ù. ±×·³ ¸ÞÀÏ Àü¼Û¿¡ °ü·ÃµÇ´Â ÁÖ¿ä Ŭ·¡½ºµé¿¡ ´ëÇØ¼­ »ìÆìº¸°Ú½À´Ï´Ù.

 

Session Ŭ·¡½º

 

Session Ŭ·¡½º´Â ¸» ±×´ë·Î ÀÚ¹Ù¸ÞÀÏÀÇ ¼¼¼ÇÀ» ³ªÅ¸³»´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº ¼­ºí¸´ÀÇ HttpSession°ú´Â ÀüÇô º°°³ÀÌ´Ï È¥µ¿ÇÏÁö ¸¶½Ã±â ¹Ù¶ø´Ï´Ù. Session Ŭ·¡½º´Â JavaMail API Àüü¸¦ ÅëÇØ¼­ ´Ù¸¥ ºÎºÐµé¿¡ »ç¿ëµÉ ±âº»°ª°ú ¼Ó¼ºµéÀ» Á¤ÀÇÇÕ´Ï´Ù. Áï, ¸ÞÀÏ ½Ã½ºÅÛ¿¡¼­ Ŭ¶óÀÌ¾ðÆ®¿Í ½Ã½ºÅÛ°£ÀÇ ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ °ü°è ¶Ç´Â »ç¿ëÀÚ ¼Ó¼ºÀ» Á¤ÀÇÇϴ Ŭ·¡½º¶ó°í ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¿øÇüÀº ´ÙÀ½°ú °°½À´Ï´Ù.

 

n         public final class Session extends java.lang.Object

 

ÀÌ Å¬·¡½º´Â µÚ¿¡¼­ ³ª¿Ã Store³ª Transport Ŭ·¡½ºÀÇ °´Ã¼¸¦ ¸¸µé¾îÁÖ´Â ÆÑÅ丮 ¿ªÇÒµµ ÇÕ´Ï´Ù. Session Ŭ·¡½ºÀÇ °´Ã¼¸¦ ¾ò´Â ¹æ¹ý°ú ÁÖ¿ä ¸Þ¼­µåµéÀº ´ÙÀ½°ú °°½À´Ï´Ù.

 

¼¼¼Ç °´Ã¼ ¾ò´Â ¹æ¹ý

n         »õ·Î¿î ¼¼¼Ç »ý¼º ÈÄ °´Ã¼ ¸®ÅÏ

Session ssession = Session .getInstance(java.util.Properties props, Authenticator authenticator(optional))

 

props : °ü°èµÈ ¼Ó¼ºµéÀ» °¡Áø Property °´Ã¼
(mail.store.protocol, mail.transport.protocol, mail.host, mail.user, mail.from)

authenticator : user name°ú password ÇÊ¿ä½Ã application¿¡ ¿äû.(»ý·«°¡´É)

 

*javax.mail.Authentificator Ŭ·¡½º : ³×Æ®¿öÅ© ¿¬°áÀÇ ÀÎÁõ(»ç¿ëÀÚ, Æ÷Æ®, ÇÁ·ÎÅäÄݵî)À» ¾Ë¾Æ³»´Â Ŭ·¡½º

 

n         ±âÁ¸ÀÇ ¼¼¼Ç °´Ã¼ ¸®ÅÏ (±âÁ¸ ¼¼¼Ç ¾øÀ» °æ¿ì ÀÎÀÚ¸¦ ¹ÙÅÁÀ¸·Î »õ·Î¿î ¼¼¼Ç »ý¼º)

Session defaultSession = Sessoion.getDefaultInstanse(props, authenticator(optional))

 

Session Ŭ·¡½º ÁÖ¿ä ¸Þ¼­µå

public Transport getTransport(java.lang.String protocol)

public Transport getTransport(URLName url)

public Transport getTransport(Provider provider)

  : ÁÖ¾îÁø ÇÁ·ÎÅäÄÝÀ» °®´Â  ¶Ç´Â, url ¿¡ ¸Â´Â, provider¿¡ ±â¼úµÈ Transport°´Ã¼ ¸®ÅÏ. Àû´çÇÑ °ªÀÌ ¾øÀ»°æ¿ì null°ª ¸®ÅÏ

 

public Store getStore()

public Store getStore(java.lang.String protocol)

public Store getStore(URLName url)

: Store °´Ã¼¸¦ ¾ò±â À§ÇÑ ¸Þ¼­µå Á¦°ø

 

public Folder getFolder(URLName url) ÁÖ¾îÁø url¿¡ ´ëÇÑ Folder°´Ã¼ ¸®ÅÏ

public void setDebug(boolean debug) ÇöÀç ¼¼¼Ç¿¡ Debug Setting

public void setDebug() : Debug SettingÀ» Àоî¿È

 

Message Ãß»ó Ŭ·¡½º

 

Message Ŭ·¡½º´Â ¸ÞÀÏ ¸Þ½ÃÁö¸¦ À§ÇÑ ³»¿ë°ú ¼Ó¼ºµéÀÇ ÁýÇÕÀ¸·Î Á¤ÀÇµÈ Ãß»ó Ŭ·¡½º·Î ¿øÇüÀº ´ÙÀ½°ú °°½À´Ï´Ù.

 

n         public abstract class Message extends java.lang.Object implements Part

 

¿©±â¼­ ¼Ó¼ºÀ̶õ ¸ÞÀÏÁÖ¼Ò °ü·ÃÁ¤º¸, ³»¿ë(Content), ŸÀÔ°ú ±¸Á¶¿¡ °üÇÑ Á¤º¸µîÀ» ¸»Çϸç, ³»¿ëÀº  µÚ¿¡¼­ »ìÆìº¼ DataHandler °´Ã¼·Î Ç¥ÇöÇÕ´Ï´Ù. ÁÖ¿ä ¼Ó¼ºÀ» »ìÆìº¸¸é, From, To, Subject, Reply-To ¹× ¸Þ½ÃÁö ¶ó¿ìÆÃ¿¡ ´ëÇÑ ¼Ó¼º°ú javax.mail.Part Interface¿¡¼­ ¸ÞÀÏ ³»¿ëÀ» Á¤ÀÇÇÏ°í Æ÷¸ËÆÃÀ» À§ÇÑ ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù.

 

±×·³ °£´ÜÇÑ ¸ÞÀÏ ¸Þ½ÃÁöÀÇ ±¸Á¶¸¦ »ìÆì º½À¸·Î¼­ ¸ÞÀÏ ¸Þ½ÃÁö°¡ ¾î¶² Çü½ÄÀ¸·Î ±¸¼ºµÇ¾î  Àü´ÞµÇ´ÂÁö »ìÆìº¸°Ú½À´Ï´Ù.

 

±×¸² 7-4 ¸ÞÀÏ ¸Þ½ÃÁöÀÇ ±¸Á¶

 

¾ÕÀÇ ±×¸²¿¡¼­ º¸µí ¸Þ½ÃÁö´Â ¸ÞÀÏÀ» ³ªÅ¸³»´Â Message Ŭ·¡½º ³»ºÎ¿¡ ¿©·¯ ¼Ó¼º°ªµé°ú ¸ÞÀÏ ³»¿ëÀ» À§ÇÑ DataHandler °´Ã¼·Î Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.

 

Message Ŭ·¡½º ÁÖ¿ä ¸Þ¼­µå

public abstract Address[] getFrom() ; From ¼Ó¼ºÀ» ¸®ÅÏ

public abstract void setFrom() : From ¼Ó¼º Á¤ÀÇ

public void setRecipient(Message.RecipientType type, Address address) : ¸ÞÀÏ ¼ö½ÅÀÚ ÁÖ¼Ò ÁöÁ¤

public abstract java.lang.String getSubject() : ¸ÞÀÏ Á¦¸ñ ¸®ÅÏ

public abstract void setSubject(java.lang.String subject) : ¸ÞÀÏ Á¦¸ñ ¼³Á¤

public Folder getFolder()  : ¸ÞÀÏÀÌ Æ÷ÇÔµÈ Æú´õ°´Ã¼ ¸®ÅÏ

 

MimeMessage Ŭ·¡½º

 

MimeMessage Ŭ·¡½º´Â Message Ãß»óŬ·¡½º¸¦ »ó¼Ó ¹ÞÀº ÀÎÅÍ³Ý ¸ÞÀϸ¸À» À§ÇÑ Å¬·¡½º·Î ±× ¿øÇüÀº ´ÙÀ½°ú °°½À´Ï´Ù.

 

n         public class MimeMessage extends Message implements MimePart

 

À̰ÍÀº ÀÎÅÍ³Ý ¸ÞÀÏ Ç¥ÁØ RFC822¿Í MIME Ç¥ÁØ¿¡ ¸Â°Ô ±¸ÇöµÇ¾î ÀÖÀ¸¸ç ´ÙÀ½°ú °°Àº »ý¼º¹æ¹ý°ú ¸Þ¼­µå¸¦ °¡Áý´Ï´Ù.

 

     MimeMessage »ý¼ºÀÚ

n         public MimeMessage(Session session) : µðÆúÆ® »ý¼ºÀÚ

n         public MimeMessage(Session session, java.io.InputStream is) : InputStream¿¡¼­ µ¥ÀÌÅ͸¦ ÀÐ¾î ÆÄ½ÌÇÏ¿© MimeMessage °´Ã¼ »ý¼º

 

MimeMessage Ŭ·¡½º ÁÖ¿ä ¸Þ¼­µå

public public void setContent(java.lang.Object o, java.lang.String type) : typeÀ̶õ MIMEŸÀÔÀ¸·Î dataÀ» ¸ÞÀÏ ³»¿ëÀ¸·Î ¼³Á¤

public java.lang.Object getContent() : ¸ÞÀÏ ³»¿ëÀ» ÀÚ¹Ù °´Ã¼ÇüÀ¸·Î ¸®ÅÏ

public void setText(java.lang.String text) : text/plainÇüÀ¸·Î ¸ÞÀÏ ³»¿ëÀ» ¼³Á¤

public void setText(java.lang.String text, java.lang.String charset) : ¹®ÀÚ¼¼Æ®°¡ charsetÀÎ ¸ÞÀÏ µ¥ÀÌÅÍ text¸¦ ¼³Á¤

 

Transport Ŭ·¡½º

 

Transport Ŭ·¡½º´Â ¸ÞÀÏ ¸Þ½ÃÁö¸¦ ÁÖ¾îÁø ÁÖ¼Ò·Î º¸³»´Â Ãß»ó Ŭ·¡½º·Î¼­ ´ÙÀ½°ú °°Àº ¿øÇüÀ» °¡Áý´Ï´Ù.

 

n        public abstract class Transport extends Service

 

À§¿¡¼­ º¸µí Transport Ŭ·¡½º´Â Service Ŭ·¡½º¸¦ »ó¼Ó¹Þ¾Æ¼­ ¸ÞÀÏÀúÀå, Àü¼ÛÀÇ ´Ù¾çÇÑ ¸Þ¼­µå »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

 

Transport Ŭ·¡½º ÁÖ¿ä ¸Þ¼­µå

public static void send(Message msg) : Message³»ºÎ¿¡ ±â¼úµÈ ÁÖ¼Ò·Î ¸ÞÀÏÀ» ¸ÞÀÏ Àü¼Û

public static void send(Message msg, Address[] addresses) :  ÁÖ¾îÁø ÁÖ¼Ò·Î ¸ÞÀÏ Àü¼Û

public abstract void sendMessage(Message msg, Address[] addresses) : ÁÖ¾îÁø ÁÖ¼Ò·Î ¸ÞÀÏ Àü¼Û

public void connect(java.lang.String host, java.lang.String user, java.lang.String password) : ÁÖ¾îÁø host¿¡ id¿Í password¸¦ °¡Áö°í ¿¬°á



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºJSP2ºÎ
ÀúÀÚ:ÃÖ¿µ°ü