国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
[轉(zhuǎn)]Tomcat 配置集錦
說明:以下文字均以tomcat5.0.30為例進(jìn)行。

1,配置tomcat服務(wù)器訪問端口,只需配置Connector的port端口即可。Tomcat默認(rèn)為8080,現(xiàn)修改port參數(shù)值為80。

<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->

<Connector port="80"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

debug="0" connectionTimeout="20000"

disableUploadTimeout="true" URIEncoding="GBK"/>

2,配置tomcat支持URL中文參數(shù),只需添加Connector的URIEncoding參數(shù)即可,默認(rèn)情況下該參數(shù)未被配置。要支持URL參數(shù)支持中文,加上URIEncoding=”GBK”就行了(見1中附代碼最后一行)。

3,配置新的webApp:找到host尾標(biāo)記</Host>,插入新的context即可。
如:
(1)<Context path="" docBase="ROOT" debug="0"/>
若要支持?jǐn)?shù)據(jù)庫(kù)(以SQL Server為例),則為:
(2)<Context path="/xkb" docBase="F:\XKB6\webApp" debug="5" reloadable="true" crossContext="true">

<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_DBTest_log." suffix=".txt" timestamp="true"/>

<Resource name="jdbc/SqlServerDB" auth="Container" type="javax.sql.DataSource"/>

<ResourceParams name="jdbc/SqlServerDB">

<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

</parameter>

<!-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit.-->

<parameter>

<name>maxActive</name>

<value>50</value>

</parameter>

<!-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit.-->

<parameter>

<name>maxIdle</name>

<value>20</value>

</parameter>

<!-- Maximum time to wait for a dB connection to become available in ms, in this example 0.5 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -->

<parameter>

<name>maxWait</name>

<value>500</value>

</parameter>

<!-- msSQL dB username and password for dB connections -->

<parameter>

<name>username</name>

<value>sa</value>

</parameter>

<parameter>

<name>password</name>

<value>wangnewton</value>

</parameter>

<!-- Class name for SQLServer2000 JDBC driver -->

<parameter>

<name>driverClassName</name>

<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>

</parameter>

<!-- The JDBC connection url for connecting to your MS SQL Server dB.The autoReconnect=true argument to the url makes sure that the mm.Sql Server JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours.-->

<parameter>

<name>url</name>

<value>jdbc:microsoft:sqlserver://localhost:1433;databaseName=XKBCourse</value>

<!--must use & not use & -->

</parameter>

</ResourceParams>

</Context>

tomcat5.5.x 配置記錄。

1.下載:
http://www.eu.apache.org/dist/jakarta/tomcat-5/
http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-admin.zip
http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-compat.zip
http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x.zip
http://www.apache.org/dist/jakarta/tomcat-5/v5.5.x/bin/jakarta-tomcat-5.5.x-deployer.zip
把jakarta-tomcat-5.5.x.zip
和jakarta-tomcat-5.5.x-compat.zip
和jakarta-tomcat-5.5.x-admin.zip
(Tomcat 默認(rèn)是沒有內(nèi)置admin模塊了
Tomcat‘s administration web application is no longer installed by default. Download and install the "admin" package to use it. )
都解壓到同一個(gè)目錄下面。比如:D:\jakarta-tomcat-5.5.x\
(如果使用jdk1.4,才需要compat.zip用jdk1.5就可以免了這個(gè)。)

2.修改jakarta-tomcat-5.5.x\conf\tomcat-users.xml.
添加管理員賬號(hào)lizongbo,密碼為lizongbopass.
新xml如下:
<?xml version=‘1.0‘ encoding=‘utf-8‘?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="lizongbo" password="lizongbopass" roles="admin,manager"/>
</tomcat-users>

