模型驱动

Posted zhzcode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模型驱动相关的知识,希望对你有一定的参考价值。

1.概述

模型驱动又称为ModelDriven。在实现过程中,Action需要去实现ModelDriven接口。

 

2.实现步骤

 

  • 第一步:创建类并实现ModelDriven接口
  • 第二步:定义属性(成员字段)并编写get/set访问器
  • 第三步:编写请求处理方法
  • 第四步:配置Action

 

3.示例

[Action]

 1 /**
 2  * 模型驱动
 3  *     必须实现ModelDriven接口
 4  *     成员字段必须进行实例化
 5  *     必须完成get访问器
 6  * @author Terry
 7  *
 8  */
 9 public class UserAction3 implements ModelDriven<User>{
10     //必须进行实例化
11     private User user = new User();
12     
13     //只有get(没有set)
14     @Override
15     public User getModel() {
16         return user;
17     }
18 
19     
20     public String execute(){
21         System.out.println(user);
22         return "success";
23     }
24 }

 

[配置Action]

 

1         <action name="add3" class="cn.hl.action.UserAction3">
2             <result>/update3.jsp</result>
3         </action>

 

 

[Jsp]

 1     <form action="user/add3.action" method="post">
 2         <table>
 3             <caption>
 4                 用户注册(实体类方式--模型驱动)
 5             </caption>
 6             <tr>
 7                 <th>姓名:</th>
 8                 <td>
 9                     <input type="text" name="userName" /> 
10                 </td>
11             </tr>
12             <tr>
13                 <th>帐号:</th>
14                 <td>
15                     <input type="text" name="account" /> 
16                 </td>
17             </tr> 
18             <tr>
19                 <th>密码:</th>
20                 <td>
21                     <input type="text" name="pwd" /> 
22                 </td>
23             </tr>   
24             <tr>
25                 <td>
26                     <input type="submit" value="保存" />
27                 </td>
28             </tr>        
29         </table>
30     </form>

 

【注意事项】

成员字段必须进行实例化

Jsp使用字段的属性时,不需要加字段名(前缀)

不需要定义set访问器

 

 

 

    <form action="user/add3.action" method="post">

    <table>

    <caption>

    用户注册(实体类方式--模型驱动)

    </caption>

    <tr>

    <th>姓名:</th>

    <td>

    <input type="text" name="userName" /> 

    </td>

    </tr>

    <tr>

    <th>帐号:</th>

    <td>

    <input type="text" name="account" /> 

    </td>

    </tr> 

<tr>

    <th>密码:</th>

    <td>

    <input type="text" name="pwd" /> 

    </td>

    </tr>   

    <tr>

    <td>

    <input type="submit" value="保存" />

    </td>

    </tr>

    </table>

    </form>

以上是关于模型驱动的主要内容,如果未能解决你的问题,请参考以下文章

使用片段时 Intellij 无法正确识别 Thymeleaf 模型变量

php 一个自定义的try..catch包装器代码片段,用于执行模型函数,使其成为一个单行函数调用

如何防止在背面片段导航上再次设置视图模型

如何运用领域驱动设计 - 值对象

python selenium片段+网络驱动程序

sh HBA和驱动器固件闪烁片段