最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一篇文章帶你學會Spring?MVC表單標簽

 更新時間:2023年03月24日 11:48:49   作者:Java?Fans  
Spring MVC表單標簽是網頁的可配置和可重復使用的構建塊,下面這篇文章主要給大家介紹了如何通過一篇文章學會Spring?MVC表單標簽的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

使用Spring MVC提供的表單標簽可以讓JSP視圖方便展示地Model中的數據,特別適合修改現有記錄數據的情形,通常進行修改操作時,原有數據要先展示出來,再供用戶重新選擇或修改。使用表單標簽能實現數據綁定,讓表單中的各個表單域中的name屬性綁定到對象模型中來。JSP頁面中要想使用SpringMVC自帶標簽庫,需要導入標簽庫,在JSP文件開頭聲明如下:

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> 

Spring的form標簽能夠自動綁定來自Model中的一個屬性值到當前form對應的實體對象,默認是command屬性(可以通過ModelAttribute重寫默認屬性),這樣就可以在form表單體里面方便的使用該對象的屬性。Form標簽下面又包含input,password,select/option/options,checkbox/checkboxs,radiobutton,radiobuttons等等子標簽。這些標簽的基本介紹如下圖所示。

form 標簽

form 標簽主要包括下表所示的多個屬性

@RequestMapping("detail/{id}")
public ModelAndView detail (@PathVariable int id){
	User myuser=userService.getUserById(id);
	ModelAndView mv=new ModelAndView();
	mv.addObject("user",myuser);
	System.out.println(userService..getUserById(id).getUsername());
	mv.setViewName("detail");
	return mv;
}

該代碼表示接收到 id 后,調用業(yè)務層,獲取到該 id 號的 User 類的用戶對象 myuser,然后將 myuser 對象封裝添加到 ModelAndView 中來,鍵為“user”,值為myuser 對象,這樣這個模型舊風裝好了屬性名稱為 user 的鍵值對(值為 myuser)。然后進入 JSP 頁面,form 表單利用 commandName 與 modelAttribute 指定該模型的“user”屬性名,就可綁定該模型屬性的值(即 User 類的myuser 對象),并把該模型屬性的值 myuser 對象中的各個屬性與 form 表單的各個子標簽一一綁定。Form 表單中應用 commandName 綁定模型屬性名稱示例代碼如下:

<form:form action="update" method="post" commandName="user">
//省略紙標簽
</form:form>

這樣就把后臺控制器方法中創(chuàng)建的對象傳遞過來在前臺展示了。

input 標簽

input標簽,用于展示控制器方法中封裝的基本類型的Model數據。語法如下:

<form:input path="domain的屬性名">

其中path用于指定要綁定的屬性,比如上面案例中,表單中指定了要綁定的對象為User類的myuser,但要在表單中具體顯示該對象的用戶名username還需要這樣做:

<form:form action="update" method="post" commandName="user">
	<form:input path="username"/>
</form:form>

這樣在表單綁定myuser對象的基礎上,進一步把該對象的username屬性綁定到文本輸入框中來。

password 標簽

password標簽,用于填寫密碼,有掩碼。語法如下:

<form:password path="domain的屬性名"/>

其path屬性含義同上。上例中,若還要展示用戶的密碼,則代碼如下所示:

<form:form action="update" method="post" commandName="user">
	<form:input path="username"/></br>
	<form:password path="password"/></br>
</form:form>

checkbox 標簽

該標簽的屬性基本與input相同,但另有一個label屬性用于指定顯示的得選框的值。

<form:checkbox path="domain的屬性名" label="復選框的值">

如果該屬性名存在,則默認已經選上。前臺關鍵代碼如下:

	myInteresting=new ArrayList<String>();
	myInteresting.add("美食");
	myInteresting.add("音樂");	

