MVC三层架构
M:代表model
V:代表view
c:代表controller
POJO :plain ordinary java object 简单ava对象
一个POJO持久化以后就是PO
直接用它传递、传递过程中就是DTO
直接用来对应表示层就是VO
POJO(plain ordinary java object) 简单无规则java对象
纯的传统意义的java对象。就是说在一些Object/Relation Mapping工具中,能够做到维护数据库表记录的persisent object完全是一个符合Java Bean规范的纯Java对象,没有增加别的属性和方法。我的理解就是最基本的Java Bean,只有属性字段及setter和getter方法!。
PO:persistant object持久对象
最形象的理解就是一个PO就是数据库中的一条记录。
好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。
DTO :Data Transfer Object数据传输对象
主要用于远程调用等需要大量传输对象的地方。
比如我们一张表有100个字段,那么对应的PO就有100个属性。
但是我们界面上只要显示10个字段,
客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端,
这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构.到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO
TO(Transfer Object),数据传输对象
在应用程序不同tie(关系)之间传输的对象
BO:business object业务对象,
封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作;
VO :value object值对象
ViewObject表现层对象
主要对应界面显示的数据对象。对于一个WEB页面,或者SWT、SWING的一个界面,用一个VO对象对应整个界面的值。
VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.个人觉得同DTO(数据传输对象),在web上传递.
DAO:data access object数据访问对象
此对象用于访问数据库。通常和PO结合使用,DAO中包含了各种数据库的操作方法。通过它的方法,结合PO对数据库进行相关的操作.
===========================================
1.vo是封装有类属性的bean的集合,有的项目组用domain表示;
2.sql里面是各中sql语句,一般是final String,方便以后查询修改;
3.dao里面是数据访问的方法,也就是传统的增删改查方法;
4.service里面是业务逻辑处理类,这里根据用户传来的需求进行业务逻辑判断然后调用不同的dao层里不同实现类的不同方法,以实现业务;
5.delegate叫做代理层,有些小项目里这一层没有,用于简单处理用户请求,并调用不同的业务层方法;
6.web里就是那些Controller控制器,与界面进行交互的地方