a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > JSP > 正文

Tomcat+JSP經(jīng)典配置實例

2024-09-05 00:20:07
字體:
供稿:網(wǎng)友
  經(jīng)常看到j(luò)sp的初學者問tomcat下如何配置jsp、servlet和bean的問題,于是總結(jié)了一下如何tomcat下配置jsp、servlet和ben,希望對那些初學者有所幫助。

一、開發(fā)環(huán)境配置

第一步:下載j2sdk和tomcat:到sun官方站(http://java.sun.com/j2se/1.5.0/download.jsp)下載j2sdk,注意下載版本為windows offline installation的sdk,同時最好下載j2se 1.5.0 documentation,然后到tomcat官方站點(http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi)下載tomcat(下載最新5.5.9版本的tomcat);

第二步:安裝和配置你的j2sdk和tomcat:執(zhí)行j2sdk和tomcat的安裝程序,然后按默認設(shè)置進行安裝即可。

1.安裝j2sdk以后,需要配置一下環(huán)境變量,在我的電腦->屬性->高級->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量(假定你的j2sdk安裝在c:/j2sdk1.5.0):

java_home=c:/j2sdk1.5.0
classpath=.;%java_home%/lib/dt.jar;%java_home%/lib/tools.jar;(.;一定不能少,因為它代表當前路徑)
path=%java_home%/bin

接著可以寫一個簡單的java程序來測試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

此時如果看到打印出來this is a test program.的話說明安裝成功了,如果沒有打印出這句話,你需要仔細檢查一下你的配置情況。

2.安裝tomcat后,在我的電腦->屬性->高級->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量(假定你的tomcat安裝在c:/tomcat):

catalina_home=c:/tomcat
catalina_base=c:/tomcat

然后修改環(huán)境變量中的classpath,把tomat安裝目錄下的common/lib下的(可以根據(jù)實際追加)servlet.jar追加到classpath中去,修改后的classpath如下:

classpath=.;%java_home%/lib/dt.jar;%java_home%/lib/tools.jar;%catalina_home%/common/lib/servlet.jar;

接著可以啟動tomcat,在ie中訪問http://localhost:8080,如果看到tomcat的歡迎頁面的話說明安裝成功了。

第三步:建立自己的jsp app目錄

1.到tomcat的安裝目錄的webapps目錄,可以看到root,examples, tomcat-docs之類tomcat自帶的的目錄;
2.在webapps目錄下新建一個目錄,起名叫myapp;
3.myapp下新建一個目錄web-inf,注意,目錄名稱是區(qū)分大小寫的;
4.web-inf下新建一個文件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下新建一個測試的jsp頁面,文件名為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 看到當前時間的話說明就成功了。

第四步:建立自己的servlet:

1.用你最熟悉的編輯器(建議使用有語法檢查的java ide)新建一個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下會產(chǎn)生一個編譯后的servlet文件:test.class

3 .將結(jié)構(gòu)test/test.class剪切到%catalina_home%/webapps/myapp/web-inf/classes下,也就是剪切那個test目錄到classes目錄下,如果classes目錄不存在,就新建一個。 現(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 .好了,重啟動tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/test 如果看到輸出this is a servlet test.就說明編寫的servlet成功了。

注意:修改了web.xml以及新加了class,都要重啟tomcat

第四步:建立自己的bean:

1.用你最熟悉的編輯器(建議使用有語法檢查的java ide)新建一個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下會產(chǎn)生一個編譯后的bean文件:testbean.class

3 .將testbean.class文件剪切到 %catalina_home%/webapps/myapp/web-inf/classes/test下,

4 .新建一個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,啟動瀏覽器,輸入http://localhost:8080/myapp/testbean.jsp 如果看到輸出java bean name is: this is a test java bean.就說明編寫的bean成功了。

這樣就完成了整個tomcat下的jsp、servlet和javabean的配置。接下來需要做的事情就是多看書、多讀別人的好代碼,自己多動手寫代碼以增強自己在這方面開發(fā)的能力了。

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

給你一個簡單的配置::::

jsp環(huán)境配置心得

首先要說的是,使用jdk+tomcat完全可以配置我們的jsp服務(wù)器,不再需要其實任何東東,有很多文章介紹了apache,其實根本用不著,一般的學習調(diào)試tomcat完全可以勝任了。

安裝jdk后,tomcat在安裝之前會自動找到j(luò)dk的安裝路徑,一路點擊"下一步",經(jīng)過一段時間的文件復制,最后"close",完成comcat的安裝。

您最好去下載一個版本較高的tomcat,比如4.1以上的,因為它不需要設(shè)置太多的系統(tǒng)變量,右擊"我的電腦",選擇"屬性"->"高級"->"環(huán)境變量"->"系統(tǒng)變量",新建一個tomcat_home,值設(shè)置成你的tomcat所在的路徑,比如:d:/program files/apache group/tomcat 5.5,配置完成。

從開始菜單中找到tomcat選項,一般打開順序是:開始->程序->apache tomcat 5.5,選擇"start tomcat",讓jsp服務(wù)器開始運行,此時會打開一個類似dos的窗口,會顯示一些相關(guān)的信息。

如果您使用代理上網(wǎng),一定要先撤掉代理,不然您的jsp程序永遠也得不到執(zhí)行。如果不是代理的,這一步就跳過了。

打開瀏覽器,在地址欄中輸入:http://localhost:8080,如果看到有老虎(我也不知道是老虎還是貓)的畫面,恭喜您,您成功了一半。

先來享受一下成功的喜悅吧,請輸入下面的代碼:

<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的默認虛擬目錄,如果要改成自己的虛擬目錄怎么辦呢?請繼續(xù)往下看吧。

要改成自己的虛擬目錄,就要請出server.xml來了,該文件是一個配置文件,在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),這里簡單提一下。

下面我們再往下找,會發(fā)現(xiàn)以下的語句:

</context>
</host>

我們就應(yīng)該找到這兩個語句,如果不懂e文,您就認定這兩個語句好了。然后我們將該語句更改如下:

</context>
<context path="/myjsp" debug="0" docbase="e:/myjsp" reloadable="true">
</context>
</host>

這里的path="/myjsp"就是我們就配置的虛擬目錄了,以后在地址欄中輸入http://localhost:8080/myjsp即可。而docbase="e:/myjsp" 則是機器本地路徑,他們通過這個語句形成一個映射關(guān)系,其它照抄。

將上面的first.jsp文件放到e:/myjsp目錄下,輸入http://localhost:8080/myjsp/first.jsp,是不是有一種喜上眉梢的感覺?

在論壇里我見得最多的就是很多人不知道javabean文件放到哪里,老實說開始我也不知道,更令人不解的是,十個人有九種不同的說法,這更讓我們茫然。其實這問題也不是我們想像的那么復雜,我們以一個例子說明:

先建立一個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,編譯后會生成一個包,其實就相當于一個目錄,也就是simplebean.class會存放在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下建立一個文件夾web-inf,然后再在web-inf下建立一個classes文件夾,最后將hall目錄放到classes下,當然,hall下的字節(jié)碼文件simplebean.class也一并要移過來,而simplebean.java就和beantest.jsp放到同一目錄吧(可以不需要放的,自己試試)。

重新啟動機器(如果您試了好多次都不行,這一步一定要做),在瀏覽器中輸入:http://localhost:8080/myjsp/beantest.jsp,您看到了什么?呵,別告訴我您什么都沒看到,那肯定是您設(shè)置的問題了。

java學習 - 技術(shù)文章中心

初學者問的諸如:《怎樣配置環(huán)境變量》《怎樣運行servlet》啊?這樣的問題太多了,現(xiàn)在我寫一個初學者入門必讀,以便對初學者有指導作用!

首先是下載工具:

我建議初學者用editplus+jdk,我覺得如果用例如jb,eclipse,jcreator,雖然剛開始的時候比較方便,但是確使初學者門不知道怎樣配置環(huán)境變量,

從而難以達到知其然,知其所以然的地步

可以通過如下地址下載:

editplus(最新版本是v2.11):http://count.skycn.com/softdown.php?id=3641&url=http://sc-http.skycn.net/down/epp211a_cn.exe(要照注冊碼就自己找吧,網(wǎng)上很多的)

jdk(最新版本是java2sdk1_5_0):http://192.18.97.54/ecom/ecomticketservlet/begin30aa3b63e5c2f61c8c26f84b78970a98/-2147483648/926882595/1/627578/627410/926882595/2ts+/westcoastfsend/jdk-1.5.0_04-oth-jpr/jdk-1.5.0_04-oth-jpr:3/jdk-1_5_0_04-windows-i586-p.exe(這是for windows)

然后就是安裝jdk,我是把它裝到從c:/jdk目錄下面:

然后就是classpath的問題了:

正如操作系統(tǒng)利用path來搜索可執(zhí)行程序一樣,java運行環(huán)境也會遍歷classpath來查找類,即便是helloworld這樣簡單的程序,jvm也會遍歷

classpath定義的每一個路徑,直到找到相應(yīng)的文件為止。

相信大家用的系統(tǒng)不是2k就是xp,然后就應(yīng)當如下設(shè)置path:

我的電腦->屬性->高級->環(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)境變量中的 . 切記不能少,它表示當前路徑,如果少掉出現(xiàn)的錯誤等會就說!

dt.jar是關(guān)于運行環(huán)境的類庫,tools.jar是關(guān)于一些工具的類庫

如果沒有配置:c:/jdk/bin,則會出現(xiàn) " javac′ 不是內(nèi)部或外部命令,也不是可運行的程序或批處理文件。"這樣的錯誤。

然后下面就該寫程序了:

首先是(helloworld.java),打開editplus,新建一個java文件,請照著如下輸入,要一字不漏,并且分清大小寫:

public class helloworld{
public static void main(string[] args){
system.out.println("hello,world!");
}
}

然后把這個文件保存(ctrl + s)到helloworld.java,記住大小寫一定要分清,是helloworld.java不是helloworld.java或者其它的

下面就該運行了,開始->運行->cmd

在控制臺中把目錄切換到當前目錄:

javac helloworld.java
java helloworld

你就會在控制臺上看見輸出的hello,world!(沒出來?我把電腦吃了:))

