Java Web 學習報告(2015年寒假)

1.Tomcat概述:

Tomcat是Apache 軟件基金會中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。是由一些HTML頁面,JAVA類,JSP頁面和一些其他資源構成的。他可以在實現了Servlet規範的各種廠商的Web容器中運行。是一個使得HTML或者JSP頁面能用過瀏覽器運行的容器(環境)。

2. 啓動Tomcat:

如果是安裝包,可以找到安裝的指定路徑中找到bin文件夾,雙擊Tomcat*.exe運行。如果是zip壓縮包,則在bin文件夾下雙擊startup.bat啓動服務。

Tomcat啓動成功後,如圖:

然後在瀏覽器地址欄輸入:http://localhost:8081或者http://localhost:8080,訪問本機的Tomcat首頁。(PS:8080與8081的區別是安裝時的端口設置不同造成的)。

Tomcat下載地址:【http://tomcat.apache.org/】。

輸入無誤後,如下圖:

3. Eclipse與Tomcat的配置:

(1):打開Eclipse -> Window -> Preferences -> Server -> Runtime Enviroments-> Add -> 選擇【Apache Tomcat v7.0】(筆者安裝爲7.0) -> Next -> Browse… ->選擇之前安裝Tomcat的路徑目錄 -> Finish。

(2):指定JSP頁面的編碼格式:

打開Eclipse -> Window -> Preferences -> Web -> JSP Files -> 將Encoding 由默認格式:“ISO-8859-1”在下拉列表中改爲:“ISO 10646/Unicode(UTF-8)”。

4. 簡單網頁的製作(實例):

(1):Eclipse -> File -> new ->Dynamic Web Project -> 在Target runtime下拉列表中選擇【Apache Tomcat v7.0】-> 在Dynamic Web module version 下拉列表中選擇3.0-> 在Configuration下拉列表中選擇已經配置好的Tomcat服務器,筆者爲7.0。

(2):單擊“Next-> 單擊“Next-> Finish。

(3):在資源管理器中,選中當前工程文件夾,然後選擇下拉,選中WebContent 文件夾,單擊鼠標右鍵 -> new -> JSP File -> 在文件名中輸入:index -> Finish。

(4):隨後在工作區出現示例代碼如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html><head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body></body>

</html>

注意,這段代碼不能刪除<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">否則,當程序編寫涉及到中文時,運行會出現亂碼。

(5):然後,在這裏加入如下代碼:

<body>

長春大學,計算機科技八班,17號,XXX

</body>

然後運行。結果如圖:

5. 關於部分JSP語法:

(1):<body>標籤中的<% %>內部包含的是Java代碼。

JSP中包含三個指令標籤:Page ,include,taglib 他們的語法結構相同,定義如下:

<%@ 指令名 屬性1 = ”屬性值1“  屬性2 = ”屬性值2“……%>Eg:<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>

(2):JSP表達式:

<%= 表達式 %>  注意:“<%和 “=”之間不能留有空格,否則會編譯錯誤。

Eg:<%= name %>,<%= sex %>

(3):聲明標識:

<%!聲明變量或方法的代碼%>

(4):註釋:

①:基本HTML註釋:<!-- 註釋內容 -->

②:隱藏註釋:<%-- 註釋內容 --%>

其餘註釋方法與Java代碼一樣。

6.常用JSP動作標識:

⑴.包含動作標識<jsp:include>:

   <jsp:include page = “urlflush = “false true/>

⑵.請求轉發動作標識<jsp:forward>:

<jsp:forward page = "url"/>

注意:使用<jsp:forward>請求轉發被轉向到的目標必須與當前的JSP代碼頁面處於同一上下文環境中,否則,會出現頁面不存在的錯誤。

代碼示例:

<body>

     <jsp:forward page = "login.jsp"/></jsp:forward>

</body>

運行後,會自動跳轉到login頁面。

.子動作標識<jsp:param>:

<jsp:param name = “參數名” value =“參數值”/>

例如,通過<jsp:param>標識爲<jsp:forward>標識指定參數,可以如下實現:

<jsp:forward page = “update.jsp”>

<jsp:param name = “userId” value = “1”/>

</jsp:forward>

.動作標識<jsp:useBean>:

  <jsp:useBean

          id = “變量名”

          scope = “page | request | session | application{

          class = “package.className”  | type = “數據類型” |

          beanName = “package.className”  | type = “數據類型”}/>

 <jsp:setProperty name = “變量名” property = “*”/>

/* 另外在javaBean中,<jsp:getProperty> 是用於從Bean中讀取指定的屬性,並且輸出到頁面中,該Bean必h須有getXXX( )方法

   而相對應的,<jsp:setProperty>則是用於通過調用Bean中的setXXX( )方法將請求的參數一一對應地賦值給由<jsp;javaBean>標識創建的JavaBean中的簡單屬性。*/

7.九大內置對象:

⑴.概述:

可以不加聲明和創建就可以在JSP頁面腳本(Java程序片和Java表達式)中使用的成員變量,一共有9個:request , response , session , application , out , page , confing , exception , pageContext。

:request請求對象:

