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

原创 2005年05月26日 10:58:00

        我们知道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加上其他的控制状态什么的。这样就非常方便了

扫盲:POJO、VO、PO、FormBean什么关系

POJO、VO、PO、FormBean什么关系  POJO:Pure Old Java Object,符合Java Bean属性规范的简单Java对象,通常也称为VO(Value Object,值对象...
  • zoubf
  • zoubf
  • 2015年11月23日 20:49
  • 731

hibernate中PO(持久化对象)与POJO(普通的JavaBean)

PO = persisent object 持久对象
  • l109907
  • l109907
  • 2014年11月11日 16:32
  • 331

struts 学习笔记之MVC模式(附 :PO/POJO/BO/DTO/VO的区别 )

struts 中的MVC架构如下: View :由JSP、Struts自定义标记库、资源文件(MessageResources.properties)共同组成,通过ActionForm实现J...

Hibernate POJO与PO的概念

POJO = pure old java object or plain ordinary java object or what ever. PO = persisent object 持久对...

Java开发中的几种对象的说明(PO,VO,DTO,BO,POJO,DAO,SAO等)

一、PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象。使用Hibernate来生成PO是不错的选择。 二、VO :(value object)...
  • USTC_Zn
  • USTC_Zn
  • 2017年03月15日 22:09
  • 1384

j2ee的po、bo、vo、dto、pojo、dao对象

PO(bean,entity等命名):persistant object持久对象,数据库表中的记录在java对象中的显示状态 最形象的理解就是一个PO就是数据库中的一条记录。 好处是可以把一条记录...

java的几种对象(PO,VO,DAO,BO, TDO, POJO, DAO)解释

java的几种对象(PO,VO,DAO,BO,POJO)解释     一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中...

java有几种对象(PO,VO,DAO,DTO,BO,POJO详解)

PO(Persistent Object) 持久对象         在O/R映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:struts+spring+hibernate架构中数据对象(PO,POJO,FormBean)的使用心得
举报原因:
原因补充:

(最多只允许输入30个字)