À¥¿¡¼ µ¿ÀÛÇÏ´Â ÇÁ·Î±×·¥Àº »ó´çÈ÷ À§ÇèÇÑ ´ë»óÀÔ´Ï´Ù. ¾ÖÇø´Àº À¥¿¡¼ µ¿ÀûÀ¸·Î ´Ù¿î·Îµå µÇ¾î Ŭ¶óÀÌ¾ðÆ®¿¡¼ ½ÇÇàµÇ±â ¶§¹®ÀÔ´Ï´Ù. À̰ÍÀº ´Ù¸¥ »ç¶÷ÀÌ ¸¸µç ÇÁ·Î±×·¥À» ÀÚ½ÅÀÇ ÄÄÇ»ÅÍ¿¡ µ¿ÀÛÇϵµ·Ï Çã¶ôÇÏ´Â °ÍÀÔ´Ï´Ù. º°³ »ç¶÷ÀÌ ¾ÖÇø´À» Ư¼öÇÑ ¸ñÀûÀ¸·Î »ç¿ëÇÑ´Ù¸é ¾î¶»°Ô µÉ±î¿ä? Ŭ¶óÀ̾ðÆ®ÀÇ Á¤º¸¸¦ ºÐ¼®ÇÏ°í ±×¸®°í ±×°ÍÀ» »©°£´Ù¸é À̰ÍÀº ÇØÅ·¿¡ ÇØ´çÇÕ´Ï´Ù. ±×·¡¼ ¾ÖÇø´ÀÇ º¸¾È¹®Á¦´Â Ç×»ó À̽´°¡ µË´Ï´Ù.
ÀÌ·¯ÇÑ ¹®Á¦ ¶§¹®¿¡ ¾ÖÇø´¿¡¼´Â SandBox¶ó´Â °³³äÀ» µµÀÔÇÏ°Ô µË´Ï´Ù. SandBox³»¿¡ Ư¼öÇÑ ¸í·ÉÀ» »ç¿ëÇÏÁö ¸øÇϵµ·Ï ¿øÃÊÀûÀ¸·Î ¸·¾Æ¹ö¸®´Â ¹æ¹ýÀ» ÀÌ¿ëÇÕ´Ï´Ù. ±×·¡¼ ClientÀÇ ÇÁ·Î±×·¥À» ¾ÖÇø´ÀÌ ½ÇÇàÇϰųª Ŭ¶óÀ̾ðÆ®ÀÇ Çϵåµð½ºÅ©¿¡ ÀÐ°í ±â·ÏÇÏ´Â °Í ±×¸®°í ¾ÖÇø´ÀÌ ÀÚ½ÅÀÌ ¸ö´ã°í ÀÖ´Â ÄÄÇ»ÅÍÀ̿ܿ¡ ´Ù¸¥ ÄÄÇ»ÅÍ¿Í Åë½ÅÀ» ÇÏ´Â °Í°ú °°ÀÌ ¾à°£ ÀÇ½ÉµÈ´Ù°í »ý°¢µÇ´Â °ÍÀº ÀüºÎ ¸·¾Æ¹ö¸³´Ï´Ù. SandBox¾È¿¡¼¸¸ ¾ÖÇø´ÀÌ ÀÛµ¿Çϵµ·Ï ÇÏ´Â °ÍÀÌÁö¿ä. ¸¸¾à À̸¦ ¾î±æ½Ã ¾î±è¾øÀÌ Security¿¡·¯¸¦ ¹ß»ýÇÏ°Ô µË´Ï´Ù. ±×·¸´Ù°í, ¾Æ¿¹ »ç¿ëÇÒ ¼ö ¾ø´Â °ÍÀº ¾Æ´Õ´Ï´Ù. ¸¸¾à º¸¾È¿¡ À§¹èµÇ´Â ÀÛ¾÷À» ÇÏ°í ½Í´Ù¸é »ç¿ëÀÚ¿¡°Ô ÀÎÁõÀ» ÅëÇØ¼ ¹Ýµå½Ã ¾Ë¸®µµ·Ï Çϰí ÀÖ½À´Ï´Ù.
º¸¾ÈÀ» À§¹èÇÏÁö ¾Ê´Â ¹üÀ§³»¿¡¼ ¾ÖÇø´Àº À¥ºê¶ó¿ìÁ®¸¦ ÇÚµéÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. À¥ºê¶ó¿ìÁ®¸¦ Á¦¾îÇÒ ¼ö ÀÖ´Â ÇÚµéÀ» ¾ÖÇø´¿¡¼´Â AppletContext¶ó´Â Ŭ·¡½º¸¦ µÎ¾î ÇØ°áÇϰí ÀÖ½À´Ï´Ù. ¾ÖÇø´ÄÁÅØ½ºÆ®·Î ÇÒ ¼ö ÀÖ´Â ÀÏÀº ´ÙÀ½°ú °°½À´Ï´Ù.
AppletContextÀÇ ÁÖ¿ä ¸Þ¼ÒµåµéÀ» º¸¸é¡¦.
n public Applet getApplet(String name)
n public Enumeration getApplets()
n public void showDocument(URL url)
n public void showDocument(URL url, String target)
n public void showStatus(String status)
n AudioClip getAudioClip(URL url)
n Image getImage(URL url)
AppletContext´Â ÀÎÅÍÆäÀ̽ºÀ̱⠶§¹®¿¡ ÇöÀç ·ÎµùµÇ¾îÁø ¾ÖÇø´À» ÅëÇØ¼¸¸ ¾ò¾î ³¾ ¼ö ÀÖ½À´Ï´Ù. Àüü ¸Þ¼µå¸¦ ÀüºÎ ³ª¿Çصµ ¸î °³ µÇÁöµµ ¾Ê½À´Ï´Ù. ÇöÀç À¥ºê¶ó¿ìÁ®¿¡¼ »ç¿ëµÇ´Â AppletµéÀ» ¾ò¾î³»´Â getApplet°ú À¥ºê¶ó¿ìÁ®ÀÇ »õâÀ» ¶ç¿ì´Â showDocument¸Þ¼µå ±×¸®°í, »óÅÂÁÙ¿¡ »óÅÂÇ¥½Ã¸¦ ÇÏ´Â showStatus¸Þ¼µå°¡ °íÀÛÀÔ´Ï´Ù. Ãß°¡ÀûÀ¸·Î Image¿Í AudioClipÀ» ¾òÀ» ¼ö ÀÖ´Â ¸Þ¼µå¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
URLTest.java(¾ÖÇø´¿¡¼ URLº¯°æÇϱâ) |
import java.awt.event.*; import java.awt.*; import java.applet.Applet; import java.applet.AppletContext; import java.net.URL; import java.net.MalformedURLException; public class URLTest extends Applet implements ActionListener{ private Button urlButton=null; private Button statusButton=null; public void init(){ this.setLayout(new FlowLayout()); this.urlButton = new Button("URLTest"); this.statusButton = new Button("»óÅÂÇ¥½Ã"); this.add(urlButton); this.add(statusButton); this.urlButton.addActionListener(this); this.statusButton.addActionListener(this); } public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); AppletContext ac = getAppletContext(); if(obj == urlButton) { try{ ac.showDocument(new URL(getDocumentBase(),"http://www.jabook.org")); }catch(MalformedURLException e1){} } else if(obj == statusButton){ ac.showStatus("¾È³çÇϼ¼¿ä"); } } } |
URLTest.html |
<html><head><title>URLTest</title></head> <body> <applet code="URLTest.class" width=200 height=140></applet> </body></html> |
C:\JavaExample\15>javac URLTest.java |
AppletContext¸¦ ¾ò±â À§Çؼ ¾ÖÇø´³»¿¡¼ ´ÙÀ½°ú °°Àº ¸Þ¼µå¸¦ È£ÃâÇϰí ÀÖ½À´Ï´Ù.
n AppletContext ac = getAppletContext();
±×¸®°í AppletContext°´Ã¼ ac¸¦ ÅëÇØ¼ showDocument¸Þ¼µå¿Í showStatus¸Þ¼µå¸¦ ´ÙÀ½°ú °°ÀÌ È£ÃâÇϰí ÀÖ½À´Ï´Ù.
n ac.showDocument(new URL(getDocumentBase(),"http://www.jabook.org"));
n ac.showStatus("¾È³çÇϼ¼¿ä");
ÇÁ·Î±×·¥À» ½ÇÇà½Ã۸é À§ÀÇ °á°ú±×¸²°ú °°ÀÌ ¾ÖÇø´ÀÌ ³ªÅ¸³³´Ï´Ù. ±×¸®°í URLTest¹öưÀ» ´©¸£½Ã¸é À¥ ºê¶ó¿ìÁ®°¡ ¸ñÇ¥ÇÑ URL ÁÖ¼ÒÀÇ »çÀÌÆ®¸¦ ¿ÀÇÂÇÕ´Ï´Ù. ±×¸®°í »óÅÂÇ¥½Ã¹öưÀ» ´©¸£½Ã¸é »óÅ ǥ½Ãâ¿¡ ¡°¾È³çÇϼ¼¿ä¡±¶ó´Â ¸Þ½ÃÁö°¡ º¸ÀÏ °ÍÀÔ´Ï´Ù. À̰ÍÀÌ ¹Ù·Î ApplectContextÀÇ ´É·ÂÀÔ´Ï´Ù.
jabookÀúÀÚ¸íÇÔ |
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù3ºÎ ÀúÀÚ:ÃÖ¿µ°ü |