今天,遇到一个操作,要在页面上查看一些固定的信息,用到了VO类和 从内存中加载数据。下面说一下 VO类。
首先,java有几种对象(PO,VO,DAO,BO,POJO)
一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。使用Hibernate来生成PO是不错的选择。
二、VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.
PO只能用在数据层,VO用在商业逻辑层和表示层。各层操作属于该层自己的数据对象,这样就可以降低各层之间的耦合,便于以后系统的维护和扩展。
好处:这样可以减少大量的工作量(也就意味着减少bug,减少风险),也不需要担心未来的维护工作!
PO里的属性 主要是用来给数据库用的 ;PO :每个属性基本上都对应数据库表里面的某个字段,一般要实现序列化接口,有时也继承一些类。而VO里的属性 就是纯给用户显示的 ;VO :实际返回给用户的视图对象。再说关于 POJO : 他并不继承任何类(继承Object),实现任何接口,只有属性跟get set方法。三个都是java实体对象,VO,跟PO比较类似,PO 是persistent object,是在是ORM 框架中的entity,po的每个属性基本上都对应数据库表里面的某个字段;而vo(value object)有时可以跟po一样,有时并不对应。POJO(Plain Old Java Objects)是简单java对象,他并不继承任何类(继承Object),实现任何接口,只有属性跟get set方法。而po一般要实现序列化接口,有时也继承一些类。