3.修改jakarta-tomcat-5.5.x\conf\server.xml來解決編碼問題。
(給Connector 添加URIEncoding參數(shù),參考http://blog.csdn.net/darkxie/archive/2004/10/25/TOMCATAPP.aspx)
(可以設(shè)置成GB18030)
<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="200"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"
compression="on" compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"/>

<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" URIEncoding="GBK"/>

4.啟用支持gzip壓縮.
(http://www.linuxaid.com.cn/forum/showdoc.jsp?l=1&i=81169)
添加下列屬性
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"

5.設(shè)置虛擬主機(jī)。
在jakarta-tomcat-5.5.x\下建立文件夾vhost\www.mydomain.com。
然后修改jakarta-tomcat-5.5.x\conf\server.xml

<Engine defaultHost="localhost" name="Catalina">
<Host appBase="vhost/www.mydomain.com" name="www.mydomain.com">
</Host>
<Host appBase="webapps" name="localhost">
</Host>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
</Engine>

6.添加數(shù)據(jù)庫(kù)驅(qū)動(dòng),更新mail.jar和actiovation.jar
復(fù)制mysql-connector-java-3.0.16-ga-bin.jar,pg74.215.jdbc3.jar到 jakarta-tomcat-5.5.x\common\lib\
還有javamail 1.3.2的mail.jar,jaf-1_0_2的 activation.jar
msSQl 2000 JDBC sp3,msbase.jar,msutil,jar,mssqlserver.jar

7.配置SSL
參考 http://jakarta.apache.org/tomcat/tomcat-5.5-doc/ssl-howto.html
D:\j2sdk1.4.2_06\bin>%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
輸入keystore密碼: lizongbossl
您的名字與姓氏是什么?
[tomcat5.5.x]: tomcat5.5.x
您的組織單位名稱是什么?
[jakarta]: jakarta
您的組織名稱是什么?
[apache]: apache
您所在的城市或區(qū)域名稱是什么?
[hzcity]: hzcity
您所在的州或省份名稱是什么?
[gdp]: gdp
該單位的兩字母國(guó)家代碼是什么
[CN]: CN
CN=tomcat5.5.x, OU=jakarta, O=apache, L=hzcity, ST=gdp, C=CN 正確嗎?
[否]: y

輸入<tomcat>的主密碼
(如果和 keystore 密碼相同,按回車):

(必須密碼一致,因此直接回車)
然后再把userhome(例如:C:\Documents and Settings\lizongbo\)下的.keystore復(fù)制到
tomcat的conf\目錄下。
(例如:D:\jakarta-tomcat-5.5.x\conf\.keystore )
配置jakarta-tomcat-5.5.x\conf\server.xml
加上
<Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="conf/.keystore"
keystorePass="lizongbossl"> <!--與先前設(shè)置的密碼一致-->
</Connector>
8.禁止文件目錄列表,
修改jakarta-tomcat-5.5.x\conf\web.xml,把listing設(shè)置為false

<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>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

9.指定了自己的javaEncoding
(參考 http://gceclub.sun.com.cn/staticcontent/html/sunone/app7/app7-dg-webapp/ch6/ch6-4.html )

<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>javaEncoding</param-name>
<param-value>GB18030</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
10.添加rar,iso等的mime-type映射
避免在瀏覽器里直接打開。
<mime-mapping>
<extension>mht</extension>
<mime-type>text/x-mht</mime-type>
</mime-mapping>
<mime-mapping>
<extension>rar</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>iso</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>ape</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>rmvb</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>ico</extension>
<mime-type>image/x-icon</mime-type>
</mime-mapping>
10.1對(duì)html靜態(tài)頁(yè)面設(shè)置編碼
<!-- 修改下面兩行以支持靜態(tài)超文本的自動(dòng)編碼
-->
<mime-mapping>
<extension>htm</extension>
<mime-type>text/html;charset=gb2312</mime-type>
</mime-mapping>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html;charset=gb2312</mime-type>
</mime-mapping>
</web-app>

11.添加welcome-file-list,并調(diào)整順序。
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>

Tomcat中文編碼問題解決方案(簡(jiǎn))

liyonghai 04/08/30

編碼問題的根源可參考http://www-900.ibm.com/developerWorks/cn/java/java_chinese/index.shtml

Tomcat 4.x解決方法:
獲取中文:request.setCharacterEncoding("gb2312");
輸出中文:<%@ page contentType="text/html;charset=gb2312" %>,必要時(shí)需要轉(zhuǎn)碼

Tomcat 5.x解決方法:
獲取中文:
提交表單時(shí)
1)post:request.setCharacterEncoding("gb2312");
2)get:修改server.xml,在Connector中加入U(xiǎn)RIEncoding="gb2312"
如: <Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="gb2312" />
或者使用useBodyEncodingForURI,使tomcat 5.x兼容tomcat 4.x
輸出中文:<%@ page contentType="text/html;charset=gb2312" %>,必要時(shí)需要轉(zhuǎn)碼

附:Tomcat 5.x與Tomcat 4.x在解析提交表單時(shí)發(fā)生了變化,Tomcat 4.x無論是post還是get,都使用
相同的編碼,而Tomcat 5.x 卻把get方法單獨(dú)了出來.具體可查看tomcat的source code.

get方式的處理比較好,對(duì)于post方式建議用配置過濾器的方式來解決,因?yàn)檫@樣,配置一個(gè)地方整個(gè)系統(tǒng)都不用操心了。

