关于BO的问题
我们在开发系统时,一般VO(或者是PO)对应的是数据库中的表中的记录,view object是提供给客户端显示用的对象,在业务逻辑部分是BO。在很多情况下,我们把VO或者是PO作为了BO,但是在复杂的业务环境中,这种方式的脆弱性就体现出来了,如果我的业务对象比较复杂(具体来说,比如包含了多个表,多个视图中的数据),就没办法将VO、PO作为BO用了。这时候我们需要专门做一层业务层,通过拼装软干个PO、vo来构造我们需要的BO,以及按一定的业务逻辑处理这些BO,并生成相应的view object提供给客户端。我的疑问是:
1、这方面有没有成熟的架构或者案例?
2、关于BO的构成:
2.1、BO中是否应该既包含业务对象的属性又应该包含业务方法?
2.2、或者是BO只包含业务对象的属性,对BO的所有操作都由业务逻辑对象处理?
2.3、或者BO中包含业务对象的属性以及Retrieve,Update,Create,Delete等操作,而业务逻辑由专门的业务逻辑对象处理?