´¡¥ó¯Á¤Þ
           
±`¥Î¤u¨ã
¬d¬Ý¿n¤Àµ¦²¤»¡©ú ¥´¦L

¥ÎJSPºc«Ø°ÊºAºô¯¸

¥ÎJSPºc«Ø°ÊºAºô¯¸

¤@¡B ¤°»ò¬OJSP

JSP(JavaServer Pages)¬O¥ÑSun Microsystems¤½¥q­Ò¾É¡B³\¦h¤½¥q°Ñ»P¤@°_«Ø¥ßªº¤@ºØ°ÊºAºô­¶§Þ³N¼Ð·Ç¡A¨äºô§}¬°http://www.javasoft.com/products/jsp¡C
¦b¶Ç²Îªººô­¶HTMLÀÉ(*.htm,*.html)¤¤¥[¤JJavaµ{¦¡¤ù¬q(Scriptlet)©MJSP¼Ð°O(tag)¡A´Nºc¦¨¤FJSPºô­¶(*.jsp)¡CWeb¦øªA¾¹¦b¹J¨ì³X°ÝJSPºô­¶ªº½Ð¨D®É¡A­º¥ý°õ¦æ¨ä¤¤ªºµ{¦¡¤ù¬q¡AµM«á±N°õ¦æµ²ªG¥HHTML®æ¦¡ªð¦^µ¹«È¤á¡Cµ{¦¡¤ù¬q¥i¥H¾Þ§@¸ê®Æ®w¡B­«·s©w¦Vºô­¶¥H¤Îµo°e email µ¥µ¥¡A³o´N¬O«Ø¥ß°ÊºAºô¯¸©Ò»Ý­nªº¥\¯à¡C©Ò¦³µ{¦¡¾Þ§@³£¦b¦øªA¾¹ºÝ°õ¦æ¡Aºô¸ô¤W¶Ç°eµ¹¥Î¤áºÝªº¶È¬O±o¨ìªºµ²ªG¡A¹ï«È¤á¬yÄý¾¹ªº­n¨D³Ì§C¡A¥i¥H¹ê²{µLPlugin¡AµLActiveX¡AµLJava Applet¡A¬Æ¦ÜµLFrame¡C
¥»¤å±N¤¶²Ð§Q¥ÎJSP§Þ³N¶}µo°ÊºAºô­¶ªº¤èªk¡AÁÙ±N²­n¤ÀªRJSP§Þ³N©M Microsoft ¤½¥qªº ASP §Þ³Nªº¤£¦P¤§³B¡C


¤G¡B ¦p¦ó¦w¸Ë©M±Ò°Ê
¬°¤F¹êÅçJSP§Þ³N¡A­º¥ý»Ý­n«Ø¥ß¹B¦æÀô¹Ò¡A³o­Ó¹Lµ{¬Û·í²³æ¡G
1¡B¦b http://java.sun.com/jdk/³B¤U¸üJDK(Java 2 SDK¡BStandard Edition¡Bv 1.2.2)¡C
2¡B¦bhttp://java.sun.com/products/jsp/³B¤U¸üJSWDK(JavaServer Web Development Kit 1.0.1)¡CLinux¥Î¤á¥i¥H¦bhttp://jakarta.apache.org/³B¤U¸üTomcat 3.0¡C
3¡B¦w¸Ë
¥HWindows NTÀô¹Ò¬°¨Ò¡AJDKªº¦w¸Ë¬O­º¥ý¹B¦æ¤U¸ü±o¨ìªºjdk1_2_2-win.exe¡AµM«á­×§ï¨t²ÎÀô¹Ò°Ñ¼Æ¡A¦bPATH°Ñ¼Æ¤¤¥[¤J[x:]\jdk1.2.2\bin¥H¤Î¼W¥[·sªºÀô¹Ò°Ñ¼Æ CLASSPATH=[x:]\jdk1.2.2\lib\tools.jar¡A¨ä¤¤[x:]¬O¦w¸ËJDKªºµwºÐ²Å¡]c:¡Bd: µ¥¡^¡C
JSWDKªº¦w¸Ë¶È»Ý±Njswdk1_0_1-win.zip±a¥Ø¿ýÄÀ©ñ¨ìµwºÐ®Ú¥Ø¿ý¤U¡]c:\¡Bd:\ µ¥¡^¡AµM«á´N¥i¥H¦bµwºÐ¤W§ä¨ì\jswdk-1.0.1\¥Ø¿ý¡C±N¨Ó¦pªG¤£·Q«O¯dJSWDK¡A§R°£³o­Ó¥Ø¿ý´N¥i¥H¤F¡A¨S¦³¥ô¦ó¨t²ÎÀÉ©Mµù¥Uªí¿ò¯d°ÝÃD¡C§ó¸Ô²Óªº¦w¸Ë¹Lµ{¥H¤ÎSolaris/Unix©MLinux¤UJDK¡BTomcatªº¦w¸Ë¥i¥H°Ñ¦Ò¤U¸ü±o¨ìªºÀÉ¥]¤¤ªº¦w¸Ë»¡©ú¡C
4¡B±Ò°Ê
¥HWindows NTÀô¹Ò¬°¨Ò¡A¦b\jswdk-1.0.1\¥Ø¿ý¤U°õ¦æstartserver.bat¡A´N¥i±Ò°ÊJSWDK¤¤¤@­Ó¤ä´©JSPºô­¶§Þ³NªºWeb¦øªA¾¹¡C¬°¤F¤£»P²{¦³ªºWeb¦øªA¾¹¡]¨Ò¦pIIS¡BPWSµ¥¡^½Ä¬ð¡AJSWDKªºWeb¦øªA¾¹¨Ï¥Î¤F8080°ð¡C
¦b¬yÄý¾¹ªº¦a§}Äæ¤¤Áä¤Jhttp://localhost:8080©ÎªÌhttp://127.0.0.1:8080«á¡A¦pªG¯à¬Ý¨ì JSWDK ªºÅwªï­¶´N»¡©úJSP¹êÅçÀô¹Ò¤w¸g«Ø¦¨¡A¥i¶i¤J¤U¤@¨B¹êÅç¡C
­nÃö³¬Web¦øªA¾¹«h¹B¦æstopserver.bat¡C


¤T¡B JSP²³æ¥Ü¨Ò
JSWDK¤¤¥]§tªºWeb¦øªA¾¹ªº¤åÀɥؿý¦b¯Ê¬Ùª¬ºA¤U¬°\jswdk-1.0.1\webpages¡A¥D¤åÀɦb¯Ê¬Ùª¬ºA¤U¬°index.html©Mindex.jsp¡C¤]´N¬O»¡³X°Ýhttp://localhost:8080µ¥©ó³X°Ý\jswdk-1.0.1\webpages\index.html¡C
¥Î¤å¥»½s¿è¾¹¡A¦ªþ¦³¯f¬r³sµ²0250,½Ð¥ß§Y³qª¾ºÞ²z­ûows¤¤ªº°O¨Æ¥»(Notepad)¡A³Ð«Ø¤@­Ó¤å¦rÀÉ®×hi.jsp¡A«O¦s¦b\jswdk-1.0.1\webpages\¥Ø¿ý¤U¡A¨ä¤º®e¦p¤U¡G

<html>
<head>
<title>Hi-JSP¹êÅç</title>
</head>
<body>
<%
String Msg = "This JSP test.";
out.print("Hello World!");
%>
<h2><%=Msg%></h2>
</body>
</html>

¦b¬yÄý¾¹ªº¦a§}Äæ¤¤Áä¤Jhttp://localhost:8080/hi.jsp¡AJSWDK¤¤ªºWeb¦øªA¾¹·|°õ¦æJSP ¤å¥ó¤¤¥Î<%¥H¤Î%>¬A°_¨ÓªºJavaµ{¦¡»y¥y¡A¨ä¤¤out.print¬O±N¤å¦r¿é¥X¨ìºô­¶¡A»y¥y<%= ÅÜ¼Æ | ¹Bºâ¦¡%>ªº§@¥Î¬O±NJava Scriptlet¤¤ÅܼƩιBºâ¦¡ªº­È¿é¥X¨ìºô­¶¡A°õ¦æµ²ªG¦p¹Ï1¡C
¹Ï1

±NÅܼÆMsg½á­È¬°¤¤¤å¦r¦ê¡A¥Î<%= %>¿é¥X¡A©ÎªÌ¥Îout.print¿é¥X¤¤¤å¦r¦ê¡A«h¦b­^¤åª©NT4¤ÎRedhat 6.1¤U¹êÅç¹B¦æµ²ªG¥¿±`¡A¦Ó¦b¤¤¤åNT 4.0©M¤¤¤å98¤U¡A«h¤Ï¦Ó·|¥X²{¶Ã½X¡C

¥|¡B ²Î¤@ªººô¯¸¤¶­±
JSP¤ä´©¦øªA¾¹ºÝªºÀÉ¥]§t¡A§Y¥i¥H¦b¤@­ÓJSPÀɤ¤´¡¤J¦h­Ó¨ä¥LÀÉ¡A¥Î¨Ó¹ê²{²Î¤@ªººô¯¸¤¶­±¡C­×§ï¤W­zhi.jsp¨Ã¥t¦s¬°mypage.jsp¡G
<%@ include file="top.htm" %>
<%
String Msg = "This JSP test.";
out.print("Hello World!");
%>
<h2><%=Msg%></h2>
<%@ include file="bot.htm" %>

¥ÎµøÄ±¤ÆHTML½s¿è¾¹¡A¨Ò¦pFrontPage¡BDreamweaveµ¥³]­pºô¯¸ªº®Ø¬[µ²ºc¡A±N³]­p¦nªº®Ø¬[µ²ºcÀɤÀ³Î¦¨¨â­Ó³¡¤À¡A¤W­±¤@¥b«O¦s¬°top.htm, ¤U­±¤@¥b«O¦s¬°bot.htm¡A¥N½X¦p¤U­±©Ò¥Ü¡G
<html>
<head>
<meta http-equiv="Content-Type" c>
<title>§Úªº¥D­¶</title>
</head>
<body>
<table border="0" width="100%" cellpadding="4" cellspacing="0" align="center">
<tr>
<td width="100%" colspan="2" bgcolor="#837ED1" align="center"><font face="Áõ®Ñ"
color="#FFFF00" size=5>¥D­¶¼ÐÃD</font>
</td>
</tr>
<tr>
<td bgcolor="#837ED1" width="15%" valign="top" align="center"><br>
<font color="#FFFFFF">¿ï¶µ</font><p><font color="#FFFFFF">¿ï¶µ</font></p>
<p><font color="#FFFFFF">¿ï¶µ</font></p>
<p><font color="#FFFFFF">......</font></p>
<p>¡@</p>
</td>
<td width="85%" valign="top">
----------------------------------------------------------------------------------------------------------------
</td>
</tr>
</table>
</body>
</html>
¦b¬yÄý¾¹ªº¦a§}Äæ¤¤Áä¤Jhttp://localhost:8080/mypage.jsp¡A±o¨ìµ²ªG¦p¹Ï2¡C


