Struts2 UI標籤 資料回顯 資源國際化

2021-09-11 08:57:42 字數 4070 閱讀 2124

sturts2為了簡化我們的開發,也為我們提供了ui標籤...也就是顯示頁面的標籤.....

但是呢,struts2是服務端的框架,因此使用頁面的標籤是需要在伺服器端解析然後再被瀏覽器解析,**最後才顯示在頁面上的。**因此,它的效能是不夠html標籤好的...html直接就能夠被瀏覽器解析

還有一點是:我們在寫網頁的時候,肯定是需要使用div+css的頁面布局的使用struts2ui標籤也沒法幹了....因此,除了有必要的話,才去使用struts2ui標籤

<%--我們發現,struts2ui標籤用起來和html是差不多的--%>

id="form1"

name="form1"

method="post"

action="#">

<%--輸入框資料,lable就相當於我們以前外邊寫的資料--%>

label="使用者名稱"

name="user.username"/>

<%--密碼框--%>

label="密碼"

name="user.password"/>

<%--提交按鈕--%>

value="提交"/>

s:form>

複製**

當我們檢視原始檔的時候,發現struts2ui標籤為我們自動加入了很多的標籤

上面已經說了,struts2ui標籤為我們自動加入了很多的標籤,那有的時候,我們不想要,或者換一種風格的話,怎麼辦???

struts2ui標籤也為我們提供了「主題」這樣的功能...

當我們在表單中設定theme屬性為******之後...我們發現原始檔struts2自動為我們新增的標籤全沒了。

如果我們想整個專案都是使用******為主題的話,我們可以在配置檔案中配置

name="struts.ui.theme"

value="******"/>

複製**

我們對資料回顯也不會陌生,在使用el表示式的時候就已經用過了資料回顯了....那為啥資料回顯放在struts2標籤這裡講解呢???因為struts2也提供了資料回顯的支援,並且,使用資料回顯必須要使用struts2的標籤...

在struts中按照正常思路寫資料回顯是這樣的:

public string login

()複製**

id="form1"

name="form1"

method="post"

action="" >

<%--輸入框資料,lable就相當於我們以前外邊寫的資料--%>

label="使用者名稱"

name="user.username"

value="%"/>

<%--密碼框--%>

label="密碼"

name="user.password"/>

<%--提交按鈕--%>

value="提交"/>

s:form>

複製**

其實,上面的**已經實現了資料回顯,但struts2提供了乙個更巧妙的方法

也就是說,struts2可以直接在name中就可以實現資料回顯了....要做的是:

因此,我們把想要回顯的資料放在compoundroot下

//得到值棧物件

valuestack valuestack = actioncontext.getcontext().getvaluestack();

valuestack.set("username","zhongfucheng");

複製**

label="使用者名稱"

name="username"/>

複製**

語法:

listvalue如果在action裡定義的是乙個list,則往往會在list裡定義乙個bean,它只有兩個屬性,另外乙個(比如name)就在這裡設定

value用於回顯畫面上被選中的核取方塊,假如畫面有輸入檢查,如果有錯則返回原畫面並顯示出錯資訊,這時候就需要使用它。

例子:查詢了所有的角色,得到使用者與角色的所有id了。把封裝到陣列中。

public string editui

() }

return

"editui";

}複製**

name值的是陣列,可以用於自動回顯。action得到角色的id也是通過它

list="#rolelist"

name="userroleids"

listkey="roleid"

listvalue="name">

s:checkboxlist>

複製**

我們在學jstl標籤的時候就涉及到了資源國際化,,,但是呢,在jsp的章節我並沒有寫博文來講解怎麼弄....一方面感覺jsp的資源國際化好麻煩,另一方面是感覺用的地方很少.....因此就沒有深入去了解它...

今天呢,學習到了struts2的資源國際化了。重新看回jsp資源國際化的步驟,再對比一下struts的資源國際化

在servlet寫資源國際化的步驟:

讀取配置檔案

在struts2寫資源國際化的步驟:

讀取配置檔案再使用

區別:struts2載入資源檔案更加簡單,通過常量配置即可!提供的struts標籤更簡單使用

下面就使用struts來寫乙個資源國際化的demo....

值得注意的是:在idea下寫properties資源檔案,如果涉及到中文,預設是不會幫我們編碼的。它是不像eclipse的...因此需要我們手動去設定的......設定的教程在我的idea博文中有...如果出現了這個問題,那就去idea博文下找唄。。。

我們直接在struts中使用contant節點來載入我們自己寫的配置檔案。值得注意的是:value的值是檔案的全名(也就是說,如果有包,就把包名寫上)....並且,不需要寫上字尾...

name="struts.custom.i18n.resources"

value="msg">

constant>

複製**

name的值是配置檔案中配置的資訊,寫上就行了!

value="登陸">

form>

body>

複製**注意,title已經替換成了中文了!!

select標籤資料回顯 和

今天是專案的最後一天,可我卻在select下拉框回顯上花了1個多小時,實在難受。現在來總結下回顯的兩個常用方法 說明 當前在session裡儲存了乙個名為centainstu的物件,bednum是其乙個屬性。1.語句 selected a selected b selected c selected...

struts2常用UI標籤之 Form標籤

一 select標籤 1 靜態構造下拉選項 註解 這裡從頁面來靜態 也就是在頁面中寫死啦 構造下拉選項,關鍵點是list 通過它實現的select的兩個option headerkey指定預設的選項 value headervalue指定預設的選項 text 2 通過list物件動態構造下拉選項 註...

Struts2標籤 資料標籤 url標籤

url標籤用於生成乙個url位址,可以通過為url標籤指定param子元素,從而向指定url傳送請求引數。該標籤有以下的屬性 includeparams 可選屬性,指定是否包含請求引數,屬性值只能為 none get all scheme 可選屬性,用於設定scheme屬性 namespace 可選...