国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JSP > 正文

編程者入門:談Servlet/JSP的配置詳解

2024-09-05 00:20:22
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
初學(xué)者經(jīng)常會(huì)問的諸如:怎樣配置環(huán)境變量?怎樣運(yùn)行servlet呢?這樣的問題出現(xiàn)的很多了,現(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 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目錄下面。

然后設(shè)置classpath的問題了:

正如操作系統(tǒng)利用path來(lái)搜索可執(zhí)行程序一樣,java運(yùn)行環(huán)境也會(huì)遍歷classpath來(lái)查找類,即便是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)前路徑,如果少了就會(huì)出現(xiàn)錯(cuò)誤。

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ò)誤。

下面我們就寫一個(gè)示例程序:

打開editplus,新建一個(gè)java文件,請(qǐng)照著如下輸入,要一字不漏,并且分清大小寫:

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


然后把這個(gè)文件保存(ctrl + s)到helloworld.java,java是分大小寫的,所以大小寫一定要分清,是helloworld.java不是helloworld.java或者其他。

運(yùn)行:開始->運(yùn)行->cmd

在控制臺(tái)中把目錄切換到當(dāng)前目錄:

javac helloworld.javajava 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

或者h(yuǎn)elloworld.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)行環(huá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:/jdktomcat_home: c:/tomcatclasspath: %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)throwsservletexception,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來(lái)編譯這個(gè)文件,如果出現(xiàn)無(wú)法import javax.servlet.*

那么就是應(yīng)該把c:/tomcat/common/lib里面的servlet.jar文件拷貝到c:/jdk/jre/lib/ext中,再次編譯,就沒有問題了。

然后在tomcat目錄里面的c:/tomcat/webapps/root里面按如下的文件結(jié)構(gòu):

root/index.htmlroot/welcom.jsproot/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,那么偌大一個(gè)hello,world!等著你呢。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 原阳县| 南城县| 竹北市| 巴彦县| 博湖县| 旅游| 江津市| 深圳市| 澜沧| 遂川县| 吴川市| 彭泽县| 衢州市| 唐河县| 防城港市| 象山县| 建始县| 苍溪县| 蛟河市| 玛沁县| 绥宁县| 泗洪县| 正宁县| 安丘市| 墨竹工卡县| 景德镇市| 滨海县| 翁源县| 凤冈县| 高阳县| 昌图县| 彭州市| 鹤庆县| 邵阳市| 新郑市| 习水县| 轮台县| 敦煌市| 方山县| 治多县| 叙永县|