jsp中如何使用javabeans,如何使用一個已經定義好的類

如何使用javabeans?

JavaBean簡介
JavaBeans就是符合某種特定的規範的Java類。使用JavaBeans的好處是解決代碼重複編寫,減少代碼冗餘,功能呢個區分明確,提高了代碼的維護性。

JavaBean的設計原則
公有類、無參的公有構造方法、屬性私有、getter和setter方法。

什麼事JSP動作
JSP動作元素(action elements),動作元素爲請求處理階段提供信息。動作元素遵循XML元素的語法,有一個包含元素名的開始標籤,可以有屬性、可選的內容、與開始標籤匹配的結束標籤。

JSP動作元素一共包含五類:
第一類是與存取JavaBean有關的,包括:
<jsp:useBean> <jsp:setProperty> <jsp:getProperty>
第二類是JSP1.2就開始有的基本元素,包括6哥動作元素
<jsp:include> <jsp:forward> <jsp:param> <jsp:plugin> <jsp:params> <jsp:fallback> 
第三類是JSP2.0新增加的元素,主要與JSP Document有關,包括六個元素
<jsp:> <jsp:root> <jsp:declaration> <jsp:scriptlet> <jsp:expression> <jsp:text> <jsp:output>
第四類是JSP2.0新增的動作元素,主要是用來動態生成XML元素標籤的值,包括3個動作
<jsp:attribute> <jsp:body> <jsp:element> 
第五類是JSP2,0新增的動作元素,主要是用在Tag File中,有兩個元素
<jsp:invoke> <jsp:dobody>

在JSP頁面中使用JavaBeans的方式
1.像使用普通Java類一樣創建JavaBean實例。
2.在JSP頁面中通常使用JSP動作標籤使用JavaBean。

常用的JSP動作標籤是:useBeans動作、setProperty動作、getProperty動作。

<jsp:useBeans>
作用:在JSP頁面中實例化或者在指定範圍內使用JavaBean:
格式:<jsp:useBean id="標識符" class="java類名" scope="作用範圍" />
其中id就是JavaBean對應的實例。

<jsp:setProperty>
作用:給已經實例化的JavaBean對象的屬性賦值,一共有四種形式:
<jsp:setProperty name="JavaBean實例名" property="*" />(跟表單關聯)
<jsp:setProperty name="JavaBean實例名" property="JavaBean屬性名" />(跟表單關聯)
<jsp:setProperty name="JavaBean實例名" property="JavaBean屬性名" value="BeanValue" />(手工設置)
<jsp:setProperty name="JavaBean實例名" property="propertyName" param="request對象中的參數名" />(跟表單關聯)(這裏的屬性可以通過URL傳參的方式來賦值)

<jsp:getProperty>
作用:獲取指定JavaBean對象的屬性值。
格式:<jsp getProperty name="JavaBean實例名" property="屬性名" />

JavaBean的四個作用域範圍
說明:使用useBeans的scope屬性可以用來指定javabean的作用範圍:
page //僅在當前頁面有效
request //可以通過HttpRequest.getAttribute()方法獲得JavaBean對象
session //可以通過HttpSession.getAttribute()方法獲得JavaBean對象
application //可以通過application.getAttribute()方法獲得JavaBean對象

如何使用一個已經定義好的類?

<%@page import="com.ideal.dao.CommPayAppDao">

其中,類CommPayAppDao爲代碼src中包com/ideal/dao下面的dao類,這樣你在jsp頁面就可以像java類中寫代碼一樣使用該類中的public方法,
例如:假設該dao類中有public方法getPayAmount(String s)
<%
CommPayAppDao dao=new CommPayAppDao();
String comm_code="018876666";//商戶號
dao.getPayAmount(comm_code);//根據商戶號獲取付款金額
%>

發佈了43 篇原創文章 · 獲贊 27 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章