¹Ï2
³o¼Ëºô¯¸ªº¤¶­±´N¯à²Î¤@°_¨Ó¡A¦Ó³]­pªÌ¥i¥H¶°¤¤ºë¤O¦b¥\¯à¼Ò²Õ¤W³B²z¥Î¤áµn¿ý¡B³s±µ¸ê®Æ®w¡Bµo°eemailµ¥µ¥¡C¨C­ÓJSPÀɳ£¦³¦p¤Uµ²ºc¡G
<%@ include file="top.htm" %>
<%
// ¹ê²{¬Y¨Ç¥\¯à
%>
<%@ include file="bot.htm" %>

ºûÅ@ºô¯¸ªº¤¶­±¤]¬Û¹ï¤ñ¸û®e©ö¡A¥u­n­×§ïtop.htm©Mbot.htm¡A´N¯à¼vÅT¨ì©Ò¦³ºô­¶¡C

¤­¡B ¦øªA¾¹°Ñ¼Æ³]¸m
JSWDKªºWeb¦øªA¾¹°Ñ¼Æ«O¦s¦b\jswdk-1.0.1\webserver.xml¤¤¡A¥ÎWindows¼g¦rªO¥´¶}¨Ã½s¿è³o­ÓÀÉ´N¥i¥H­×§ï¯Ê¬Ù³]¸m­È¡C¥»¸`¤º®e¥D­n°w¹ïJSWDK¡ALinux¤UTomcatªº³]¸m¤èªk²¤¦³¤£¦P¡C
JSWDK¯Ê¬Ùªº¤åÀɥؿý¬O\jswdk-1.0.1\webpages¡A¦b¦¹¥Ø¿ý¤U¥i¥H«Ø¥ß¤l¥Ø¿ý¡A¨Ò¦p\jswdk-1.0.1\webpages\test¡A´N¯à¦b¬yÄý¾¹¤¤¥Îhttp://localhost/test³X°Ý³o­Ó¥Ø¿ý¡A¬°¤F¨Ï±o³o­Ó¤l¥Ø¿ý¯à°õ¦æJSPµ{¦¡¡AÁÙ¥²¶·¦bwebserver.xml¤¤ªº<Service></Service>¸`¥[¤J¡G
<WebApplication id="test" mapping="/test" docBase="webpages/test" />
¨Ã¥B¡AÁÙ¥²¶·«Ø¥ß\jswdk-1.0.1\webpages\test\WEB-INF¥Ø¿ý¡A¨Ã±q\jswdk-1.0.1\webpages\WEB-INF¥Ø¿ý¤¤½Æ»s¹L¨Ó¥H¤U¥|­ÓÀÉ¡Gmappings.properties¡Bmime.properties¡Bservlets.properties¥H¤Îwebapp.properties¡C§¹¦¨³o¨Ç¹Lµ{¡A¤~¯à³qª¾JSWDKªºWeb¦øªA¾¹°õ¦æhttp://localhost/test ¤¤ªºJSPµ{¦¡¡C

¤»¡B JavaBean
JSPºô­¶§l¤Þ¤Hªº¦a¤è¤§¤@´N¬O¯àµ²¦XJavaBean§Þ³N¨ÓÂX¥Rºô­¶¤¤µ{¦¡ªº¥\¯à¡C
JavaBean¬O¤@ºØJavaÃþ (class)¡A³q¹L«Ê¸ËÄݩʩM¤èªk¦¨¬°¨ã¦³¬YºØ¥\¯à©ÎªÌ³B²z¬Y­Ó·~°Èªºª«¥ó¡CJavaBean³Q²Õ´¦¨¬°package¡]¸ê®Æ¥]¡^¥H«K¶i¦æºÞ²z¡A¹ê»Ú¤W´N¬O§â¤@²ÕJavaBean¤@°_©ñ¦b¬Y¬Y¥Ø¿ý¤¤¡A¨C­ÓÃþªº©w¸q«e¥[¤Wpackage¬Y¬Y¡A¥»¨Ò¤¤¬°test¡C¥Ø¿ýtest¥²¶·©ñ¦b¨t²ÎÀô¹ÒCLASSPATH¥]§tªº¥Ø¿ý¤U¡A¨t²Î¤~¯à§ä¨ì¨ä¤¤ªºJavaBean¡CJSWDK¦b¯Ê¬Ùª¬ºA¤U±N\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\ ¥[¤JCLASSPATH¡C«Ø¥ß¦Û¤vªºJavaBean©Mpackage®É¡A´N©ñ¦b³o­Ó¥Ø¿ý¤¤¤]¤£¥¢¬°¤@ºØÂ²©öªº¤èªk¡C
¤U­±¤¶²Ð¤@­Ó²³æªºJavaBean®Ø¬[¡C¥Î¤å¥»½s¿è¾¹³Ð«Ø¤@­Ó¤å¦rÀÉ®×helloWorld.java¡A¨Ã«O¦s¦b\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\test¥Ø¿ý¤U¡A¨ä¤º®e¦p¤U¡G
package test;
public class helloWorld {
public String name = "My first bean";
public String getHi()
{
return "Hello from " + name;
}
}

helloWorld.java½s¿è¦n«á¡A¦bDOSª¬ºA¤U¡A¶i¤J¥Ø¿ý\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\¡A¥ÎJDKªºjavac©R¥O½sĶhelloWorld.java¦p¤U¡G

javac helloWorld.java

ª`·N¡AJava¬O°Ï¤À¤j¤p¼gªº¡A¦bµ{¦¡¤¤¡A½sĶ©R¥O¦æ¤¤¦r¥Àªº¤j¤p¼g³£¤£¯à¼g¿ù¡C
½sͦ¨¥\´Nªí¥Ü«Ø¥ß¤F¤@­ÓJavaBean¡C¤U­±¬Ý¦p¦ó¦bJSP¤¤¨Ï¥Î³o­ÓJavaBean¡C¥Î¤å¥»½s¿è¾¹³Ð«Ø¤@­Ó¤å¦rÀÉ®×hi-bean.jsp¡A¨Ã«O¦s¦b\jswdk-1.0.1\webpages\test¥Ø¿ý¤U¡A¨ä¤º®e¦p¤U¡G

<html>
<head>
<title>JavaBean ¸ÕÅç</title>
</head>
<body>
<jsp:useBean id="helloBean" scope="session" class="test.helloWorld" />
<%= helloBean.getHi() %>
<hr>
<%
helloBean.name = "JSP";
out.print(helloBean.getHi());
%>
</body>
</html>

¦bJSPºô­¶¤¤¡A¨Ï¥Î <jsp:useBean ... />»yªk¨Ó³Ð«ØJavaBeanª«¥ó¡A¨Ã©R¦W¬°helloBean¡CŪªÌ¥i±q³o­Ó²³æªº¨Ò¤l¤¤¬Ý¥X³]¸m¡BÀò¨úJavaBeanÄݩʡA¥H¤Î½Õ¥ÎJavaBean¤èªkªº°µªk¡C¦b¬yÄý¾¹ªº¦a§}Äæ¤¤Áä¤Jhttp://localhost:8080/test/hi-bean.jsp¡A±o¨ìµ²ªG¦p¹Ï3©Ò¥Ü¡C
ª`·N¡A¦pªG­×§ï©M­«·s½sͤFJavaBeanµ{¦¡¡A«h»Ý­nÃö³¬©M­«·s±Ò°ÊJSWDKªºWeb¦øªA¾¹¥H«á­×§ïªºµ²ªG¤~·|¦³®Ä¡C¦pªG¶È¶È­×§ïJSPÀÉ¡A«h¤£¥Î­«·s±Ò°ÊJSWDKªºWeb¦øªA¾¹¡C

¹Ï3

ÁöµM¡A³o¶È¶È§¹¦¨¤F¤@­Ó«D±`²³æªºJavaBean®Ø¬[¡A¦ý¬O¿í´`³o­Ó®Ø¬[¥i¥H³]­p¥X¦hºØ¦h¼ËªºJavaBean¡C¨Ò¦p¡A±qJSP¤¤³X°Ý¸ê®Æ³q±`´N¬O³q¹LJavaBean¨Ó¹ê²{ªº¡C

¤C¡B ¸ê®Æ®w³s±µ
¸ê®Æ®w³s±µ¹ï°ÊºAºô¯¸¨Ó»¡¬O³Ì¬°­«­nªº³¡¤À¡AJava¤¤³s±µ¸ê®Æ®wªº§Þ³N¬OJDBC(Java Database Connectivity)¡C«Ü¦h¸ê®Æ®w¨t²Î±a¦³JDBCÅX°Êµ{¦¡¡AJavaµ{¦¡´N³q¹LJDBCÅX°Êµ{¦¡»P¸ê®Æ®w¬Û³s¡A°õ¦æ¬d¸ß¡B´£¨ú¸ê®Æµ¥µ¥¾Þ§@¡CSun¤½¥qÁÙ¶}µo¤FJDBC-ODBC bridge¡A¥Î¦¹§Þ³NJavaµ{¦¡´N¥i¥H³X°Ý±a¦³ODBCÅX°Êµ{¦¡ªº¸ê®Æ®w¡A¥Ø«e¤j¦h¼Æ¸ê®Æ®w¨t²Î³£±a¦³ODBCÅX°Êµ{¦¡¡A©Ò¥HJavaµ{¦¡¯à³X°Ý½Ñ¦pOracle¡BSybase¡BMS SQL Server©MMS Accessµ¥¸ê®Æ®w¡C¤U­±¤¶²Ð¦p¦ó¥ÎAccess¹ê²{¤@­Ó°ÊºAFAQ¡]±`¨£°ÝÃD¤Îµª®×¡^ºô¯¸¡C
­º¥ý«Ø¥ß¤@­ÓAccess¸ê®Æ®wfaq.mdb¡A¨ä¤¤ªºªífaqs¦³Äæ¦ìid¡]¦Û°Ê¼W¶q«¬¡A¨Ã³]¬°¥DÃöÁä¦r¡^¡Bsubject¡]¤å¦r«¬¡Aªø«×200¡^¡Banswers¡]³Æµù«¬¡^¡C³o­Óªí¤¤¥i¥H¦s©ñ¤@¨Ç½sµ{ª¾ÃѪº±`¨£°ÝÃD¤Îµª®×¡A¦p¹Ï4¡C
¹Ï 4

µM«á¡A¦bControl Panel¡]±±¨î­±ªO¡^ªºODBC Datasource¼Ò²Õ¤¤¥[¤JSystem DSN¡A¨ú¦Wfaq¡A¨Ã«ü¦Vfaq.mdb¡C
³Ð«Ø¤@­ÓJavaBean¡A¦W¬°faq.java¡A¨Ã«O¦s¦b\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\test¥Ø¿ý¤U¡Cfaq.java ªº¤º®e¦p¤U¡G

package test;
import java.sql.*;

public class faq {
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sC;
Connection conn = null;
ResultSet rs = null;

public faq() {
try {
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e) {
System.err.println("faq(): " + e.getMessage());
}
}

public ResultSet executeQuery(String sql) {
rs = null;
try {
conn = DriverManager.getConnection(sConnStr);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex) {
System.err.println("aq.executeQuery: " + ex.getMessage());
}
return rs;
}
}
¥Î¤W¤@¸`¤¶²Ðªº¤èªk½sĶfaq.java¥H«á¡A¦b\jswdk-1.0.1\webpages\test¥Ø¿ý¤U³Ð«ØJSPÀÉfaq.jsp¡A¨ä¤º®e¦p¤U¡G

<html>
<head>
<meta http-equiv="Content-Type" c>
<title>§ÚªºFAQ !</title>
</head>
<body>
<p><b>³o¬O§ÚªºFAQ!</b></p>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="workM" scope="page" class="test.faq" />
<%
ResultSet RS = workM.executeQuery("SELECT * FROM faqs");
String tt;
while (RS.next()) {
tt = RS.getString("Answer");
out.print("<LI>" + RS.getString("Subject") + "</LI>");
out.print("<pre>" + tt + "</pre>");
}
RS.close();
%>
¦b¬yÄý¾¹ªº¦a§}Äæ¤¤Áä¤Jhttp://localhost:8080/test/faq.jsp¡Afaq.jsp½Õ¥ÎJavaBean¡A±q¸ê®Æ®w¤¤Åª¥X¤º®e¨Ã¿é¥X¡A±o¨ìµ²ªG¦p¹Ï5©Ò¥Ü¡C

