手机站
网通分站
电信主站
密 码:
用户名:
热门关键字:  域名  虚拟主机  cn域名  域名注册  asd
当前位置 : 主页>程序设计>Java技术>列表

struts spring hibernate架构中数据对象(PO,POJO,FormBean)的使用心得

来源:互联网 作者:west263.com 时间:2008-02-23 点击:
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

我们知道Hibernate最大的优点就是,对于持久层的数据的处理变得非常方便。在这里我们不用在区分是PO,还是POJO,原则上来讲从数据层到界面控制层我们可以使用同样一个VO数据对象,但是在Struts层我们通常又使用formbean来保存数据。这样我们需要在对两个数据对象做处理,是在Create/Edit时,我们需要对这两个数据对象进行相互copy.(这两个数据对象我就叫actonform和vo)

今天看了Spring里的一个sample, 把vo做为actionform的一个属性,可以有更简单的方法如下(User的例子) :

User 有 username, password两个属性。

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; }
}

ActionUserForm 有 User 和 actionType两个属性。

public class ActionUserForm {
private User user = new User();
private int actionType ;
public User getUsername() { return user; }
public void setUsername(User user) { this.user = user; }

public int getPassword() { return actionType; }
public void setPassword(int actionType) { this.actionType = actionType; }
}

struts-config.XML中的bean和actio配置这里就不讲了,要说明的是private User user = new User();第一次我是private User user;这样定义的始终成功不了。换成private User user = new User();就ok了。

UserEdit.JSP
...
<html:text property="user.username" />
<html:password property="user.password" />
...

UserAction.Java
public ActionForward save(...
...
UserForm userform = (UserForm)actionForm;
bs.save( userform.getUser() );
...

这样不仅是内存中的数据对象少了,对于复杂的数据对象,我们编程也变得更简洁了。PO是通过hibernate同步器产生的,从头到尾真正的数据对象就是PO, formbean是PO加上其他的控制状态什么的。这样就非常方便了

上一篇: eclipse 插件开发_初探心得(一)
下一篇: Hibernate实践笔记

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名
注册