日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

属性驱动

發布時間:2025/3/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 属性驱动 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概述

通過屬性(模型)驅動,可以使得Action獲取到用戶表單所提交的數據。

?

【屬性驅動】

1.概述

所謂屬性驅動是指使用類的屬性(成員字段)來接收用戶提交的數據。

?

2.實現步驟

  • 第一步:創建Action
  • 第二步:添加對應的屬性(成員字段)并生成get/set訪問器
  • 第三步:編寫請求處理方法
  • 第四步:配置Action

?

3.示例1?基本類型作為屬性

[View]

1 <form action="user/add.action" method="post"> 2 <table> 3 <tr> 4 <th>姓名:</th> 5 <td> 6 <input type="text" name="userName" /> 7 </td> 8 </tr> 9 <tr> 10 <th>帳號:</th> 11 <td> 12 <input type="text" name="account" /> 13 </td> 14 </tr> 15 <tr> 16 <th>密碼:</th> 17 <td> 18 <input type="text" name="pwd" /> 19 </td> 20 </tr> 21 <tr> 22 <td> 23 <input type="submit" value="保存" /> 24 </td> 25 </tr> 26 </table> 27 </form>

?

[Action]

1 /** 2 * 屬性驅動方式獲取表單數據 3 * 4 * 將表單提交的數據以Action屬性(成員字段)的形式進接收 5 * @author Terry 6 * 7 */ 8 public class UserAction implements Action{ 9 private String userName; 10 private String account; 11 private String pwd; 12 13 /** 14 * 請求處理方法 15 */ 16 @Override 17 public String execute(){ 18 System.out.println("userName = " + userName); 19 System.out.println("account = " + account); 20 System.out.println("pwd = " + pwd); 21 System.out.println("==========================================\n"); 22 return "success"; 23 } 24 25 //get/set訪問器 26 }

?

[配置文件]

1 <package name="UserAction" extends="struts-default" namespace="/user"> 2 <action name="add" class="cn.hl.action.UserAction"> 3 <result>/index.jsp</result> 4 </action> 5 </package>

?

[執行結果]

?

4.示例2?引用類型作為屬性

[View]

1 <form action="user/add.action" method="post"> 2 <table> 3 <tr> 4 <th>姓名:</th> 5 <td> 6 <input type="text" name="user.userName" /> 7 </td> 8 </tr> 9 <tr> 10 <th>帳號:</th> 11 <td> 12 <input type="text" name=" user.account" /> 13 </td> 14 </tr> 15 <tr> 16 <th>密碼:</th> 17 <td> 18 <input type="text" name=" user.pwd" /> 19 </td> 20 </tr> 21 <tr> 22 <td> 23 <input type="submit" value="保存" /> 24 </td> 25 </tr> 26 </table> 27 </form>

?

[Javabean]

1 public class User { 2 private String userName; 3 private String account; 4 private String pwd; 5 6 public User() { 7 // TODO Auto-generated constructor stub 8 } 9 }

?

[Action]

1 public class UserAction2 implements Action{ 2 private User user ; 3 4 /** 5 * 請求處理方法 6 */ 7 @Override 8 public String execute(){ 9 System.out.println(user); 10 System.out.println("==========================================\n"); 11 return "success"; 12 } 13 14 public User getUser() { 15 return user; 16 } 17 18 public void setUser(User user) { 19 this.user = user; 20 } 21 22 }

?

[配置文件]

1 <action name="add2" class="cn.hl.action.UserAction2"> 2 <result>/update2.jsp</result> 3 </action>

?

[執行結果]

?

?

【注意事項】

  • 基本類型作為屬性時,屬性名(成員字段名)必須和表單中name值一致
  • 屬性必須提供get/set訪問器。否則將無法獲取到數據值
  • 引用類型作為成員屬性時,不需要進行實例化

?

轉載于:https://www.cnblogs.com/zhzcode/p/9897152.html

總結

以上是生活随笔為你收集整理的属性驱动的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。