¹Ï5

­­©ó½g´T¡A¥»¤å¤£¯à¦CÁ|JSP-JavaBean-JDBC/ODBC-¸ê®Æ®wªº½ÆÂø¨Ò¤l¡AŪªÌ¥i¥H±q¥»¤å³Ì«á©Ò±ÀÂ˪ººô§}¤¤§ä¨ì¨Ã¤U¸ü¨ì¸ê®Æ®w³s±µ½d¨Ò¡C
¤K¡B §Þ³N¤ÀªR
Microsoft ¤½¥qªº ASP §Þ³N¤]¬O°ÊºAºô­¶¶}µo§Þ³N¡CJSP©MASP±q§Î¦¡¤W«D±`¬Û¦ü¡AASPµ{¦¡®v¤@²´´N¯à»{¥X<% %>¥H¤Î<%= %>¡C¦ý¬O²`¤J±´¨s¤U¥h·|µo²{¥¦­Ì«Ü¦hªº®t§O¡A¨ä¤¤³Ì¥D­nªº¦³¥H¤U¤TÂI¡G
1¡B JSPªº®Ä²v©M¦w¥þ©Ê§ó°ª
ASP¥H·½½X§Î¦¡¦s©ñ¡A¥H¸ÑÄÀ¤è¦¡¹B¦æ¡A¨C¦¸ASPºô­¶½Õ¥Î³£»Ý­n¹ï·½½X¶i¦æ¸ÑÄÀ¡A¹B¦æ®Ä²v¤£°ª¡C¥t¥~¡AIISªºº|¬}´¿¨Ï±o³\¦hºô¯¸®Ú·½µ{¦¡¤jÃn¥ú¡A¥]¬Aµ§ªÌ¥H«e¥ÎASP¶}µoªººô¯¸¡AASPµ{¦¡¥þ³¡³Q¤H¤U¸ü¤F¥h¡C
JSP¦b°õ¦æ¥H«e¥ý³Q½sͦ¨¦ì¤¸²Õ½X (byte code)¡A¦ì¤¸²Õ½X¥ÑJavaµêÀÀ¾÷(Java Virtual Machine)¸ÑÄÀ°õ¦æ¡A¤ñ·½½X¸ÑÄÀªº®Ä²v°ª¡F¦øªA¾¹¤WÁÙ¦³¦ì¤¸²Õ½XªºCache¾÷¨î¡A¯à´£°ª¦ì¤¸²Õ½Xªº³X°Ý®Ä²v¡C²Ä¤@¦¸½Õ¥ÎJSPºô­¶¥i¯àµyºC¡A¦]¬°¥¦³Q½sͦ¨Cache¡A¥H«á´N§Ö±o¦h¤F¡C¦P®É¡AJSP®Ú·½µ{¦¡¤£¤j¥i¯à³Q¤U¸ü¡A¯S§O¬OJavaBeanµ{¦¡§¹¥þ¥i¥H©ñ¨ì¤£¹ï¥~ªº¥Ø¿ý¤¤¡C
2¡B JSPªº¤¸¥ó (Component) ¤è¦¡§ó¤è«K
ASP³q¹LCOM¨ÓÂX¥R½ÆÂøªº¥\¯à¡A¦pÀɤW¸ü¡Bµo°eemail¥H¤Î±N·~°È³B²z©ÎªÌ½ÆÂø­pºâ¤ÀÂ÷¥X¨Ó¦¨¬°¿W¥ß¥i­«½Æ§Q¥Îªº¼Ò²Õ¡CJSP³q¹LJavaBean¹ê²{¤F¦P¼Ëªº¥\¯àÂX¥R¡C
¦b¶}µo¤è­±¡ACOMªº¶}µo»·¤ñJavaBean½ÆÂø©MÁcº¾¡A¾Ç·|ASP¤£Ãø¡A¦ý¾Ç·|¶}µoCOM¥i¤£Â²³æ¡C¦ÓJavaBean´N²³æ¦h¤F¡A±q¥»¤å¤W­z¥Ü¨Ò¤¤¥i¥H¬Ý¥X¶}µoJavaBean«Ü¤è«K¡C
¦bºûÅ@¤è­±¡ACOM¥²¶·¦b¦øªA¾¹¤Wµù¥U¡A¦pªG­×§ï¤FCOMµ{¦¡¡A´N¥²¶·­«·sµù¥U¡A¬Æ¦Ü¥²¶·Ãö¾÷©M­«·s±Ò°Ê¡CJavaBean«h¤£»Ý­nµù¥U¡A©ñ¦bCLASSPATH¥]§tªº¥Ø¿ý¤¤´N¦æ¤F¡C¦pªGJavaBean¶i¦æ¤F­×§ï¡A«hJSWDK©MTomcat²{¦bÁٻݭnÃö³¬©M­«·s¹B¦æ¡]¦ý¤£¬OÃö¾÷¡^¡A¦ý¶}µoªÌ¤w¸g³\¿Õ±N¦b¥H«áªºª©¥»¤¤°µ¨ì¤£»Ý­nÃö³¬¦øªA¾¹¡C
¥t¥~JavaBean¬O§¹¥þªºOOP¡A¥i¥H°w¹ï¤£¦Pªº·~°È³B²z¥\¯à¤è«K¦a«Ø¥ß¤@¾ã®M¥i­«½Æ§Q¥Îªºª«¥ó®w¡A¨Ò¦p¥Î¤á³\¥iÅv±±¨î¡Bemail¦Û°Ê¦^´_µ¥µ¥¡C
3¡B JSPªº¾AÀ³¥­»O§ó¼s
ASP¥Ø«e¶È¾A¥Î©óNT©MIIS¡CÁöµMUnix¤U¦³ChiliSoftªº´¡¥ó¨Ó¤ä«ùASP¡A¦ý¬OASP¥»¨­ªº¥\¯à¦³­­¡A¥²¶·³q¹LASP+COMªº²Õ¦X¨ÓÂX¥R¡AUnix¤UªºCOM¹ê²{°_¨Ó«D±`§xÃø¡C
JSP«h¤£¦P¡A´X¥G©Ò¦³¥­»O³£¤ä«ùJava¡AJSP+JavaBean¥i¥H¦b©Ò¦³¥­»O¤U³q¦æµLªý¡CNT¤UIIS³q¹L¤@­Ó´¡¥ó¡A¨Ò¦pJRUN(http://www3.allaire.com/products/jrun/)©ÎªÌServletExec(http://www.newatlanta.com/)¡A´N¯à¤ä«ùJSP¡CµÛ¦WªºWeb¦øªA¾¹Apache¤w¸g¯à°÷¤ä´©JSP¡C¥Ñ©óApache¼sªxÀ³¥Î¦bNT¡BUnix©MLinux¤W¡A¦]¦¹JSP¦³§ó¼sªxªº¹B¦æ¥­»O¡CÁöµM²{¦bNT§@·~¨t²Î¥e¤F«Ü¤jªº¥«³õ¥÷ÃB¡A¦ý¬O¦b¦øªA¾¹¤è­±UnixªºÀu¶Õ¤´µM«Ü¤j¡A¦Ó·s±U°_ªºLinux§ó¬O¨Ó¶Õ¤£¤p¡C
±q¤@­Ó¥­»O²¾´Ó¨ì¥t¥~¤@­Ó¥­»O¡AJSP©MJavaBean¬Æ¦Ü¤£¥Î­«·s½sĶ¡A¦]¬°Java¦ì¤¸²Õ½X³£¬O¼Ð·Çªº»P¥­»OµLÃöªº¡Cµ§ªÌ±N¦bNT¤U¹êÅ窺JSPºô­¶­ì«Ê¤£°Ê¦a®³¨ìLinux¤U´N¹B¦æ°_¨Ó¤F¡A·Pı«D±`º¡·N¡C
¤E¡B µ²½×
ºî¤W©Ò­z¡AJSP¥i¿×¬Oºc«Ø°ÊºAºô¯¸ªº¤@­Ó§Q¾¹¡A¬G±ÀÂ˵¹ÅªªÌ¡A¯¬Ä@§A­Ì´x´¤JSP¡A¶}µo¥XÀu¨qªººô¯¸¡CASPµ{¦¡®v¤]½Ð¸Õ¤@¤U¡AJSPùؤ]¦³session¡Brequest¡Bresponse/outµ¥ª«¥ó¡A¿Ë¦Û¸Õ¸Õ¬Ý¦p¦ó¡C