javac是編譯命令,它把helloworld.java編譯成helloworld.class

java就是解釋命令,jvm把helloworld.class解釋執(zhí)行.

在這個時候:

1。如果出現(xiàn)exception in thread "main" java.lang.noclassdeffounderror: helloworld

那就是你在環(huán)境變量中沒有加上那個.(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".

那就是你沒有分清大小寫的寫入這個helloworld,或者保存得時候沒有保存為helloworld.java

這個名字一定要跟public class的名字一樣

對于環(huán)境變量的問題就說到這里,下面我先所說怎么在editplus里面編譯和運行,在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ù):文件名稱(不含擴展名)

初始目錄:文件目錄

工具組名稱可以隨便添,比如debug java program

然后在tools的下拉菜單中,你就會看見compile java program以及run java program這兩個選項,以后你就可以利用ctrl + 1編譯和ctrl +2運行程序了

下面就討論servlet的運行:

首先要運行servlet,則需要jsp/servlet container,我建議初學者用tomcat

tomcat(最新版本5.5):http://apache.justdn.org/jakarta/tomcat-5/v5.5.9/bin/jakarta-tomcat-5.5.9.exe然后把這個壓縮包解壓到:

c:/tomcat

然后再配置環(huán)境變量:

添加三個系統(tǒng)變量:

java_home: c:/jdk
tomcat_home: c:/tomcat
classpath: %java_home%/lib;%tomcat_home%/lib

tomcat的環(huán)境變量就配置完畢了,下面檢驗tomcat是否能夠運行:

在控制臺中轉(zhuǎn)到c:/tomcat/bin這個目錄,運行startup,然后回出現(xiàn)一個窗口,連跳一大串東西,最后表示server已經(jīng)運行

在瀏覽器中輸入http://localhost:8080,出現(xiàn)歡迎界面,則表示tomcat沒問題了

然后和上面一樣,寫入你的第一個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來編譯這個文件,如果出現(xiàn)無法import javax.servlet.*

那么就是應(yīng)該把c:/tomcat/common/lib里面的servlet.jar(根據(jù)實際來看)文件拷貝到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文件放在這個里面)

然后在瀏覽器中輸入http://localhost:8080/servlet/helloworld,于是server眾望所歸的報錯了:error 404--not found

怎么回事呢?

servlet必須使用c:/tomcat/webapps/root/web-inf這個目錄下面的web.xml文件進行注冊,用ep打開這個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)當映射到哪一種url模式。

在修改web.xml完畢過后,重新啟動server,然后再輸入http://localhost:8080/servlet/helloworld,那么偌大一個hello,world!等著你呢。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 亚洲天堂av2018 | 午夜视频在线观看网站 | 国产一区二区av | 99精品电影 | 少妇久久久 | 午夜欧美 | 欧美色综合 | 日韩一区二区三区在线观看 | 黄色小视频在线观看 | 国产日韩精品一区二区 | 日韩精品在线免费观看视频 | 日韩欧美高清视频 | 日韩一| 成人精品在线 | 精品视频一区二区三区 | 欧洲亚洲一区二区三区 | 日本视频免费看 | 久久国产成人 | 久久久片| 亚洲免费婷婷 | 91视频免费观看 | 中文字幕一区二区三区四区五区 | 欧美成人a∨高清免费观看 99精品欧美一区二区三区 | www.日韩.com| 欧美精品一区二区三区在线四季 | 欧美精品久久久久久久亚洲调教 | 国产一级淫片91aaa | 伊人网在线视频 | 日本中文字幕在线看 | 欧美高清成人 | 国产精品久久久久久久娇妻 | 国产精品久久久久久久久久久久 | www在线看片 | 伊人小视频 | 天堂中文资源在线 | 成人免费网站视频 | 精品一区二区三区免费看 | 久久精品国产免费 | 中文字幕在线观看 | 成人性大片免费观看网站 | 国产婷婷精品 |