該對象封裝了用戶提交的信息,通過調用該對象相應的方法可以獲取封裝的信息,即使用該獲取用戶提交的信息。當通過超鏈接的形式發送請求,請求傳遞參數時,可以通過此對象的getParameter( )獲取傳遞的參數值。

作用:壹:獲取請求參數      貳:解決中文亂碼問題

      叄:獲取客戶端數據    肆:應用request對象域

②:response對象:

對客戶的請求做出動態的響應,向客戶端發送數據。它封裝了JSP產生的響應,response對象在JSP頁面內有效。

作用:壹:操作HTTP頭信息      

      貳:設置MIME類型 -> response.setContentType(String type)

      叄:實現頁面重定向

③:out輸出對象:

JSP通過out對象向客戶端瀏覽器輸出信息並且管理頁面中的輸出緩衝區,及時清除緩衝區的殘餘數據。

④:session會話對象:

Session對象是一個JSP內置對象,它在第一個JSP頁面被裝載時自動創建,完成會話期管理。從一個客戶打開瀏覽器並連接到服務器開始,到客戶關閉瀏覽器離開這個服務器結束,被稱爲一個會話。當一個客戶訪問一個服務器時,可能會在這個服務器的幾個頁面之間切換,服務器應當通過某種辦法知道這是一個客戶,就需要Session對象。所以session對象一直在整個會話中存在,無論瀏覽器存在有多少個頁面的跳轉,session對象一般在關閉瀏覽器後纔會消失。

作用:壹:創建與獲取會話      

      貳:移除對話中的數據

      叄:設置會話的有效時間

⑤:application應用對象:

application應用對象用於保存所有應用程序中的公有數據,與session對象相比,其生命週期更長。application應用對象在服務器啓動時自動創建,在服務器停止時銷燬,當application應用對象還未被銷燬時,所有用戶都可以共享它。

作用:壹:操作application應用對象中的數據。      

      貳:配置Web應用的初始化參數。

⑥:page對象:

    page對象代表JSP本身,只在JSP頁面內才合法。

⑦:pageContext對象:

pageContext對象可以獲取JSP頁面的request , response , session , application , exception 等對象。

⑧:confing對象:

confing對象主要用於取得服務器的配置信息。

⑨:exception對象:exception對象用來處理JSP文件執行時所發生的所有錯誤和異常,只有在page指令中設置 isErrorPage 屬性值爲 true 的頁面中才能被使用,在一般的JSP頁面中使用該對象將無法編譯。

exception對象的常用方法:

方法

說明

getMessage( )

返回exception對象的異常信息字符串

getLocalizedmessage( )

返回本地化的異常錯誤

toString( )

返回關於異常的簡單信息描述

fillInStackaTrace( )

重寫異常錯誤的棧執行軌跡

8.JavaBean技術(簡單學習):

⑴.概述:

用戶可以使用JavaBean將功能、處理、值、數據庫訪問和其他任何可以用java代碼創造的對象進行打包,並且其他的開發者可以通過內部的JSP頁面、Servlet、其他JavaBean、applet程序或者應用來使用這些對象。用戶可以認爲JavaBean提供了一種隨時隨地的複製和粘貼的功能,而不用關心任何改變。

JavaBean可分爲兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負責處理事務(如數據運算,操縱數據庫)的JavaBean。JSP通常訪問的是後一種JavaBean。

⑵.作用:

降低HTML與Java代碼之間的耦合度。

⑶.創建方法:

Eclipse -> File -> new -> Dynamic Web Project -> Finish -> 打開當前工程文件夾

-> 選定Java Resources:src,單擊鼠標右鍵 -> new -> class -> Finish。

⑷.部分示例代碼:

1.Produce.java:

package com.fgf;

public class Produce {

      private String name = "小猿大D";

private double price = 298;

private int count = 10;

private String factoryAdd = "小猿大DXXX公司";

public void setName(String name) {this.name = name;}

public void setPrice(double price) {this.price = price;}

public void setCount(int count) {this.count = count;}

public void setFactoryAdd(String factoryAdd) {this.factoryAdd = factoryAdd;}

public String getName() {return name;}

public double getPrice() {return price;}

public int getCount() {return count;}

public String getFactoryAdd() {return factoryAdd;}

}

2.Index.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<jsp:useBean id="produce" class="com.fgf.Produce"></jsp:useBean>

<jsp:setProperty property="name" name="produce" value="手機"/>

<jsp:setProperty property="price" name="produce" value="29999.235"/>

<jsp:setProperty property="count" name="produce" value="1"/>

<jsp:setProperty property="factoryAdd" name="produce" value="DAD公司"/>

<!DOCTYPE HTML>

<html>

<head>

<meta charset="utf-8">

<title>顯示商品信息</title>

</head>

<body>

<div>

<ul><li>商品名稱:<jsp:getProperty property="name"name="produce"/></li>

<li>價格:<jsp:getProperty property="price" name="produce"/>(元)</li>

<li>數量:<jsp:getProperty property="count" name="produce"/></li>

    <li>廠址:<jsp:getProperty property="factoryAdd" name="produce"/></li>

</ul></div>

</body></html>

參考信息資料來源:百度百科(機械工業出版社)《JavaWeb入門經典》

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章