前臺關鍵代碼如下,則顯示效果如圖7.1所示。

	<form:checkbox path="myInteresting" value="舞蹈" label="舞蹈"/>
    <form:checkbox path="myInteresting" value="旅游" label="旅游"/>
    <form:checkbox path="myInteresting" value="唱歌" label="唱歌"/>
    <form:checkbox path="myInteresting" value="音樂" label="音樂"/>
    <form:checkbox path="myInteresting" value="運動" label="運動"/>
    <form:checkbox path="myInteresting" value="美食" label="美食"/>

顯示效果如圖所示:

checkboxes 標簽

checkboxes的基本語法如下:

<form:checkboxes items="${Model中Collections的屬性}" path="domain的屬性名"/>

checkboxes有幾個重要屬性如下表所示。

假定后臺控制器方法中設置了一個集合allIntersting,用于描述興趣愛好,其中包含了所有的興趣愛好:旅游,音樂,唱歌,跳舞,運動,美食。但某一個人的興趣可能只有其中若干項,所以再定義一個集合myIntesting,只含部分興趣愛好。前臺form表單需要把所有興趣愛好以多選項的形式列出來,對某一個人有的興趣愛好則打上勾。后臺代碼如下:

	@RequestMapping("/detail/{id}")
	public ModelAndView detail(@PathVariable int id){		
		List<String> allInteresting=new ArrayList<String>();
		allInteresting.add("舞蹈");
		allInteresting.add("旅游");
		allInteresting.add("唱歌");
		allInteresting.add("音樂");
		allInteresting.add("運動");
		allInteresting.add("美食");
		
		UserService userService=new UserService();		
		User user=userService.getUserById(id);
		List<String> myInteresting=new ArrayList<String>();
		myInteresting.add("旅游");
		myInteresting.add("音樂");
        user.setMyInteresting(myInteresting);
		ModelAndView mv=new ModelAndView();
		mv.addObject("allInteresting", allInteresting);
		mv.addObject("user", user);
		mv.setViewName("detail");
		return mv;

}

前臺關鍵代碼如下:

<form:checkboxes path="myInteresting" items="${allInteresting}"/>

最終結果如圖所示:

對于Map類型的Collection來說,key值為標簽的value值,value值為標簽的label值,但是需要注意HashMap是亂序的

radiobutton 與 radiobuttons 標簽

Radiobutton的語法如下:

<form:radiobutton path="domain屬性名" label=”顯示的值” value=”值”/>

通常有多個,然后若后臺傳來的domain屬性名的值跟其中一個value的值相同,則為選中。

Radiobuttons的語法如下:

<form:radiobuttons path="domain屬性值" items="${傳入的Collection}"/>

其規(guī)則同checkboxes。如果后臺傳來的的domain屬性名的值跟items集合中的其中一個value的值相同,則為選中。后臺代碼:

@RequestMapping("/detail/{id}")
	public ModelAndView detail(@PathVariable int id){		
		List<String> cities=new ArrayList<String>();
		cities.add("北京");
		cities.add("上海");
		cities.add("廣州");
		cities.add("深圳");
		String city="深圳";
		UserService userService=new UserService();		
		User user=userService.getUserById(id);
        user.setCity(city);
		user.setGender(true);
		ModelAndView mv=new ModelAndView();
		mv.addObject("cities", cities);
		mv.addObject("user", user);
		mv.setViewName("detail");
		return mv;
}

前臺代碼如下:

		<tr>  
            <td>性別:</td>
            <td>
            	<form:radiobutton path="gender" value="true" label="男"/>
                <form:radiobutton path="gender" value="false" label="女"/>  
            </td>  
        </tr>
		<tr>  
            <td>所在城市1</td>
            <td>
            	<form:radiobuttons path="city" items="${cities}"/><br/>   		
            </td>  
        </tr>

最終結果如圖所示:

select 與 option/options 標簽

語法格式如下:

<form:select path="domain的屬性名">
<form:option value=”值”>顯示的值</option>
    <form:options items="${Collections變量}"/>