ªþ¤å
³oùجOÃö©óJSPªº­«­n°Ñ¦Ò¸ê®Æ¡A¦³¿³½ìªºÅªªÌ¥i¥H¶i¤@¨B¾\Ū¡C
http://java.sun.com/products/jsp/faq.html
http://www.esperanto.org.nz/jsp/jspfaq.html
http://www.zdnet.com/pcweek/stories/news/0,4153,410709,00.html
http://developer.netscape.com/viewsource/kuslich_jsp/kuslich_jsp.html
http://web2.java.sun.com/products/jsp/jsp-asp.html
http://www.asptoday.com/articles/19991022.htm


¤À¨É³o­Ó¸ÜÃD¨ì§AªºFacebook

〓¤¤°ê¶Â«ÈÁp·ù¡]CHU¡^〓«e®Ö¤ß¦¨­û¡A²{¬°ºaÅA·|­û
〓¤¤°ê¶Â«ÈÁp·ù¡]CHU¡^〓ºôµ¸¹q¤lÂø»x¡m¯x°}¡n½s¿è
­·°ó§Þ³N¤u§@«Ç

TOP

 
P¹ô 1¸U¥i´«VIPÅv­­1¤Ñ¬°¤j²³ªA°È¡A½Ð§Y¥[¤Jª©¥D¦æ¦C¤d¯u¸U½T! P¶Àª÷¥i´«´ä¤¸HKD(2:1)Donate to us