簡(jiǎn)單說明:
web.xml
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>SetCharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
/************************/

SetCharacterEncodingFilter.java
--------------------------------------------
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.UnavailableException;

/**
* Example filter that sets the character encoding to be used in parsing the
* incoming request
*/
public class SetCharacterEncodingFilter implements Filter {

/**
* Take this filter out of service.
*/
public void destroy() {
}
/**
* Select and set (if specified) the character encoding to be used to
* interpret request parameters for this request.
*/
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)throws IOException, ServletException {

request.setCharacterEncoding("GBK");

// 傳遞控制到下一個(gè)過濾器
chain.doFilter(request, response);
}

public void init(FilterConfig filterConfig) throws ServletException {
}
}
////也可以把編碼做為參數(shù)傳遞進(jìn)去。

12.如果你的webapp需要只能夠進(jìn)行https方式訪問,那么在webapp的web.xml里加上:
<security-constraint>
<web-resource-collection>
<web-resource-name>must https</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
參考:http://jakarta.apache.org/tomcat/faq/security.html#https
http://marc.theaimsgroup.com/?l=tomcat-user&m=104951559722619&w=2

13.修改遠(yuǎn)程關(guān)閉服務(wù)器的命令。
server.xml默認(rèn)有下面一行:
<Server port="8005" shutdown="SHUTDOWN">
這樣允許任何人只要telnet到服務(wù)器的8005端口,輸入"SHUTDOWN",然后回車,服務(wù)器立即就被關(guān)掉了。
從安全的角度上考慮,我們需要把這個(gè)shutdown指令改成一個(gè)別人不容易猜測(cè)的字符串。
例如修改如下:
<Server port="8006" shutdown="lizongbo">,這樣就只有在telnet到8005,并且輸入"lizongbo"才能夠關(guān)閉Tomcat.
注意:這個(gè)修改不影響shutdown.bat的執(zhí)行。運(yùn)行shutdown.bat一樣可以關(guān)閉服務(wù)器。
參考:http://jakarta.apache.org/tomcat/faq/security.html#8005

以下皆可以參考:http://www.cnjsp.org/document/user/tuman/valve.html

14.配置http訪問日志。Tomcat自帶的能夠記錄的http訪問日志已經(jīng)很詳細(xì)了
取消下面這段的注釋:

<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>

然后修改為:
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="combined" resolveHosts="false" fileDateFormat="yyyy-MM-dd.HH"/>

pattern="combined" 記錄的日志內(nèi)容更詳細(xì),fileDateFormat="yyyy-MM-dd.HH",會(huì)讓日志文件按小時(shí)進(jìn)行滾卷,
比默認(rèn)的按天滾卷要好些,尤其是訪問量大的網(wǎng)站,可以考慮寫成fileDateFormat="yyyy-MM-dd.HH.mm",就會(huì)是每分鐘一個(gè)日志文件了。
而且可以分別按Engine, Host, or Context,來記錄自己的日志
詳情參考:
http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/valve.html
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/logger.html
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/host.html#Access%20Logs
而且還可以配合awstats來進(jìn)行日志統(tǒng)計(jì)分析: http://www.chedong.com/tech/awstats.html http://blog.csdn.net/lizongbo/archive/2005/02/18/291929.aspx

15.限制ip,限制主機(jī)訪問等。
如果想禁止指定的ip或者主機(jī)名來拒絕某些機(jī)器訪問,或者指定某些機(jī)器來訪問。
也支持分別按Engine, Host, or Context,進(jìn)行以下配置:
<Context path="/examples" ...> ...
<Valve className="org.apache.catalina.valves.RemoteHostValve"
allow="*.mycompany.com,www.yourcompany.com"/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
deny="192.168.1.*"/>
</Context>
參考:
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/context.html

16.發(fā)布webapp到網(wǎng)站根目錄
1。直接復(fù)制到ROOT目錄下。
2.因?yàn)闊o法創(chuàng)建無名字的xml文件,并且在xml文件里指定path也是無效的(tomcat靠文件名字來判斷的),
因此必須在server.xml里寫下面一段:
<Context docBase="${catalina.home}/vhost/www.lizongbo.com" path="/"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Manager className="org.apache.catalina.session.StandardManager" algorithm="SHA-512" sessionIdLength="40">
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_mytest_access_log." suffix=".txt"
pattern="combined" resolveHosts="true" fileDateFormat="yyyy-MM-dd.HH"/>