</form:select>

其中items的使用同前。

前臺代碼同前,后臺代碼如下:

		<tr>  
            <td>所在城市2</td>
            <td>
            	<form:select path="city">  
           		<option>請選擇城市</option>
          		<form:option value="北京">北京</form:option>
           		<form:option value="上海">上海</form:option>
           		<form:option value="廣州">廣州</form:option>
           		<form:option value="深圳">深圳</form:option>
        	</form:select>   		
            </td>  
        </tr>
        <tr>  
            <td>所在城市3</td>
            <td>
            	<form:select path="city">  
            		<option>請選擇城市</option>
            		<form:options items="${cities}"/>  
        	</form:select> 		
            </td>  
        </tr>

效果如圖所示:

總結

到此這篇關于一篇文章帶你學會Spring MVC表單標簽的文章就介紹到這了,更多相關Spring MVC表單標簽內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java中的JSONObject詳解

    Java中的JSONObject詳解

    這篇文章主要介紹了Java中的JSONObject詳解,需要的朋友可以參考下
    2025-04-04
  • Java字符串操作和C#字符串操作的不同小結

    Java字符串操作和C#字符串操作的不同小結

    在JAVA語言中,字符串數據實際上由String類所實現的。下面這篇文章主要給大家介紹了關于Java字符串操作和C#字符串操作的不同的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-12-12
  • 基于Java語言MD5加密Base64轉換方法

    基于Java語言MD5加密Base64轉換方法

    這篇文章主要為大家詳細介紹了基于Java語言的MD5加密Base64轉換方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Java面向接口編程之簡單工廠模式示例

    Java面向接口編程之簡單工廠模式示例

    這篇文章主要介紹了Java面向接口編程之簡單工廠模式,結合實例形式詳細分析了java面向接口編程簡單工廠模式的具體定義與使用方法,需要的朋友可以參考下
    2019-09-09
  • 解析Springboot集成Tile38客戶端之Set命令實現示例

    解析Springboot集成Tile38客戶端之Set命令實現示例

    這篇文章主要為大家介紹了解析Springboot集成Tile38客戶端之Set命令實現示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • Java進階必備之多線程編程

    Java進階必備之多線程編程

    今天帶大家來學習java多線程編程,文中有非常詳細的代碼示例及介紹,對正在學習java多線程的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • Java Objects工具類原理及用法詳解

    Java Objects工具類原理及用法詳解

    這篇文章主要介紹了Java Objects工具類原理及用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • SpringBoot實現Mysql使用MD5進行密碼加密的示例

    SpringBoot實現Mysql使用MD5進行密碼加密的示例

    這篇文章主要介紹了SpringBoot實現Mysql使用MD5進行密碼加密的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • springboot手寫一個自己的starter源碼

    springboot手寫一個自己的starter源碼

    在本篇文章里小編給大家整理了關于springboot手寫一個自己的starter源碼的全部知識點內容,需要的朋友們學習下。
    2019-06-06
  • Java語言實現簡單FTP軟件 FTP連接管理模塊實現(8)

    Java語言實現簡單FTP軟件 FTP連接管理模塊實現(8)

    這篇文章主要為大家詳細介紹了Java語言實現簡單FTP軟件,FTP連接管理模塊的實現方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04

最新評論

同心县| 九江县| 兰州市| 襄城县| 伊春市| 深泽县| 竹北市| 上思县| 大名县| 天柱县| 五常市| 从江县| 合水县| 远安县| 云龙县| 龙胜| 唐河县| 宁蒗| 左云县| 锡林浩特市| 九龙县| 集贤县| 依安县| 北宁市| 黄大仙区| 金坛市| 虹口区| 承德县| 汾西县| 贵南县| 丹棱县| 海南省| 饶河县| 玛纳斯县| 长汀县| 牡丹江市| 界首市| 密云县| 新晃| 沂水县| 五河县|