濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Java Servlet及Cookie的使用

Java Servlet及Cookie的使用

熱門(mén)標(biāo)簽:四川電信外呼系統(tǒng)靠譜嗎 外呼系統(tǒng)啥意思 地圖標(biāo)注創(chuàng)業(yè)項(xiàng)目入駐 電銷(xiāo)外呼系統(tǒng) 排行榜 山東智能云外呼管理系統(tǒng) 長(zhǎng)春回?fù)芡夂粝到y(tǒng)廠家 地圖標(biāo)注制作道路 珠海銷(xiāo)售外呼系統(tǒng)運(yùn)營(yíng)商 廣州三五防封電銷(xiāo)卡
    本文介紹了Java Servlet編程所需的軟件及環(huán)境配置。只要你有一臺(tái)安裝Windows 95/98了的PC機(jī),便可以按照本文的步驟開(kāi)發(fā)Servlet程序了。本文同時(shí)給出了通過(guò)Java Servlet向用戶(hù)的硬盤(pán)寫(xiě)入和讀取Cookie的方法及例程。通過(guò)它可以實(shí)現(xiàn)網(wǎng)上常見(jiàn)的個(gè)性化網(wǎng)頁(yè)、網(wǎng)上購(gòu)物籃、密碼驗(yàn)證等。


   Java Servlet是運(yùn)行于Web服務(wù)器上的Java代碼,它可以接受用戶(hù)請(qǐng)求,進(jìn)行相應(yīng)的處理,并向用戶(hù)提供反饋。其作用類(lèi)似于CGI程序,可以實(shí)現(xiàn)網(wǎng)頁(yè)中很多交互式效果,但比CGI程序效率更高。Cookies是用戶(hù)訪問(wèn)Web服務(wù)器時(shí)由Web服務(wù)器寫(xiě)入用戶(hù)計(jì)算機(jī)特定目錄的一小段信息, Java Servlet中提供了Cookie類(lèi),可以對(duì)Cookie進(jìn)行操作。在特定時(shí)候?qū)ookie寫(xiě)入用戶(hù)計(jì)算機(jī),在需要時(shí)可再取出來(lái)使用。

   1.軟件下載

   PC機(jī),安裝Windows 95/98,具有IP地址(如果沒(méi)有可以隨便配一個(gè))。開(kāi)發(fā)軟件有兩個(gè):JDK1.3和JSWDK1.0.1。

   到http://java.sun.com,點(diǎn)擊"Products APIs”鏈接,可以點(diǎn)擊下載"JavaTM 2 SDK, Standard Edition, v 1.3”。下載后的文件安裝到你的計(jì)算機(jī)上。

   JSWDK1.0.1只有763,414 bytes,可從在http://java.sun.com/products/jsp/download.html下載。下載下來(lái)的jswdk1_0_1-win.zip用Winzip軟件解壓縮至某個(gè)目錄,如:d:app,該目錄下將自動(dòng)建立一個(gè)子目錄:jswdk-1.0.1。這時(shí)JSWDK 1.0.1便已經(jīng)安裝在d:appjswdk-1.0.1目錄下了。

   2.啟動(dòng)JSWDK 1.0.1

   打開(kāi)一個(gè)DOS窗口,如下圖點(diǎn)擊窗口左上角DOS圖標(biāo),選擇屬性菜單,在接著出現(xiàn)的窗口中點(diǎn)擊"內(nèi)存”,在"初始環(huán)境”后的下拉菜單中將"自動(dòng)”改為2816,點(diǎn)擊"exit”按鈕退出窗口,再重新進(jìn)入DOS窗口。該設(shè)置只需要做一次。

   在該DOS窗口中運(yùn)行如下DOS命令設(shè)置好環(huán)境變量:

   set CLASSPATH=c:jdk1.3bin;.

   set path=c:jdk1.3bin;c:windows;c:windowscommand

   如果你的JDK 1.3和Windows操作系統(tǒng)安裝在其他目錄,DOS命令中的目錄名稱(chēng)應(yīng)作相應(yīng)修改。

   然后在該DOS窗口中用CD命令進(jìn)入JSWDK 1.0.1安裝目錄(如d:appjswdk-1.0.1)運(yùn)行startserver.bat即可。

   注意:

   對(duì)于JDK1.3,即本文所述的環(huán)境,需修改startserver.bat,將源文件中的

   start java com.sun.web.shell.Startup %1 %2 %3 %4 %5 %6 %7 %8 %9

   rem java com.sun.web.shell.Startup %1 %2 %3 %4 %5 %6 %7 %8 %9

   改為:

   rem start java com.sun.web.shell.Startup %1 %2 %3 %4 %5 %6 %7 %8 %9

   java com.sun.web.shell.Startup %1 %2 %3 %4 %5 %6 %7 %8 %9

   若使用的是老版本的JDK1.2,不需要修改startserver.bat,執(zhí)行后會(huì)出現(xiàn)另一個(gè)DOS窗口。

   運(yùn)行后顯示一串字符串,最后顯示endpoint created: localhost/127.0.0.1:8080。表明正常啟動(dòng)完畢。但它不支持?jǐn)?shù)據(jù)庫(kù)中文字段和中文值的查詢(xún)。

   打開(kāi)一個(gè)瀏覽器,輸入:http://你的機(jī)器IP地址:8080,這時(shí)瀏覽器中顯示出缺省的頁(yè)面,在該頁(yè)面中可查看Servlet例子。
   Java Servlet中提供了Cookie類(lèi),其構(gòu)造器有兩個(gè)參數(shù),分別代表Cookie的名字和值。Cookie類(lèi)中提供了各種方法設(shè)置Cookie的屬性,如通過(guò)setMaxAge( )方法可以設(shè)置Cookie的生存時(shí)間。若生存時(shí)間為負(fù)值,代表瀏覽器關(guān)閉Cookie即消失。生存時(shí)間為0,代表刪除Cookie,生存時(shí)間為正數(shù),代表Cookie存在多少秒。

   同時(shí)Servlet中的HttpServletResponse類(lèi)提供了addCookie()方法可以將創(chuàng)建好的Cookie寫(xiě)入用戶(hù)計(jì)算機(jī)。

   如下面的代碼可向用戶(hù)的計(jì)算機(jī)寫(xiě)入兩個(gè)Cookie,一個(gè)名稱(chēng)為my1,值為hi1,另一個(gè)名稱(chēng)為my2,值為hi2

   import javax.servlet.*;

   import javax.servlet.http.*;

   import java.io.*;

   public class xx extends HttpServlet

   {

   public void service(HttpServletRequest rq, HttpServletResponse rp)

   throws ServletException,IOException

   { Cookie c;

   c=new Cookie("my1","hi1");

   c.setMaxAge(100*60);

   rp.addCookie(c);

   c=new Cookie("my2","hi2");

   c.setMaxAge(-1);

   rp.addCookie(c);

   }

   }

   該程序中,使用Cookie c=new Cookie("my1","hi1");創(chuàng)建了一個(gè)Cookie,它實(shí)際上是兩個(gè)配對(duì)的字符串。第一個(gè)字符串代表Cookie的名字,第二個(gè)字符串代表Cookie的值。然后使用rp.addCookie(c);將其寫(xiě)入用戶(hù)的計(jì)算機(jī)中。Cookie my1生存時(shí)間為100*60秒即100分鐘,而my2則在關(guān)閉瀏覽器時(shí)自動(dòng)消失。

   在前面的DOS窗口中輸入命令:

   set path=c:jdk1.3bin;c:windows;c:windowscommand

   set CLASSPATH=c:jdk1.3bin;d:appjswdk-1.0.1libservlet.jar

   以設(shè)置好環(huán)境變量。

   javac xx.java編譯Java程序

   copy *.class D:appjswdk-1.0.1examplesWEB-INFservlets

   將編譯后的程序拷貝到Java Servlet運(yùn)行目錄。

   * 若使用老版本的JDK1.2,為了運(yùn)行該Java Servlet程序,還需要修改一個(gè)文件:

   D:appjswdk-1.0.1examplesWEB-INFservlets.properties

   用文本編輯器打開(kāi)該文件,在其最后加上幾行:

   xx.code=xx

   xx.initparams=foo

   在瀏覽器中輸入http://機(jī)器的IP地址:8080/examples/servlet/xx 便可以向用戶(hù)的計(jì)算機(jī)寫(xiě)入Cookie了。

