struts2模型驱动
2013-05-05 22:40
381 查看
模型驱动:把数据跟处理分开,用单独的JavaBean封装数据(不管是请求的,还是返回的,可以在一起封装),把处理类完全孤立成一个框架,用这个模型作为灵魂在驱动整个骨架。
属性驱动--你把一大堆属性搞到你的处理类里面,完全可以。方便、快捷而且灵活,不过结构清晰度当然就不好了。
1.struts2实现模型驱动的简单登陆
User(bean)类:
public class User
{
private String username;
private String password;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
jsp页面:
LoginAction2:(继承ActionSupport类并实现ModelDriven)
public class LoginAction2 extends ActionSupport implements ModelDriven<User>
{
private User user = new User();
public User getModel()
{
return user;
}
@Override
public String execute() throws Exception
{
return SUCCESS;
}
}
struts.xml的配置:
<action name="login2" class="com.erzong.struts2.LoginAction2">
<result name="success">/result.jsp</result>
</action>
result.jsp:
<body>
username:${requestScope.username }<br>
password:${requestScope.password }<br>
</body>
2. 属性驱动与模型驱动的比较
1)属性驱动灵活,准确;模型驱动不灵活,因为很多时候,页面所提交过来的参数并不属于模型中的属性,也就是说页面所提交过来的参数与模型中的属性并不一致,这是很常见的情况。
2)模型驱动更加符合面向对象的编程风格,使得我们获得的是对象而不是一个个离散的值。
3.推荐使用属性驱动来进行编写
属性驱动--你把一大堆属性搞到你的处理类里面,完全可以。方便、快捷而且灵活,不过结构清晰度当然就不好了。
1.struts2实现模型驱动的简单登陆
User(bean)类:
public class User
{
private String username;
private String password;
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
jsp页面:
LoginAction2:(继承ActionSupport类并实现ModelDriven)
public class LoginAction2 extends ActionSupport implements ModelDriven<User>
{
private User user = new User();
public User getModel()
{
return user;
}
@Override
public String execute() throws Exception
{
return SUCCESS;
}
}
struts.xml的配置:
<action name="login2" class="com.erzong.struts2.LoginAction2">
<result name="success">/result.jsp</result>
</action>
result.jsp:
<body>
username:${requestScope.username }<br>
password:${requestScope.password }<br>
</body>
2. 属性驱动与模型驱动的比较
1)属性驱动灵活,准确;模型驱动不灵活,因为很多时候,页面所提交过来的参数并不属于模型中的属性,也就是说页面所提交过来的参数与模型中的属性并不一致,这是很常见的情况。
2)模型驱动更加符合面向对象的编程风格,使得我们获得的是对象而不是一个个离散的值。
3.推荐使用属性驱动来进行编写
相关文章推荐
- Struts2模型驱动(六)
- struts2_06 struts2补充,值栈,属性驱动与模型驱动
- Struts2的属性驱动与模型驱动的区别
- Struts2-数据回显、模型驱动等常用技术
- struts2 模型驱动
- struts2中的模型驱动
- Struts2的模型驱动
- struts2模型驱动
- Struts2学习之Action接收参数方法二(用DomainModel接收参数(模型驱动))
- 浅谈Struts2的属性驱动和模型驱动
- Struts2第十二篇【模型驱动】
- 让JSON请求和参数请求一样,可以通过Struts2的模型驱动给Action的类成员变量赋值(字段驱动与模型驱动)
- struts2模型驱动获取表单的数据是空
- Struts2 - 属性驱动与模型驱动
- Struts2 模型驱动与令牌拦截器
- Struts2的属性驱动与模型驱动的区别
- Struts2中属性驱动与模型驱动
- struts2基于模型驱动的文件上传(上传视频为例子)
- Struts2的属性驱动与模型驱动的区别
- struts2模型驱动属性名要和页面一致