鍘熸枃杞澆鑷細
Tomcat7宸茬粡鍙戝竷澶氭椂錛孴omcat7澧炲姞浜嗗Servlet 3.0,JSP 2.2鍜孞SP-EL 2銆?鐨勬敮鎸併佹敮鎸亀eb application鍐呭瓨娉勯湶鐨勬嫻嬪拰闃叉姢絳夊緢澶氭柊鍔熻兘銆傛湰鐗囨暀紼嬩富瑕佷粙緇嶅浣曢厤緗甌omcat7銆?/p>
涓銆佽蔣浠朵笅杞?br /> 浜屻佽蔣浠跺畨瑁呭拰閰嶇疆 public class Test{ 娉ㄦ剰絎簩涓懡浠ゆ病鏈?java鍚庣紑銆傚鏋滅湅鍒?#8220;Hello Leyond”錛屽垯琛ㄦ槑jdk鐜鍙橀噺閰嶇疆鎴愬姛錛屾病鏈夌殑璇濓紝媯鏌ヨ嚜宸辯殑閰嶇疆鎯呭喌銆?/p> 2. Tomcat7瀹夎鍜岄厤緗?/p> 涓夈佹柊寤簑ebApp 鎿嶄綔濡備笅錛?br /> <?xml version="1.0" encoding="ISO-8859-1"?> 4. 鍦╩yapp涓嬫柊寤轟竴涓祴璇曠殑jsp欏甸潰錛屾枃浠跺悕涓篿ndex.jsp錛屾枃浠跺唴瀹瑰涓? 5. 鍚姩Tomcat,鍦ㄦ祻瑙堝櫒杈撳叆http://localhost:8080/myapp/index.jsp鐪嬪埌褰撳墠鏃墮棿鐨勮瘽璇存槑灝辨垚鍔熶簡銆?/p> 鍥涖佹柊寤篠ervlet package test; public class HelloWorld extends HttpServlet{ 鐩墠C:\itdevelop\Tomcat7\webapps\myapp鐨勭洰褰曠粨鏋勫涓嬶細 ./index.jsp 鐒跺悗鍦ㄦ祻瑙堝櫒涓緭鍏?a href="http://localhost:8080/myapp/HelloWorld" style="text-decoration: none; color: #006b77; ">http://localhost:8080/myapp/HelloWorld,浜庢槸Server浼楁湜鎵褰掔殑鎶ラ敊浜?Error 404–Not Found 鎬庝箞鍥炰簨鍛紵鎴戜滑榪橀渶瑕侀厤緗甋ervlet鐨勪箣琛岀幆澧冦傛墦寮WEB-INF鐩綍涓嬬殑web.xml錛屽湪<web-app></web-app>娣誨姞涓嬮潰榪欐紼嬪簭錛?/p> <servlet> <servlet-mapping>
娣誨姞瀹屾瘯錛岀‘瀹氬嵆鍙傛帴涓嬫潵綆鍗曟祴璇曠幆澧冨彉閲忔槸鍚﹂厤緗紜細
}
灝嗕互涓婁唬鐮佹嫹璐濅繚瀛樻垚Test.java鏂囦歡銆傜劧鍚庡懡浠よ紿楀彛(xp:鍦ㄨ繍琛岃緭鍏md,vista鍜寃in7鐩存帴鍦ㄦ悳绱㈡涓緭鍏md)錛孋D鍒版枃浠舵墍鍦ㄧ殑鐩綍錛岀劧鍚庨敭鍏ヤ笅鍒楀懡浠わ細
javac Test.java
java Test
<web-app version="3.0"
</web-app>
<html>
</html>
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
}
./WEB-INF/web.xml
./WEB-INF/classes/test/HelloWorld.class (緙栬瘧HelloWorld.java鐢熸垚鐨?
鍘熸枃杞嚜錛?/p>
<display-name>Sample Application</display-name> <description> <!-- <!-- <!-- <!-- <!--閰嶇疆session session鐢ㄦ潵璁懼畾HttpSession鐨勭敓鍛藉懆鏈熴傚崟浣嶏紙縐掞級--> <!--閰嶇疆Wel0come0鏂囦歡娓呭崟--> <!-- <!-- <!-- web-resource-name 鏍囪瘑鍙椾繚鎶ょ殑WEB璧勬簮 <!--閰嶇疆瀵瑰畨鍏ㄩ獙璇佽鑹茬殑寮曠敤-->
<?xml version="1.0" encoding="GB2312"?> <!--
Web.xml渚濇瀹氳浜嗗涓嬪厓绱狅細
<web-app>
<display-name></display-name> 瀹氫箟浜哤EB搴旂敤鐨勫悕瀛?nbsp;
<description></description> 澹版槑WEB搴旂敤鐨勬弿榪頒俊鎭?nbsp;
<filter></filter>
<filter-mapping></filter-mapping>
<servlet></servlet>
<servlet-mapping></servlet-mapping>
<session-config></session-config>
<welcome-file-list></welcome-file-list>
<taglib></taglib>
<resource-ref></resource-ref>
<security-constraint></security-constraint>
<login-config></login-config>
</web-app>
鍦╳eb.xml涓厓绱犲畾涔夌殑鍏堝悗欏哄簭涓嶈兘棰犲掞紝鍚﹀垯Tomcat鏈嶅姟鍣ㄥ彲鑳戒細鎶涘嚭SAXParseException.
-->
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems,Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
This is a Sample Application
</description>
filter 閰嶇疆Servlet榪囨護鍣?nbsp;
filter-name 瀹氫箟榪囨護鍣ㄧ殑鍚嶅瓧銆傚綋鏈夊涓繃婊ゅ櫒鏃訛紝涓嶈兘鍚屽悕
filter-class 鎸囧畾瀹炵幇榪欎竴榪囨護鐨勭被錛岃繖涓被璐熻矗鍏蜂綋鐨勮繃婊や簨鍔?nbsp;
-->
<filter>
<filter-name>SampleFilter</filter-name>
<filter-class>mypack.SampleFilter</filter-class>
</filter>
filter-mapping 璁懼畾榪囨護鍣ㄨ礋璐h繃婊ょ殑URL
filter-name 榪囨護鍣ㄥ悕銆傝繖閲岀殑鍚嶅瓧涓瀹氳鍜宖ilter涓殑榪囨護鍣ㄥ悕鍖歸厤
url-pattern 鎸囧畾榪囨護鍣ㄨ礋璐h繃婊ょ殑URL
-->
<filter-mapping>
<filter-name>SampleFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
servlet 閰嶇疆Servlet.
servlet-name 瀹氫箟Servlet鐨勫悕瀛?nbsp;
servlet-class 鎸囧畾瀹炵幇榪欎釜servlet鐨勭被
init-param 瀹氫箟Servlet鐨勫垵濮嬪寲鍙傛暟鍜屽弬鏁板鹼紝鍙湁澶氫釜init-param銆傚湪servlet綾諱腑閫氳繃getInitParamenter(String name)鏂規硶璁塊棶鍒濆鍖栧弬鏁?nbsp;
load-on-startup 鎸囧畾褰揥eb搴旂敤鍚姩鏃訛紝瑁呰澆Servlet鐨勬搴忋?nbsp;
褰撳間負姝f暟鎴栭浂鏃訛細Servlet瀹瑰櫒鍏堝姞杞芥暟鍊煎皬鐨剆ervlet錛屽啀渚濇鍔犺澆鍏朵粬鏁板煎ぇ鐨剆ervlet.
褰撳間負璐熸垨鏈畾涔夛細Servlet瀹瑰櫒灝嗗湪Web瀹㈡埛棣栨璁塊棶榪欎釜servlet鏃跺姞杞藉畠
-->
<servlet>
<servlet-name>SampleServlet</servlet-name>
<servlet-class>mypack.SampleServlet</servlet-class>
<init-param>
<param-name>initParam1</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
閰嶇疆servlet鏄犲皠錛堜笅闈唬鐮佷負SampleServlet鎸囧畾鐨勭浉瀵筓RL涓?/sample":
servlet-name 鎸囧畾servlet鐨勫悕瀛楋紝榪欓噷鐨勫悕瀛楀簲璇ュ拰<Servlet>鍏冪礌涓畾涔夌殑鍚嶅瓧鍖歸厤銆?nbsp;
url-pattern 鎸囧畾璁塊棶榪欎釜servlet鐨刄RL銆傚彧闇緇欏嚭鐩稿璺緞銆?nbsp;
-->
<servlet-mapping>
<servlet-name>SampleServlet</servlet-name>
<url-pattern>/sample</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
閰嶇疆Tag Library
taglib-uri 璁懼畾Tag Library鐨勫敮涓鏍囪瘑絎︼紝鍦╓eb搴旂敤涓皢鏍規嵁榪欎竴鏍囪瘑絎︽潵寮曠敤Tag Library
taglib-location 鎸囧畾鍜孴ag Library瀵瑰簲鐨凾LD鏂囦歡鐨勪綅緗?nbsp;
-->
<taglib>
<taglib-uri>/mytaglib</taglib-uri>
<taglib-location>/WEB-INF/mytaglib.tld</taglib-location>
</taglib>
閰嶇疆璧勬簮寮曠敤
description 瀵規墍寮曠敤鐨勮祫婧愮殑璇存槑
res-ref-name 鎸囧畾鎵寮曠敤璧勬簮鐨凧NDI鍚嶅瓧
res-type 鎸囧畾鎵寮曠敤璧勬簮鐨勭被鍚嶅瓧
res-auth 鎸囧畾綆$悊鎵寮曠敤璧勬簮鐨凪anager,瀹冩湁涓や釜鍙夊鹼細
Container錛氱敱瀹瑰櫒鏉ュ垱寤哄拰綆$悊resource
Application:鍚學EB搴旂敤鏉ュ垱寤哄拰綆$悊Resource
-->
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/sampleDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
閰嶇疆瀹夊叏綰︽潫錛堜互涓嬩唬鐮佹寚瀹氬綋鐢ㄦ埛璁塊棶璇EB搴旂敤涓嬬殑鎵鏈夎祫婧愭椂錛屽繀欏誨叿澶噂uest瑙掕壊錛?nbsp;
web-resource-collection 澹版槑鍙椾繚鎶ょ殑WEB璧勬簮
auth-constraint 澹版槑鍙互璁塊棶鍙椾繚鎶よ祫婧愮殑瑙掕壊錛屽彲浠ュ寘鍚涓?lt;role-name>瀛愬厓绱?/p>
url-pattern 鎸囧畾鍙椾繚鎶ょ殑URL璺緞
-->
<Security-constraint>
<web-resource-collection>
<web-resource-name>sample appliction</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>guest</role-name>
</auth-constraint>
</Security-constraint>
<!--
閰嶇疆瀹夊叏楠岃瘉鐧誨綍鐣岄潰錛氭寚瀹氬綋WEB瀹㈡埛璁塊棶鍙椾繚鎶ょ殑WEB璧勬簮鏃訛紝緋葷粺寮瑰嚭鐨勭櫥褰曞璇濇鐨勭被鍨嬨?nbsp;
auth-method 鎸囧畾楠岃瘉鏂規硶錛屽畠鏈変笁涓彲閫夊鹼細BASIC(鍩烘湰楠岃瘉)銆丏IGEST(鎽樿楠岃瘉)銆丗ORM(琛ㄥ崟楠岃瘉)
realm-name 璁懼畾瀹夊叏鍩熺殑鍚嶇О
form-login-config 褰撻獙璇佹柟娉曚負FORM鏃訛紝閰嶇疆楠岃瘉緗戦〉鍜屽嚭閿欑綉欏?nbsp;
form-login-page 褰撻獙璇佹柟娉曚負FORM鏃訛紝璁懼畾楠岃瘉緗戦〉
form-error-page 褰撻獙璇佹柟娉曚負FORM鏃訛紝璁懼畾鍑洪敊緗戦〉
-->
<login-config>
<auth-method>FORM</auth-method>
<realm-name>
Tomcat Server Configuration form-Based Authentication Area
</realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
</login-config>
<security-role>
<description>
The role that is required to log into the sample application
</description>
<role-name>guest</role-name>
</security-role>
<?xml version="1.0" encoding="GB2312"?> <!--
Web.xml渚濇瀹氳浜嗗涓嬪厓绱狅細
<web-app>
<display-name></display-name> 瀹氫箟浜哤EB搴旂敤鐨勫悕瀛?nbsp;
<description></description> 澹版槑WEB搴旂敤鐨勬弿榪頒俊鎭?nbsp;
<filter></filter>
<filter-mapping></filter-mapping>
<servlet></servlet>
<servlet-mapping></servlet-mapping>
<session-config></session-config>
<welcome-file-list></welcome-file-list>
<taglib></taglib>
<resource-ref></resource-ref>
<security-constraint></security-constraint>
<login-config></login-config>
</web-app>
鍦╳eb.xml涓厓绱犲畾涔夌殑鍏堝悗欏哄簭涓嶈兘棰犲掞紝鍚﹀垯Tomcat鏈嶅姟鍣ㄥ彲鑳戒細鎶涘嚭SAXParseException.
-->
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems,Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Sample Application</display-name>
<description>
This is a Sample Application
</description>
<!--
filter 閰嶇疆Servlet榪囨護鍣?nbsp;
filter-name 瀹氫箟榪囨護鍣ㄧ殑鍚嶅瓧銆傚綋鏈夊涓繃婊ゅ櫒鏃訛紝涓嶈兘鍚屽悕
filter-class 鎸囧畾瀹炵幇榪欎竴榪囨護鐨勭被錛岃繖涓被璐熻矗鍏蜂綋鐨勮繃婊や簨鍔?nbsp;
-->
<filter>
<filter-name>SampleFilter</filter-name>
<filter-class>mypack.SampleFilter</filter-class>
</filter>
<!--
filter-mapping 璁懼畾榪囨護鍣ㄨ礋璐h繃婊ょ殑URL
filter-name 榪囨護鍣ㄥ悕銆傝繖閲岀殑鍚嶅瓧涓瀹氳鍜宖ilter涓殑榪囨護鍣ㄥ悕鍖歸厤
url-pattern 鎸囧畾榪囨護鍣ㄨ礋璐h繃婊ょ殑URL
-->
<filter-mapping>
<filter-name>SampleFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<!--
servlet 閰嶇疆Servlet.
servlet-name 瀹氫箟Servlet鐨勫悕瀛?nbsp;
servlet-class 鎸囧畾瀹炵幇榪欎釜servlet鐨勭被
init-param 瀹氫箟Servlet鐨勫垵濮嬪寲鍙傛暟鍜屽弬鏁板鹼紝鍙湁澶氫釜init-param銆傚湪servlet綾諱腑閫氳繃getInitParamenter(String name)鏂規硶璁塊棶鍒濆鍖栧弬鏁?nbsp;
load-on-startup 鎸囧畾褰揥eb搴旂敤鍚姩鏃訛紝瑁呰澆Servlet鐨勬搴忋?nbsp;
褰撳間負姝f暟鎴栭浂鏃訛細Servlet瀹瑰櫒鍏堝姞杞芥暟鍊煎皬鐨剆ervlet錛屽啀渚濇鍔犺澆鍏朵粬鏁板煎ぇ鐨剆ervlet.
褰撳間負璐熸垨鏈畾涔夛細Servlet瀹瑰櫒灝嗗湪Web瀹㈡埛棣栨璁塊棶榪欎釜servlet鏃跺姞杞藉畠
-->
<servlet>
<servlet-name>SampleServlet</servlet-name>
<servlet-class>mypack.SampleServlet</servlet-class>
<init-param>
<param-name>initParam1</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!--
閰嶇疆servlet鏄犲皠錛堜笅闈唬鐮佷負SampleServlet鎸囧畾鐨勭浉瀵筓RL涓?/sample":
servlet-name 鎸囧畾servlet鐨勫悕瀛楋紝榪欓噷鐨勫悕瀛楀簲璇ュ拰<Servlet>鍏冪礌涓畾涔夌殑鍚嶅瓧鍖歸厤銆?nbsp;
url-pattern 鎸囧畾璁塊棶榪欎釜servlet鐨刄RL銆傚彧闇緇欏嚭鐩稿璺緞銆?nbsp;
-->
<servlet-mapping>
<servlet-name>SampleServlet</servlet-name>
<url-pattern>/sample</url-pattern>
</servlet-mapping>
<!--閰嶇疆session session鐢ㄦ潵璁懼畾HttpSession鐨勭敓鍛藉懆鏈熴傚崟浣嶏紙縐掞級-->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<!--閰嶇疆Wel0come0鏂囦歡娓呭崟-->
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
<!--
閰嶇疆Tag Library
taglib-uri 璁懼畾Tag Library鐨勫敮涓鏍囪瘑絎︼紝鍦╓eb搴旂敤涓皢鏍規嵁榪欎竴鏍囪瘑絎︽潵寮曠敤Tag Library
taglib-location 鎸囧畾鍜孴ag Library瀵瑰簲鐨凾LD鏂囦歡鐨勪綅緗?nbsp;
-->
<taglib>
<taglib-uri>/mytaglib</taglib-uri>
<taglib-location>/WEB-INF/mytaglib.tld</taglib-location>
</taglib>
<!--
閰嶇疆璧勬簮寮曠敤
description 瀵規墍寮曠敤鐨勮祫婧愮殑璇存槑
res-ref-name 鎸囧畾鎵寮曠敤璧勬簮鐨凧NDI鍚嶅瓧
res-type 鎸囧畾鎵寮曠敤璧勬簮鐨勭被鍚嶅瓧
res-auth 鎸囧畾綆$悊鎵寮曠敤璧勬簮鐨凪anager,瀹冩湁涓や釜鍙夊鹼細
Container錛氱敱瀹瑰櫒鏉ュ垱寤哄拰綆$悊resource
Application:鍚學EB搴旂敤鏉ュ垱寤哄拰綆$悊Resource
-->
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/sampleDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!--
閰嶇疆瀹夊叏綰︽潫錛堜互涓嬩唬鐮佹寚瀹氬綋鐢ㄦ埛璁塊棶璇EB搴旂敤涓嬬殑鎵鏈夎祫婧愭椂錛屽繀欏誨叿澶噂uest瑙掕壊錛?nbsp;
web-resource-collection 澹版槑鍙椾繚鎶ょ殑WEB璧勬簮
auth-constraint 澹版槑鍙互璁塊棶鍙椾繚鎶よ祫婧愮殑瑙掕壊錛屽彲浠ュ寘鍚涓?lt;role-name>瀛愬厓绱?/p>
web-resource-name 鏍囪瘑鍙椾繚鎶ょ殑WEB璧勬簮
url-pattern 鎸囧畾鍙椾繚鎶ょ殑URL璺緞
-->
<Security-constraint>
<web-resource-collection>
<web-resource-name>sample appliction</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>guest</role-name>
</auth-constraint>
</Security-constraint>
<!--
閰嶇疆瀹夊叏楠岃瘉鐧誨綍鐣岄潰錛氭寚瀹氬綋WEB瀹㈡埛璁塊棶鍙椾繚鎶ょ殑WEB璧勬簮鏃訛紝緋葷粺寮瑰嚭鐨勭櫥褰曞璇濇鐨勭被鍨嬨?nbsp;
auth-method 鎸囧畾楠岃瘉鏂規硶錛屽畠鏈変笁涓彲閫夊鹼細BASIC(鍩烘湰楠岃瘉)銆丏IGEST(鎽樿楠岃瘉)銆丗ORM(琛ㄥ崟楠岃瘉)
realm-name 璁懼畾瀹夊叏鍩熺殑鍚嶇О
form-login-config 褰撻獙璇佹柟娉曚負FORM鏃訛紝閰嶇疆楠岃瘉緗戦〉鍜屽嚭閿欑綉欏?nbsp;
form-login-page 褰撻獙璇佹柟娉曚負FORM鏃訛紝璁懼畾楠岃瘉緗戦〉
form-error-page 褰撻獙璇佹柟娉曚負FORM鏃訛紝璁懼畾鍑洪敊緗戦〉
-->
<login-config>
<auth-method>FORM</auth-method>
<realm-name>
Tomcat Server Configuration form-Based Authentication Area
</realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
</login-config>
<!--閰嶇疆瀵瑰畨鍏ㄩ獙璇佽鑹茬殑寮曠敤-->
<security-role>
<description>
The role that is required to log into the sample application
</description>
<role-name>guest</role-name>
</security-role>
</web-app>