</Context>
而且必須把ROOT目錄刪除掉,否則Tomcat還是優(yōu)先部署ROOT目錄為"/"。

17.在重新啟動(dòng)Tomcat的webapp的時(shí)候,禁止把session寫入文件。
修改conf/web.xml
取消注釋:
<!---->
<Manager pathname="" />

18.增強(qiáng)SessiionID的生成算法和長(zhǎng)度。

<Manager className="org.apache.catalina.session.StandardManager" algorithm="SHA-512" sessionIdLength="40">
</Manager>

(Tomcat默認(rèn)算法是MD5,默認(rèn)長(zhǎng)度是16位。)

tomcat+jsp經(jīng)典配置

Tomcat下JSP、Servlet和JavaBean環(huán)境的配置

經(jīng)??吹絡(luò)sp的初學(xué)者問tomcat下如何配置jsp、servlet和bean的問題,于是總結(jié)了一下如何tomcat下配置jsp、servlet和ben,希望對(duì)那些初學(xué)者有所幫助。
一、開發(fā)環(huán)境配置
第一步:下載j2sdk和tomcat:到sun官方站點(diǎn)(http://java.sun.com/j2se/1.4.2/download.html)下載j2sdk,注意下載版本為Windows Offline Installation的SDK,同時(shí)最好下載J2SE 1.4.2 Documentation,然后到tomcat官方站點(diǎn)(http://www.apache.org/dist/jakarta/tomcat-4/)下載tomcat(下載最新4.1.x版本的tomcat);
第二步:安裝和配置你的j2sdk和tomcat:執(zhí)行j2sdk和tomcat的安裝程序,然后按默認(rèn)設(shè)置進(jìn)行安裝即可。
1.安裝j2sdk以后,需要配置一下環(huán)境變量,在我的電腦->屬性->高級(jí)->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量(假定你的j2sdk安裝在c:\j2sdk1.4.2):
JAVA_HOME=c:\j2sdk1.4.2
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因?yàn)樗懋?dāng)前路徑)
path=%JAVA_HOME%\bin
接著可以寫一個(gè)簡(jiǎn)單的java程序來測(cè)試J2SDK是否已安裝成功:
public class Test{
public static void main(String args[]){
System.out.println("This is a test program.");
}
}
將上面的這段程序保存為文件名為Test.java的文件。
然后打開命令提示符窗口,cd到你的Test.java所在目錄,然后鍵入下面的命令
javac Test.java
java Test
此時(shí)如果看到打印出來This is a test program.的話說明安裝成功了,如果沒有打印出這句話,你需要仔細(xì)檢查一下你的配置情況。
2.安裝Tomcat后,在我的電腦->屬性->高級(jí)->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量(假定你的tomcat安裝在c:\tomcat):
CATALINA_HOME=c:\tomcat
CATALINA_BASE=c:\tomcat
然后修改環(huán)境變量中的classpath,把tomat安裝目錄下的common\lib下的(可以根據(jù)實(shí)際追加)servlet.jar追加到classpath中去,修改后的classpath如下:
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;
接著可以啟動(dòng)tomcat,在IE中訪問http://localhost:8080/,如果看到tomcat的歡迎頁(yè)面的話說明安裝成功了。
第三步:建立自己的jsp app目錄
1.到Tomcat的安裝目錄的webapps目錄,可以看到ROOT,examples, tomcat-docs之類Tomcat自帶的的目錄;
2.在webapps目錄下新建一個(gè)目錄,起名叫myapp;
3.myapp下新建一個(gè)目錄WEB-INF,注意,目錄名稱是區(qū)分大小寫的;
4.WEB-INF下新建一個(gè)文件web.xml,內(nèi)容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!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>My Web Application</display-name>
<description>
A application for test.
</description>
</web-app>
5.在myapp下新建一個(gè)測(cè)試的jsp頁(yè)面,文件名為index.jsp,文件內(nèi)容如下:
<html><body><center>
Now time is: <%=new java.util.Date()%>
</center></body></html>
6.重啟Tomcat
7.打開瀏覽器,輸入http://localhost:8080/myapp/index.jsp 看到當(dāng)前時(shí)間的話說明就成功了。
第四步:建立自己的Servlet:
1.用你最熟悉的編輯器(建議使用有語(yǔ)法檢查的java ide)新建一個(gè)servlet程序,文件名為Test.java,文件內(nèi)容如下:
package test;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Test extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
out.flush();
}
}
2 .編譯
將Test.java放在c:\test下,使用如下命令編譯:
C:\Test>javac Test.java
然后在c:\Test下會(huì)產(chǎn)生一個(gè)編譯后的servlet文件:Test.class
3 .將結(jié)構(gòu)test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那個(gè)test目錄到classes目錄下,如果classes目錄不存在,就新建一個(gè)。 現(xiàn)在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目錄結(jié)構(gòu)
4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
編輯后的web.xml如下所示,紅色為添加的內(nèi)容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!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>My Web Application</display-name>
<description>
A application for test.
</description>
<servlet>
<servlet-name>Test</servlet-name>
<display-name>Test</display-name>
<description>A test Servlet</description>
<servlet-class>test.Test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
</web-app>
這段話中的servlet這一段聲明了你要調(diào)用的Servlet,而servlet-mapping則是將聲明的servlet"映射"到地址/Test上
5 .好了,重啟動(dòng)Tomcat,啟動(dòng)瀏覽器,輸入http://localhost:8080/myapp/Test 如果看到輸出This is a servlet test.就說明編寫的servlet成功了。
注意:修改了web.xml以及新加了class,都要重啟Tomcat
第四步:建立自己的Bean:
1.用你最熟悉的編輯器(建議使用有語(yǔ)法檢查的java ide)新建一個(gè)java程序,文件名為TestBean.java,文件內(nèi)容如下:
package test;
public class TestBean{
private String name = null;
public TestBean(String strName_p){
this.name=strName_p;
}
public void setName(String strName_p){
this.name=strName_p;
}
public String getName(){
return this.name;
}
}
2 .編譯
將TestBean.java放在c:\test下,使用如下命令編譯:
C:\Test>javac TestBean.java
然后在c:\Test下會(huì)產(chǎn)生一個(gè)編譯后的bean文件:TestBean.class
3 .將TestBean.class文件剪切到 %CATALINA_HOME%\webapps\myapp\WEB-INF\classes\test下,
4 .新建一個(gè)TestBean.jsp文件,文件內(nèi)容為:
<%@ page import="test.TestBean" %>
<html><body><center>
<%
TestBean testBean=new TestBean("This is a test java bean.");
%>
Java bean name is: <%=testBean.getName()%>
</center></body></html>
5 .好了,重啟Tomcat,啟動(dòng)瀏覽器,輸入http://localhost:8080/myapp/TestBean.jsp 如果看到輸出Java bean name is: This is a test java bean.就說明編寫的Bean成功了。
這樣就完成了整個(gè)Tomcat下的jsp、servlet和javabean的配置。接下來需要做的事情就是多看書、多讀別人的好代碼,自己多動(dòng)手寫代碼以增強(qiáng)自己在這方面開發(fā)的能力了。

