ãã®ãããã¯ã§ã¯ããµãŒãã¬ããã«ã€ããŠã®ç§ã®ç解ããµãŒãã¬ãã ã³ã³ãããšã¯äœãããã¹ãŠã§ã¯ãªãã«ããŠãã»ãšãã©ã® Web ããã³ããšã³ã ãã¬ãŒã ã¯ãŒã¯ãšã¯äœãã«ã€ããŠççŽã«è©±ããããšæããŸãããŸãããµãŒãã¬ãã ã³ã³ãããšã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒã®é¢ä¿ã«ã€ããŠã觊ããããšæããŸããçžäºãããã³ãµãŒãã¬ãããš Web ãµãŒã㌠ã³ã³ãããŒã äŒè©±ãå§ããåã«ãç§ã¯è°è«ãè¡ãããããšãæ¬åœã«æåŸ
ããŠããããšã«æ³šæããããšæããŸããããã§ã¯ã³ãŒãã®äžéšã瀺ãã®ã§ã¯ãªããåžžã«èšèã§è¡šçŸã§ããæ¬è³ªã«è§ŠããããšæããŸããæåã«å§ãããšãã«ããããããªãã£ãç¹ããã¹ãŠæŠèª¬ããŠã¿ãŸããTomcat ãµãŒãã¬ãã ã³ã³ãããä»ã®ã¢ããªã±ãŒã·ã§ã³ ãµãŒã㌠(WebSphere ã Geronimo ãªã©) ãšã©ãéãã®ããšããããŒãã«ã€ããŠããŸããŸãªãã©ãŒã©ã ã§è³ªåãããšãããããŠçããŠãããã®ã¯ããWikipedia ãèŠãŠãã ããããããµãŒã㌠ã¢ããªã±ãŒã·ã§ã³ãšã¯èšããããã§ãããããã¯äŒæ¥ã¢ããªã±ãŒã·ã§ã³ã®ããã®è€éãªã€ã³ãã©ã¹ãã©ã¯ãã£ã§ããã...ãäœãšãäœãšãäœãšããç§ã¯ãã®ãããªäººã«ã¯ææ
¢ã§ããŸããããããããçãããããã§ã¯ãªãã§ããããç§ãã¡ã¯æŽå²ã®äžæ£çŸ©ãæ£ããŸããè¡ãâŠ
ãµãŒãã¬ãã
誰ãäœãšèšãããšããµãŒãã¬ãã㯠Java ã§æžããã Web ããŒãžã§ããç§ã®èãã¯ééã£ãŠããããµãŒãã¬ãã㯠Web ã¢ããªã±ãŒã·ã§ã³ã§ããããããã®æŠå¿µã«ã¯éãããããšèšã人ãããŸãããããã§ã¯ãããŸãããçŸåšã§ã¯éãã¯ãªããPHP ã§æžããããµã€ããå®å šã« Web ã¢ããªã±ãŒã·ã§ã³ãšåŒã¶ããšãã§ããŸããããã¯å®å šã«èªç¶ãªããšã§ãããªããªã... php 㯠OOP ãå®å šã«ãµããŒãããŠãããJoomla ãªã©ã® CMS ã¯ãããç©æ¥µçã«äœ¿çšããŠããŸããã³ãŒãã¬ãã«ã§ã®ãµãŒãã¬ãããšã¯äœã§ãã? ããã¯ãã¹ãªãŒããã誰ãã GET ãŸã㯠POST HTTP ãªã¯ãšã¹ããä»ããŠã¢ã¯ã»ã¹ãããã©ããã確èªããå€æ°ã®ã¡ãœãããæã€ã¯ã©ã¹ã§ãããããã®ããã©ãŠã¶ã« GET ãªã¯ãšã¹ããå ¥åãããšããµãŒãã¬ãã ã¯ã©ã¹ã®å¯Ÿå¿ããã¡ãœããããããåãå ¥ããããã«å¯Ÿããå¿çã HTML ããŒãžã®åœ¢åŒã§çæããŸããSun ã«ãã£ãŠèæ¡ããããµãŒãã¬ããã®å€å žçãªæå³ã§ã¯ããã®ããŒãžã¯è¡ <!DOCTYPE htm>> ã§å§ãŸã </html> è¡ã§çµããè¡ããšã«ã¯ã©ã€ã¢ã³ãã«éä¿¡ãããŸãããããã£ãŠãJava ã«ã¯ã ãšåŒã°ããåºæ¬çãªãµãŒãã¬ãã ã¯ã©ã¹ããããŸãServlet
ãããã«ããã®åºæ¬ã¯ã©ã¹ããç¶æ¿ãããã®æ©èœãæ¡åŒµããä»ã®ã¯ã©ã¹ãå€æ°ãããŸããããããµãŒãã¬ããã§ãããã以äžã®ãã®ã§ã¯ãããŸããããã㯠PHP ã³ãŒãã® Java é¡äŒŒç©ã§ãããããããµãŒããŒäžã§å®è¡ãããWeb ããŒãžã®åœ¢åŒã§ã® Web ãã©ãŠã¶ã®ãªã¯ãšã¹ãã«å¯Ÿããå¿çã®ã¿ãã¯ã©ã€ã¢ã³ãã«éä¿¡ãããŸããå
šãŠã
Web ããã³ããšã³ã ãã¬ãŒã ã¯ãŒã¯
ãµãã¿ã€ãã«ã¯è€éã§ãéåžžã¯ããã³ããšã³ã ãã¬ãŒã ã¯ãŒã¯ãWeb ããºã«ãšããæžãããŠããŸãããããã³ããšã³ã ãã¬ãŒã ã¯ãŒã¯ã«ã€ããŠè©±ããšãã¯ãWeb ãã©ãŠã¶ãéã㊠Java ãæäœããããã® GUI ã«ã€ããŠè©±ããŠããããšãããã§åŒ·èª¿ããããšã«ããŸããããããã®ãããã§ããŸããJava ã® Web ãµã€ãã«ã€ããŠè©±ããŠããŸãããµãŒãã¬ããã«ã€ããŠãã»ãŒãã¹ãŠã®ããã³ããšã³ã ãã¬ãŒã ã¯ãŒã¯ãšã¯äœã§ãã (Apache Struts ãªã©)ãããã¯ãåã«åºæ¬ã¯ã©ã¹ãæ¡åŒµããã¯ã©ã¹ã®ã»ããã§ãServlet
ããã以äžäœããªãããããã®ãåãéåžžã®ãµãŒãã¬ãããäœæããæ¹æ³ãç°ãªãã ãã§ãããã®ãã¬ãŒã ã¯ãŒã¯ã®éçºè
(èšãæããã°ããã®ãã¯ãããžã®éçºè
) ã¯ãServlet
Sun/Oracle ã®åŸæ¥ã®ãµãŒãã¬ããã®è²§åŒ±ãªæ©èœããããããã€ãã®ã¡ãœãããåããåºæ¬ã¯ã©ã¹ãè¿œå ããæ¹ãããã°ã©ãã«ãšã£ãŠäŸ¿å©ã§ãããšèããã ãã§ãããã£ãŠããã
JSPããŒãž
ã»ãŒããã«ãJava ãµãŒãã¬ããã®æŠå¿µã®éçºè ã®é ã«å¥ã®ã¢ã€ãã¢ãæµ®ãã³ãŸãããããã§ã¯ãµãŒãã¬ãããäœæããŠããããã®ã¿ã¹ã¯ã¯ HTML ããŒãžãã¯ã©ã€ã¢ã³ãã«éä¿¡ããããšã§ããããããã® HTML ããŒãžãããã«äœæããJava ã§äœããã®ããžãã¯ãå¿ èŠãªå Žåã¯çŽæ¥æ¿å ¥ããæ¹ãæ£ãããããããŸããã htmlã«å ¥åããŸããæ確ã«ç解ã§ããªãå Žåã¯ããjsp ããŒãžã¯ php ããŒãžã®é¡äŒŒç©ããšãããã¬ãŒãºã圹ã«ç«ã€ãããããŸãããé£ããïŒããã§ã¯æ¹ããŠèª¬æãããŠããã ããŸããPHP ã§ããŒãžãæžããšãã¯äœãããã°ããã§ãããã? éç HTML ããããã«ãŒããæ¡ä»¶ãªã©ã®ããžãã¯ã PHP ã«æ¿å ¥ããå¿ èŠãããå Žåã¯ããããã¿ã°ã®æ¬æã«æ¿å ¥ããŸã<?php ⊠?>
ãjsp ã§ã¯ãã¹ãŠãåãã§ãããžãã¯ã®ã¿ãçŽç²ãª Java ã§èšè¿°ããããã®ã³ãŒããã¿ã°ã®æ¬äœã«æ¿å
¥ãããŸã<% ⊠%>
ãããäžåºŠãµãŒãã¬ããã®æŠå¿µã«æ»ããŸããããæ¬è³ªçã«ãJSP ããŒãžã¯ãµãŒãã¬ããã§ãããæžãæ¹ãå°ãç°ãªããŸããéåžžã®ãµãŒãã¬ããã§ã¯ãäœããã®ããžãã¯ãå®è¡ãããã®çµæã«åºã¥ããŠã¯ã©ã€ã¢ã³ãçšã® HTML ããŒãžãçæããã¡ãœãããäœæããŸãããã ããã°ããããŠããããµãŒãã¬ããéçºè
ã¯æ¬¡ã®ããã«èãå§ããŸãããã¡ãœããã«ããžãã¯ãã»ãšãã©ãªããã»ãšãã© HTML ããŒãžã®åœ¢æã®ã¿ãè¡ãããå Žåã¯ãããã« HTML ããŒãžãæžã蟌ãæ¹ãç°¡åã§ã¯ãªãã§ãããããæå°éã® Java æ¿å
¥ãè¡ãã³ãŒãã¯ã©ãã§ãã? ããŠãJSP ããŒãžã«ã€ããŠæåŸã«ãã 1 ã€ã ã説æããŸãããã®ãããªããŒãžã«åããŠã¢ã¯ã»ã¹ãããšããµãŒãã¬ããã«ã³ã³ãã€ã«ãããŠå®è¡ãããŸãããã® JSP ããŒãžã«å¯ŸããåŸç¶ã®ãªã¯ãšã¹ãã¯ã次ã®çç±ã«ããé«éã«ãªããŸãããã§ã«ã³ã³ãã€ã«ãããŠããã®ã§ãå®è¡ããã ãã§æžã¿ãŸãã
ãµãŒãã¬ããã³ã³ãã
ããã§ããµãŒãã¬ãã ã¯ã©ã¹ãŸã㯠JSP ããŒãžãäœæããŸããã次ã¯äœã§ããïŒããããWebãµãŒããŒãããšãã°Apacheã«ããã·ã¥ããŠããŠãŒã¶ãŒã®Webãã©ãŠã¶ã«éä¿¡ã§ããããã«ããã«ã¯ã©ãããã°ããã§ãããã? Web ãµãŒããŒã¯ HTML ã®ã¿ãéä¿¡ã§ããŸããããŒãžã«ããšãã° php ã³ãŒããããå ŽåãWeb ãµãŒããŒã¯ãŸã php ã html ã«å€æããã€ã³ã¿ãŒããªã¿ãŒã«ããŒãžãæž¡ãããã®åŸã§çµæãã¯ã©ã€ã¢ã³ãã«éä¿¡ãããŸãããµãŒãã¬ããã§ãã»ãŒåãããšãèµ·ãããŸããHTML ããŒãžãçæããã«ã¯éä¿¡åã«ãµãŒãã¬ãããå®è¡ããå¿ èŠããããŸãããµãŒãã¬ãã ã³ã³ããã¯ãŸãã«ãµãŒãã¬ãããš JSP ããŒãž ã³ãŒãã®å®è¡ãæ åœããŸãããããã®ãJava ã®ãµãŒãã¬ãã ã³ã³ããã¯ãWeb ãµãŒããŒã® php ã€ã³ã¿ãŒããªã¿ ã¢ãžã¥ãŒã«ã«çžåœããŸãããããã£ãŠããŠãŒã¶ãŒã Web ãã©ãŠã¶ã«ã¢ãã¬ã¹ãå ¥åãããšããªã¯ãšã¹ãã Web ãµãŒããŒã«éä¿¡ãããWeb ãµãŒããŒã¯ãµãŒãã¬ããããªã¯ãšã¹ããããŠããããšãèªèãããã®ãªã¯ãšã¹ãããµãŒãã¬ãã ã³ã³ããã«æž¡ããŸãããã®åŸããµãŒãã¬ãã ã³ã³ããã¯ãµãŒãã¬ãããå®è¡ããçµæã® HTML ããŒãžã Web ãµãŒããŒã«éä¿¡ããWeb ãµãŒããŒã¯ãããã¯ã©ã€ã¢ã³ãã«è¿ããŸãããµãŒãã¬ããã³ã³ããã¯åç¬ã§å®è¡ã§ããŸãã? Web ãµãŒããŒãªãã§? Tomcat ã®ãããªãã®ãªãééããªãå¯èœã§ãããŸãããµãŒãã¬ããã«åºã¥ãããŒãžä»¥å€ã® HTML ããŒãžãæããªããµã€ããäœæãããå Žåã¯ããµãŒãã¬ãã ã³ã³ãããŒã§ååã§ãããããããµãŒãã¬ãããšãããšãã° PHP ããŒãžãããµã€ããçµåãããå Žåã¯ãWeb ãµãŒããŒãã€ã³ã¹ããŒã«ããå¿ èŠããããŸããããã«ããã¹ãŠã® Web ãµãŒããŒã«ããã©ã«ãã§ãµãŒãã¬ãã ã³ã³ãããŒãå«ãŸããŠããããã§ã¯ãããŸããããã»ãšãã©ãã¹ãŠã®ãµãŒããŒã§ãã©ã°ã€ã³ãšããŠã€ã³ã¹ããŒã«ã§ããŸãããããã£ãŠãApache ãå®è¡ãããå¯èœæ§ãæãé«ãã€ã³ã¿ãŒãããäžã®ãã¹ãã£ã³ã°äžã§ Web ãµã€ããèµ·åãããå Žåã¯ããµãŒãã¬ãã ã³ã³ãããæ¥ç¶ãããŠãããã©ããããããã€ããŒã«åãåãããå¿ èŠããããŸããJava EE
ããããJavaSEïŒJava Standard EditionïŒããããŸãããã®æŠå¿µã«ã¯ãã¹ãŠã®ã¯ã©ã¹ãå«ãŸããŠããjava
ããããã䜿çšããã«ã¯ãããããã€ã³ããŒãããã ãã§æžã¿ãŸã (ããšãã°ãjava.util.Date
) ããã€ã³ããŒãããå¿
èŠããªããŠã (ããšãã°ãString
ããã±ãŒãžå
ã«ããããjava.lang
) ãããããŸãããããŠãJava EE (Java Enterprise Edition) ããããŸãããããã®ã¯ã©ã¹ã Sun/Oracle ã«å±ããŸãããå¯äžã®éãã¯ããããžã§ã¯ãã§äœ¿çšãéå§ããã®ãããé£ããããšã§ããã·ã³ãã«ãªç·ã ãimportâŠ
ã§ã¯äžååã§ãããããžã§ã¯ãã¯ã³ã³ãã€ã«ãããŸããããã®ç¶æ³ãä¿®æ£ããã«ã¯ãjavaee.jarã©ã€ãã©ãª ãã¡ã€ã«ãèŠã€ããŠãããžã§ã¯ãã«å«ããå¿
èŠããããŸããããã¯ãéçºç°å¢ã®ãããžã§ã¯ã ããããã£ãéããŠå®è¡ã§ããŸãããã®æ¥ç¶ããã»ã¹ã¯ãããããžã§ã¯ãã® ãã«ã ãã¹ãŸãã¯ã¯ã©ã¹ãã¹ã« jar ããã¯ããŒã ãç»é²ããããšåŒã°ããããšããããããŸãã
ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒ
ããã§ãJava EE ã䜿çšãããµãŒãã¬ãã ãããžã§ã¯ããã³ã³ãã€ã«ãããšæ³åããŠãã ããããã¹ãŠã¯çŽ æŽãããã§ãããã³ã³ãã€ã«ãããã¯ã©ã¹ããµãŒãã¬ãã ã³ã³ããã«é 眮ããå¿ èŠããããŸãã圌ããããããã£ããšããŸããããç§ãã¡ã®ã¢ããªã±ãŒã·ã§ã³ã¯æ©èœããã§ãããã? çãã¯ãããã ããµãŒãã¬ããã«ã¢ã¯ã»ã¹ãããšãäžéšã®ã¯ã©ã¹ãèŠã€ãããªãã£ãããšã瀺ãäŸå€ãã¹ããŒãããŸãããªãïŒãªããªãã ãæ»ãããããšã§ã³ã³ãã€ã©ããéšãããããjavaee.jar в classpath
ã§ããã³ã³ãã€ã©ã¯ Java EE ã®ã¯ã©ã¹ãé
眮ãããŠããããšã確èªããŠèœã¡çããŸãããããµãŒãã¬ãã ã³ã³ããã¯ãããã®ã¯ã©ã¹ãèªèããŸãããããµãŒãã¬ããããã®ã¯ã©ã¹ãžã®ãªã³ã¯ãèªèããŸãããã®ç¶æ³ã¯ãµãŒãã¬ããã³ã³ããå
ã§è§£æ±ºå¯èœã§ãããã? ãã¡ãããã¯ãããµãŒãã¬ãã ã³ã³ããå
ã®ãµãŒãã¬ãããå«ãŸãããã©ã«ããŒã«javaee.jarã©ã€ãã©ãª ãã¡ã€ã«ãè¿œå ããã ãã§ããããã§ããã®ãããªãããžã§ã¯ããå€æ°ååšãããããããã¹ãŠ 1 ã€ã® Tomcat ãµãŒãã¬ãã ã³ã³ããå
ã§å®è¡ãããŠãããšæ³åããŠãã ãããããã¯ããã® jar ãã¡ã€ã«ãåãµãŒãã¬ããã®ãã©ã«ããŒã«ã³ããŒããå¿
èŠãããããšãæå³ããŸããããã¯äžäŸ¿ã§ãããééã£ãŠããŸãããã®ç¶æ³ã¯ãã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒã®æŠå¿µãå°å
¥ããããšã«ãã£ãŠè§£æ±ºãããŸãããã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒã§ã¯ããã®ãã¡ã€ã«ã¯é·ãé 1 ã€ã®ã³ããŒã«ååšãããã¹ãŠã®ãµãŒãã¬ããã¯ãã®ãã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ããç¬èªã®ã³ããŒãæã€å¿
èŠã¯ãããŸããã§ãããç§ã®æèŠã§ã¯ãããã¯éåžžã«äŸ¿å©ã§è«ççã§ããåœç¶ã®ããšãªããããã¹ãŠã®å€§éšã㯠1 ã€ã® jar ãã¡ã€ã« (äŸãšããŠæããŸãã) ãåå ã§ã¯ãããŸããããã®ãããªãã¡ã€ã«ã¯å€æ°ãããŸããããããã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒãæäŸãããã®ã¯ããã ãã§ã¯ãããŸãããã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒèªäœã¯ãããŒã¿ããŒã¹ãªã©ã®å€ãã®ãªãœãŒã¹ãžã®æ¥ç¶ãç¶æã§ããŸãããã®å ŽåããµãŒãã¬ããã¯ãã®ãããªæ¥ç¶èªäœãéãã®ã§ã¯ãªããåã«ã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒããæ¥ç¶ãååŸããã ãã§ãããµãŒãã¬ãã ã³ã³ããã§ã¯ããã¯äžå¯èœã§ããã³ã³ããã¯ãããçšåºŠå¿
èŠãªãã®ãåãé€ããã¢ããªã±ãŒã·ã§ã³ ãµãŒããŒã§ããã³ã³ããã§ã¯ããµãŒãã¬ããã¯åžžã«ããŒã¿ããŒã¹èªäœãžã®æ¥ç¶ãäœæããå¿
èŠããããŸãããã®ãããªãã®... war-archive war-archive ãšã¯äœã§ãã? WARã¯ãŠã§ãã¢ãŒã«ã€ãã§ããå®éãããã¯ä»ã® jar ãšåæ§ãåãªã zip ãã¡ã€ã«ã§ããåºæ¬çã«ãããã¯ãå€ãã® Web ããŒãžãJSP ããŒãžããµãŒãã¬ãã ã¯ã©ã¹ã§æ§æããã Web ãµã€ãã 1 ã€ã® zip ãã¡ã€ã«ã«è©°ã蟌ãæ¹æ³ã«ãããŸããã web.xml web.xml ã¯ããããããããã€ã¡ã³ãèšè¿°åã§ããããã¯ããµãŒãã¬ããã³ã³ãããæ··ä¹±ããªãããã«ãWeb ãã©ãŠã¶ã®ã©ã®è¡ã®ãªã¯ãšã¹ããã©ã®ãµãŒãã¬ããã¯ã©ã¹ã«éã£ãŠåŠçããã®ããã©ã®ãµãŒãã¬ãããäœãæ
åœããã®ããæãã«èšè¿°ãããã¡ã€ã«ã§ããäžè¬ã«ãJava ã§ã¯å皮㮠XML ãã¡ã€ã«ã«èšå®ãèšè¿°ããããšãéåžžã«æµè¡ããŠããŸãããæè¿ã§ã¯ãã®äŒçµ±ããé¢ããåŸåã«ãããŸããã©ããã£ãŠïŒãããŠæ³šéãéããŠãã¢ãããŒã·ã§ã³ ã¯ã©ã¹èªäœã¯äœãè¡ããŸãããã¢ãããŒã·ã§ã³ ã¯ã©ã¹ã¯ãããããçš®é¡ã®èšå® (ã¡ã¿ããŒã¿) ãå¥ã® XML ãã¡ã€ã«ã§ã¯ãªãã³ãŒãå
ã§çŽæ¥èšè¿°ããããã«ã®ã¿äœæãããŸããããšãŠãå¿«é©ã§ãããã ããçŸåšã¯ãèšå®ã®äžéšãã¢ãããŒã·ã§ã³ã«ãã£ãŠæå®ãããäžéšã XML ã«ãã£ãŠæå®ãããäžé段éãããããããæ··ä¹±ãæãå¯èœæ§ããããŸããXML ãèŠããš 1 ã€ã®èšå®ã衚瀺ãããŸããã泚éã«ãããšå¥ã®èšå®ããããŸããã©ããæãåªå
ãããŸãã? ç¥ããâŠ
GO TO FULL VERSION