通過(guò)HttpServletRequest類(lèi)的getCookies( )方法可以從相應(yīng)用戶(hù)讀取Cookie列表,放在Cookie類(lèi)型的數(shù)組中。通過(guò)數(shù)組中各個(gè)Cookie的getName()和getValue()方法可以獲取各個(gè)Cookie的名稱(chēng)和值。

   下面的例子可以打印出由Servlet所在服務(wù)器寫(xiě)入用戶(hù)機(jī)器上的Cookie名稱(chēng)和值的列表。若有名稱(chēng)為my1的Cookie,則將其值加上一個(gè)字符x。它類(lèi)似一個(gè)計(jì)數(shù)器,可以簡(jiǎn)單地統(tǒng)計(jì)在Cookie生存期間該用戶(hù)的訪問(wèn)辭書(shū)。

   import javax.servlet.*;

   import javax.servlet.http.*;

   import java.io.*;

   public class yy extends HttpServlet

   { Cookie x[];

   public void service(HttpServletRequest rq, HttpServletResponse rp)

   throws ServletException,IOException

   { int have=0;

   Cookie c;  
您可能感興趣的文章:
  • servlet Cookie使用方法詳解(六)
  • servlet之cookie簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
  • java中Servlet Cookie取不到值原因解決辦法
  • 全面了解servlet中cookie的使用方法
  • servlet之session簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
  • servlet之session工作原理簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
  • servlet中session簡(jiǎn)介和使用例子
  • 淺談Servlet的Cookie和Session機(jī)制

標(biāo)簽:保定 紹興 吳忠 廣元 玉樹(shù) 肇慶 北海 潮州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Java Servlet及Cookie的使用》,本文關(guān)鍵詞  Java,Servlet,及,Cookie,的,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Java Servlet及Cookie的使用》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Java Servlet及Cookie的使用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    揭东县| 进贤县| 凤台县| 昌平区| 嘉峪关市| 天气| 上栗县| 堆龙德庆县| 吴川市| 象山县| 富锦市| 盐边县| 乾安县| 嘉义县| 锦屏县| 手机| 灌南县| 苍山县| 达日县| 甘洛县| 平舆县| 阿勒泰市| 平塘县| 岫岩| 渝北区| 突泉县| 拉萨市| 彝良县| 渭南市| 宣城市| 汨罗市| 娱乐| 香港| 邵东县| 原平市| 尤溪县| 噶尔县| 禄丰县| 江城| 区。| 威宁|