jvm應(yīng)填寫到
c:\j2sdk\bin

給你一個(gè)簡(jiǎn)單的配置::::

JSP環(huán)境配置心得
首先要說的是,使用jdk+tomcat完全可以配置我們的jsp服務(wù)器,不再需要其實(shí)任何東東,有很多文章介紹了Apache,其實(shí)根本用不著,一般的學(xué)習(xí)調(diào)試tomcat完全可以勝任了。
安裝jdk后,tomcat在安裝之前會(huì)自動(dòng)找到j(luò)dk的安裝路徑,一路點(diǎn)擊"下一步",經(jīng)過一段時(shí)間的文件復(fù)制,最后"close",完成comcat的安裝。
您最好去下載一個(gè)版本較高的tomcat,比如4.1以上的,因?yàn)樗恍枰O(shè)置太多的系統(tǒng)變量,右擊"我的電腦",選擇"屬性"->"高級(jí)"->"環(huán)境變量"->"系統(tǒng)變量",新建一個(gè)TOMCAT_HOME,值設(shè)置成你的tomcat所在的路徑,比如:D:\Program Files\Apache Group\Tomcat 4.1,配置完成。
從開始菜單中找到tomcat選項(xiàng),一般打開順序是:開始->程序->Apache Tomcat 4.1,選擇"Start Tomcat",讓jsp服務(wù)器開始運(yùn)行,此時(shí)會(huì)打開一個(gè)類似Dos的窗口,會(huì)顯示一些相關(guān)的信息。
如果您使用代理上網(wǎng),一定要先撤掉代理,不然您的jsp程序永遠(yuǎn)也得不到執(zhí)行。如果不是代理的,這一步就跳過了。
打開瀏覽器,在地址欄中輸入:http://localhost:8080/,如果看到有老虎(我也不知道是老虎還是貓)的畫面,恭喜您,您成功了一半。
先來享受一下成功的喜悅吧,請(qǐng)輸入下面的代碼:
<html>
<head>
<title>First Page</title>
</head>
<body>
<H3>Today is: h
<%= new java.util.Date() %>
</H3>
</body>
</html>
將該程序保存為:First.jsp,放到Tomcat的ROOT目錄下,然后在瀏覽器的地址欄中輸入:http://localhost:8080/First.jsp,(First.jsp跟我們保存的文件名的大小寫要一致)回車,如果不出意外,應(yīng)該可以看到形如Today is: h Fri Apr 11 08:32:38 CST 2003 的結(jié)果。
注意:ROOT是tomcat的默認(rèn)虛擬目錄,如果要改成自己的虛擬目錄怎么辦呢?請(qǐng)繼續(xù)往下看吧。
要改成自己的虛擬目錄,就要請(qǐng)出server.xml來了,該文件是一個(gè)配置文件,在Tomcat\conf目錄下,使用任何文本編輯軟件都能打開它,我們先找到下面一句:
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000"
useURIValidationHack="false" disableUploadTimeout="true" />
這里的port="8080"就是端口,我們完全可以用別的端口來代替,但不能是被系統(tǒng)占用的端口(0--1023),這里簡(jiǎn)單提一下。
下面我們?cè)偻抡?,?huì)發(fā)現(xiàn)以下的語(yǔ)句:
</Context>
</Host>
我們就應(yīng)該找到這兩個(gè)語(yǔ)句,如果不懂E文,您就認(rèn)定這兩個(gè)語(yǔ)句好了。然后我們將該語(yǔ)句更改如下:
</Context>
<Context path="/myjsp" debug="0" docBase="e:/myjsp" reloadable="true">
</Context>
</Host>
這里的path="/myjsp"就是我們就配置的虛擬目錄了,以后在地址欄中輸入http://localhost:8080/myjsp即可。而docBase="e:/myjsp" 則是機(jī)器本地路徑,他們通過這個(gè)語(yǔ)句形成一個(gè)映射關(guān)系,其它照抄。
將上面的First.jsp文件放到e:/myjsp目錄下,輸入http://localhost:8080/myjsp/First.jsp,是不是有一種喜上眉梢的感覺?
在論壇里我見得最多的就是很多人不知道javaBean文件放到哪里,老實(shí)說開始我也不知道,更令人不解的是,十個(gè)人有九種不同的說法,這更讓我們茫然。其實(shí)這問題也不是我們想像的那么復(fù)雜,我們以一個(gè)例子說明:
先建立一個(gè)java程序,代碼如下:
package hall;
public class SimpleBean {
private String message = "No message specified";
public String getMessage() {
return(message);
}
public void setMessage(String message) {
this.message = message;
}
}
保存為SimpleBean.java,編譯后會(huì)生成一個(gè)包,其實(shí)就相當(dāng)于一個(gè)目錄,也就是SimpleBean.class會(huì)存放在hall目錄中,暫且保存起來,將來備用。
再輸入以下代碼:
<HTML>
<HEAD>
<TITLE>Reusing JavaBeans in JSP</TITLE>
</HEAD>
<BODY>
<CENTER>
<TABLE BORDER=5>
<TR><TH CLASS="TITLE">
Reusing JavaBeans in JSP</TABLE>
</CENTER>
<P>
<jsp:useBean id="test" class="hall.SimpleBean" />
<jsp:setProperty name="test" property="message" value="Hello WWW" />
<H1>Message: <I>
<jsp:getProperty name="test" property="message" />
</I></H1>
</BODY>
保存在我們剛才建立的虛擬目錄e:/myjsp下面,并命名為:BeanTest.jsp。
現(xiàn)在我們應(yīng)該將hall(包)目錄放在哪兒呢?別急,我們先在e:/myjsp下建立一個(gè)文件夾WEB-INF,然后再在WEB-INF下建立一個(gè)classes文件夾,最后將hall目錄放到classes下,當(dāng)然,hall下的字節(jié)碼文件SimpleBean.class也一并要移過來,而SimpleBean.java就和BeanTest.jsp放到同一目錄吧(可以不需要放的,自己試試)。
好了,大功告成了,重新啟動(dòng)機(jī)器(如果您試了好多次都不行,這一步一定要做),在瀏覽器中輸入:http://localhost:8080/myjsp/BeanTest.jsp,您看到了什么?呵,別告訴我您什么都沒看到,那肯定是您設(shè)置的問題了。
好了,文章寫完了,我也只是一只菜鳥,所以有寫的不準(zhǔn)備的地方請(qǐng)多多指教。祝您jsp之旅一路順風(fēng)?。?!
Java學(xué)習(xí) - 技術(shù)文章中心
初學(xué)者問的諸如:《怎樣配置環(huán)境變量》《怎樣運(yùn)行Servlet》???這樣的問題太多了,現(xiàn)在我寫一個(gè)初學(xué)者入門必讀,以便對(duì)初學(xué)者有指導(dǎo)作用!
首先是下載工具:
我建議初學(xué)者用Editplus+JDK,我覺得如果用例如JB,Eclipse,JCreator,雖然剛開始的時(shí)候比較方便,但是確使初學(xué)者門不知道怎樣配置環(huán)境變量,
從而難以達(dá)到知其然,知其所以然的地步
可以通過如下地址下載:
Editplus(最新版本是v2.11):http://count.skycn.com/softdown.php?id=3641&url=http://sc-http.skycn.net/down/epp211a_cn.exe(要照注冊(cè)碼就自己找吧,網(wǎng)上很多的)
JDK(最新版本是Java2sdk1_4_2):http://count.skycn.com/softdown.php?id=3116&url=http://sc-http.skycn.net/down/j2sdk-1_4_2-windows-i586.exe(這是For Windows)
然后就是安裝JDK,我是把它裝到從c:\JDK目錄下面:
然后就是CLASSPATH的問題了:
正如操作系統(tǒng)利用PATH來搜索可執(zhí)行程序一樣,Java運(yùn)行環(huán)境也會(huì)遍歷CLASSPATH來查找類,即便是HelloWorld這樣簡(jiǎn)單的程序,JVM也會(huì)遍歷
CLASSPATH定義的每一個(gè)路徑,直到找到相應(yīng)的文件為止。
相信大家用的系統(tǒng)不是2k就是XP,然后就應(yīng)當(dāng)如下設(shè)置Path:
我的電腦->屬性->高級(jí)->環(huán)境變量
然后在環(huán)境變量的Path后面追加: C:\JDK\bin;.;C:\JDK\lib
也可以這樣配置:C:\JDK\bin;.;C:\JDK\lib\dt.jar;C:\JDK\lib\tools.jar
★記住:環(huán)境變量中的 . 切記不能少,它表示當(dāng)前路徑,如果少掉出現(xiàn)的錯(cuò)誤等會(huì)就說!
dt.jar是關(guān)于運(yùn)行環(huán)境的類庫(kù),tools.jar是關(guān)于一些工具的類庫(kù)
如果沒有配置:C:\JDK\bin,則會(huì)出現(xiàn) " javac′ 不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件。"這樣的錯(cuò)誤。
然后下面就該寫程序了:
首先是(HelloWorld.java),打開Editplus,新建一個(gè)Java文件,請(qǐng)照著如下輸入,要一字不漏,并且分清大小寫:
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,World!");
}
}
然后把這個(gè)文件保存(ctrl + s)到HelloWorld.java,記住大小寫一定要分清,是HelloWorld.java不是helloworld.java或者其它的
下面就該運(yùn)行了,開始->運(yùn)行->cmd
在控制臺(tái)中把目錄切換到當(dāng)前目錄:
javac HelloWorld.java
java HelloWorld
你就會(huì)在控制臺(tái)上看見輸出的Hello,World!(沒出來?我把電腦吃了:))
javac是編譯命令,它把HelloWorld.java編譯成HelloWorld.class
java就是解釋命令,JVM把HelloWorld.class解釋執(zhí)行.
在這個(gè)時(shí)候:
1。如果出現(xiàn)Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
那就是你在環(huán)境變量中沒有加上那個(gè).(dot)
2。如果出現(xiàn)Exception in thread "main" java.lang.NoSuchMethodError: main
或者HelloWorld.java:1: Public class helloworld must be defined in a file called
"HelloWorld.java".
那就是你沒有分清大小寫的寫入這個(gè)HelloWorld,或者保存得時(shí)候沒有保存為HelloWorld.java
這個(gè)名字一定要跟public class的名字一樣
對(duì)于環(huán)境變量的問題就說到這里,下面我先所說怎么在Editplus里面編譯和運(yùn)行,在Tools->參數(shù)設(shè)置->配置用戶工具
1.添加工具(添加應(yīng)用程序)
菜單文字:Compile Java Program
程序:C:\JDK\bin\javac.exe
參數(shù):文件名稱
初始目錄:文件目錄
2.添加工具(添加應(yīng)用程序)
菜單文字:Run Java Program
程序:C:\JDK\bin\java.exe
參數(shù):文件名稱(不含擴(kuò)展名)
初始目錄:文件目錄
工具組名稱可以隨便添,比如Debug Java Program
然后在Tools的下拉菜單中,你就會(huì)看見Compile Java Program以及Run Java Program這兩個(gè)選項(xiàng),以后你就可以利用ctrl + 1編譯和ctrl +2運(yùn)行程序了

