伺服器配置好之後,下面就應該為伺服器配置虛拟目錄,虛拟目錄中存放開發的各種代碼。如果要想配置虛拟目錄,則首先必須明确的知道虛拟目錄的基本目錄結構:
WEB ROOT à 虛拟目錄就配置到此目錄之上
|- WEB-INF
|- web.xml:WEB的部署描述符
之後,要在Tomcat中将此目錄配置上去,與一個具體的路徑相關聯,修改conf/server.xml檔案:
<Context path="/test" docBase="E:\demoweb"/>
以後在浏覽器上就可以通過輸入test找到demoweb下的所有程式。
<b>注意:</b>對于伺服器而言,如果修改配置檔案之後,則一定要重新啟動。
之後輸入:[url]http://localhost:8080/test/[/url],就可以通過映射名稱找到具體内容了。Tomcat 5.5不像之前的版本,會自動把所有的檔案通過頁面列出,如果要想看所有的檔案,則要修改conf/web.xml檔案修改。
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<param-name>listings</param-name>
<param-value><b>true</b></param-value>
<load-on-startup>1</load-on-startup>
</servlet>
此時,就可以看見此目錄的清單:
編寫第一個JSP程式,在頁面上列印“Hello World!!!”。
JSP代碼是在HTML中插入JAVA代碼。
<b>hello.jsp</b><b>:</b>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<BODY>
<%
// 這中間編寫JAVA代碼
out.println("Hello World!!!") ;
%>
</BODY>
</HTML>
此時,程式就可以正常的執行JSP檔案了。
正常情況下,ln應該表示換行,但是HTML中會忽略此換行。
out.println("Hello World!!!<br>") ;
發現,可以通過JSP控制HTML代碼的輸出,當然,也可以控制JavaScript代碼的輸出。
<b>修改運作端口</b>
Tomcat的預設的端口号是:8080。可以通過修改server.xml檔案修改預設的端口号。
<Connector port="80" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
如果修改為80之後,所有的位址,輸入的時候就不用再輸入端口号了。
之前在執行JSP的時候,發現程式的第一次執行會比較慢,而之後的執行速度會較快,因為Tomcat在JSP第一次運作的時候會将*.jsp à *.java à *.class,而第二次執行的時候,就直接執行*.class了,是以第一次較慢。
在tomcat中的work目錄下,儲存了所有的臨時生成的檔案。
動态Web的最大特點:是具有互動性,互動性的最大展現是在于表單上,使用者通過表單送出資訊給伺服器,伺服器接收請求并回應内容。
伺服器接收表單操作的方法:request.getParameter("參數名稱") à String
<b>input.htm</b><b>:</b>
<HEAD><TITLE> New Document </TITLE></HEAD>
<form action="input.jsp" method="post">
請輸入内容:<input type="text" name="info">
<input type="submit" value="送出">
</form>
此頁面在表單的文本框中輸入内容,之後把所有的内容送出給input.jsp,在input.jsp上顯示使用者輸入的内容。
<b>input.jsp</b><b>:</b>
<b>String str = request.getParameter("info") ;</b>
out.println("<h1>"+str+"</h1>") ;
本文轉自 李興華 51CTO部落格,原文連結:http://blog.51cto.com/lixinghua/101363,如需轉載請自行聯系原作者