1. 程式人生 > >Struts2屬性驅動封裝(了),需要使用ognl表示式

Struts2屬性驅動封裝(了),需要使用ognl表示式

建立一個Person類

public class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
建立一個Action public class PersonAction extends ActionSupport{
private Person person;
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
public String login(){
System.out.println(person.getName());
return null;
}
}

配置struts2.xml

<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="login" class="strtusDemo1.PersonAction" method="login">
<result>/index.jsp</result>
</action>
</package>
</struts>

當jsp頁面name使用ognl表示式的。Bean中的name屬性可以封裝

使用ognl表示式,可以將name封裝到Person中



使用普通name屬性,person為空。對於上面action程式碼直接會報空指標

誰來完成的引數封裝?
在default.xml中定義了一個攔截器<interceptor name="params" class="com.opensymphony.xwork2.interceptor.ParametersInterceptor"/>
 它底層是先呼叫了setPesonr方法對person物件進行初始化,在對每一個屬性進行賦值時,是呼叫getPerson方法獲取
  Person物件,在通過Person物件的setXxx方法完成請求引數封裝。

相關推薦

Struts2屬性驅動封裝,需要使用ognl表示式

建立一個Person類 public class Person {private String name;public String getName() {return name;}public void setName(String name) {this.name =

Struts2OGNL表示式與值棧

1.2 相關知識點 1.2.1 什麼是OGNL OGNL:物件圖導航語言,比EL表示式強大很多倍的語言。       EL:從域物件中獲取資料,從EL的11個物件中獲取。${name}${pageContextPath}   &nbs

struts2引數獲得方式-1屬性驅動獲得引數

1.學習路線 今天咱們來學struts2引數獲得方式,let`go!                                                                                            圖1.學習路線

Linux 網卡驅動學習網絡驅動接口小結

-a key 頻率 網絡 上網 ren 網絡設備 ews 入口 【摘要】前文我們分析了一個虛擬硬件的網絡驅動樣例。從中我們看到了網絡設備的一些接口。事實上網絡設備驅動和塊設備驅動的功能比較相似,都是發送和接收數據包(數據請求)。當然它們實際是有非常多不同

Linux 網卡驅動學習應用層、tcp 層、ip 層、設備層和驅動層作用解析

local acc 每次 letter auto sizeof style article inode 本文將介紹網絡連接建立的過程、收發包流程,以及當中應用層、tcp層、ip層、設備層和驅動層各層發揮的作用。 1、應用層 對於使用socket進行網絡連接的serv

制作根文件系統、使用NFS燒寫、編譯使用驅動程序2

clas bz2 節點 family 好的 根文件系統 pan ini 驅動 1.制作根文件系統 1.1 先解壓文件系統,/wok/nfs_root 目錄下是已經構造好的各種文件系統:① fs_mini.tar.bz2 是最小的根文件系統,裏面的設備節點是事先建立好的;②

Linux設備驅動程序設備驅動程序簡介

包括 收集 字符設備 調度器 計算機 啟動 驅動程序 str 單個 機制or策略: 驅動提供機制(what),而不是提供策略(how); 內核功能劃分: 根據內核完成任務的不同,可分為如下幾個部分: 1. 進程管理 負責進程的的創建和銷毀,並

C# SQL封裝

c# sql封裝(二)接 C# SQL封裝(一)開始操作數據庫的測試 :using System;using System.Collections.Generic;using System.Linq;using System.Text;using DBDome.com;using DBDome.model;u

C# SQL封裝

c# sql封裝(一)感謝軟謀徐老師的SQLHelper.as , 代碼如下(本人有所改動):using System; using System.Collections; using System.Collections.Generic; using System.Configuration; using

從零開始使用CodeArt實踐最佳領域驅動開發

using emp 程序集 mman his return main 更新 物理 本章內容還在整理上傳中,你可以等全部更新完畢後再查閱也可以先預覽已上傳的內容。。。。。。 7. 應用層的命令模式   在上個章節裏我們設計並編碼了領域對象Permission,但是目前Perm

SSH框架學習------struts2前後臺傳值

sts put ret req extends imp tps str rri struts2的Action類一般都會繼承(extends)ActionSupport類(Action類,即實現action的類)1.前傳後:jsp裏<input type="text"

JavaSE 學習筆記之封裝

延遲加載 分類 static str super 想要 oid 懶漢式 可靠性 封 裝(面向對象特征之一):是指隱藏對象的屬性和實現細節,僅對外提供公共訪問方式。 好處:將變化隔離;便於使用;提高重用性;安全性。 封裝原則:將不需要對外提供的內容都隱藏起來,把屬性都隱藏,提

python面向對象之 封裝Day25

imp disco font 使用 ati 所有 下劃線 error: 無法 封裝:   隱藏對象的屬性和實現細節,僅對外提供公共訪問方式 好處:1.將變化隔離    2.便於使用    3.提高復用性    4.提高安全性 封裝原則:    1.將不需要對外提供的內容隱藏

領域驅動設計DDD- 請先搞清楚一些概念

責任 可能 升級 是你 ora ext 計數 方法 避免 開發一個新系統   一般我們開始開發一個商業系統都需要做什麽?讀需求文檔去查找功能點,拆解任務。多數情況下,拆解項目是為了評估工作,做評估、分配任務到個人、設計數據庫結構,然後就開始了Coding。 所以,這種方

css動畫-animation各個屬性詳解

yellow range 空隙 定義 tro content bin ora .com CSS3的animation很容易就能實現各種酷炫的動畫,雖然看到別人的成果圖會覺得很難,但是如果掌握好各種動畫屬性,做好酷炫吊炸天的動畫都不在話下,好,切入正題。 一、動畫屬性:

數據驅動測試Python

baidu -c 驗證碼 clas case 需要 調用 很多 element 自動化領域的兩種驅動,對象驅動與數據驅動 數據驅動:測試數據的改變引起執行結果的改變 叫 數據驅動 關鍵字驅動:測試對象名字的改變起引起測試結果的改變 叫 關鍵字驅動 1 、讀取文

Struts2源碼學習——Struts2中的XWork容器

sta 註入 解耦 器) equal catch 若有 pojo read   接下來記錄幾篇學習Struts2源碼的文章,希望能溫故而知新。 目錄:   1, 為什麽引入容器   2,容器的定義   3,對象創建分析   4,依賴註入分析   5,對象創建和依賴註入的

Android零基礎入門第80節:Intent 屬性詳解

gre save top log 單選按鈕 bar 手機 彩信 ttext 上一期學習了Intent的前三個屬性,本期接著學習其余四個屬性,以及Android系統常用內置組件的啟動。 四、Data和Type屬性 Data屬性通常用於向Action屬性提

struts2ognl表達式與ActionContext、ValueStack

誤區 共享 not in 1.2 domu oot 數學 request png 前言   前面已經把struts2講內容說了一半了,我寫的很詳細,希望對博友們有幫助。 一、OGNL表達式語言概述 1.1、OGNL表達式簡介   百度上是這樣說:      OG

appium+python自動化24-滑動方法封裝swipe【轉載】

start fun optional image device rgs launcher ice oba swipe介紹 1.查看源碼語法,起點和終點四個坐標參數,duration是滑動屏幕持續的時間,時間越短速度越快。默認為None可不填,一般設置500-1000毫秒比較