下面就討論Servlet的運(yùn)行:
首先要運(yùn)行Servlet,則需要JSP/Servlet container,我建議初學(xué)者用Tomcat
Tomcat(最新版本5.0):http://cvs.apache.org/builds/jakarta-tomcat-5/nightly/jakarta-tomcat-5-bin-20030725.zip
然后把這個(gè)壓縮包解壓到:
C:\Tomcat
然后再配置環(huán)境變量:
添加三個(gè)系統(tǒng)變量:
JAVA_HOME: C:\JDK
TOMCAT_HOME: C:\Tomcat
CLASSPATH: %JAVA_HOME%\lib;%TOMCAT_HOME%\lib
Tomcat的環(huán)境變量就配置完畢了,下面檢驗(yàn)Tomcat是否能夠運(yùn)行:
在控制臺(tái)中轉(zhuǎn)到C:\Tomcat\bin這個(gè)目錄,運(yùn)行startup,然后回出現(xiàn)一個(gè)窗口,連跳一大串東西,最后表示Server已經(jīng)運(yùn)行
在瀏覽器中輸入http://localhost:8080/,出現(xiàn)歡迎界面,則表示Tomcat沒問題了
然后和上面一樣,寫入你的第一個(gè)Servlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><head><title>");
out.println("This is my first Servlet");
out.println("</title></head><body>");
out.println("<h1>Hello,World!</h1>");
out.println("</body></html>");

}
}
然后照樣用javac HelloWorld.java來編譯這個(gè)文件,如果出現(xiàn)無法import javax.servlet.*
那么就是應(yīng)該把C:\Tomcat\common\lib里面的servlet.jar(根據(jù)實(shí)際來看)文件拷貝到C:\JDK\jre\lib\ext中,再次編譯,就沒有問題了!
然后在Tomcat目錄里面的C:\Tomcat\webapps\ROOT里面按如下的文件結(jié)構(gòu):
ROOT\index.html
ROOT\welcom.jsp
ROOT\WEB-INF\lib\MyServlet.jar(如果你的servlet的.class打成了.jar文件,則放在lib下面)
ROOT\WEB-INF\classes\HelloWorld.class(把上面生成的HelloWorld.class文件放在這個(gè)里面)
然后在瀏覽器中輸入http://localhost:8080/servlet/HelloWorld,于是Server眾望所歸的報(bào)錯(cuò)了:Error 404--Not Found
怎么回事呢?
Servlet必須使用C:\Tomcat\webapps\ROOT\WEB-INF這個(gè)目錄下面的web.xml文件進(jìn)行注冊(cè),用EP打開這個(gè)web.xml文件,
在里面加入
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/helloworld</url-pattern>
</servlet-mapping>
這樣的結(jié)構(gòu)
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
表示指定包含的servlet類.
而以下的結(jié)構(gòu)
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>
表示指定HelloServlet應(yīng)當(dāng)映射到哪一種URL模式。
在修改web.xml完畢過后,重新啟動(dòng)Server,然后再輸入http://localhost:8080/servlet/HelloWorld
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
如何進(jìn)行j2sdk和tomcat的安裝及配置
寶寶 javaweb 學(xué)習(xí)總結(jié)
tomcat web.xml配置
Tomcat 配置集錦
史上最全web.xml配置文件元素詳解
J2EE開發(fā)環(huán)境搭建(寶貝啊)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服