美文网首页
容易混淆的BO、VO、DTO,Bean...

容易混淆的BO、VO、DTO,Bean...

作者: Apple_Boy | 来源:发表于2019-07-08 09:19 被阅读0次

    Bean:数据对象,xxxBean,xxx即为数据表名。

    Entity:实体bean,一般是用于ORM对象关系映射,一个实体映射成一张表,一般无业务逻辑代码。

    负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个EntityBean对象相当于创建一条记录,删除一个EntityBean对象会同时从数据库中删除对应记录,修改一个Entity Bean时,容器会自动将Entity Bean的状态和数据库同步。

    BO(Business Object):业务对象。由Service层输出的封装业务逻辑的对象。

    VO(Value Object):返回值对象,通常为各层的返回对象。

    Form:数据查询对象,各层接收上层的查询请求。注意超过2个参数的查询封装,禁止使用Map类来传输。

    DTO (Data Transfer Object):数据传输对象 xxxDTO,远程接口入参统一以DTO结尾。

    RE : 远程接口返回值后缀。

    POJO是Bean/DTO/BO/VO/Form等的统称,禁止命名成xxxPOJO。

            MVC是模式,EF是ORM,角色不同。MVC里面的Model是C发给V的。这些Model应该被高度优化,仅仅被对应的View用来显示,额外的数据应该被Model层砍掉以节省磁盘访问、内存占用或者数据库带宽。通常情况下,View的数量都会比你数据库的Entity要多,比如用户要求的各种各样的报表,所以对应的Model也应该比数据访问层的Entity多。

            一般这种称谓都是根据上下文来的,例如Model是因为有MVC,或MVVM的场景下所以叫做Model,这里的Model就是一种职责。Entity则更接近是一种表达业务概念的实体,例如一个User,一个Order等等,而这样的实体在MVC中起到Model的职责。EF的作用是帮助你存取Entity的,而不关心你把这个Entity用作MVC里的Model还是Observer模式中的Subject对象。

    相关文章

      网友评论

          本文标题:容易混淆的BO、VO、DTO,Bean...

          本文链接:https://www.haomeiwen.com/subject/lvwehctx.html