概念VO(ViewObject):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(DataTransferObject):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。DO(DomainObject):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。PO(PersistentObject):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久
312对于币圈是一个地震的日子,可也在这一天一个全新DAO社区自治币CBD强势上线,0.38美金一路飙升到12美金。最高涨幅达到4000%经细致了解,CBD是邮币卡领军人物谢玉胜进军区块链的第一个标杆,谢玉胜曾经在邮币卡成功打造了几个万倍的神话。对于这次CBD也将全力打造。上线三天就被小刺猬钱包.bitkeep和tp钱包收录。迅速的ave也同时收录。CBD头像logo设计精美。采用了正心正念正德的设计理念,结合了BTC的设计理论,cbd首尾相连。携手前行,内有乾坤。CBD自治社区自发的发行了CBD纪念币,总发行2140枚。念币设计风格,直径50mm,重量30g,正面采用了CBD的logo标志,
测试getter和setter是否合适和必要?我认为他们没有任何逻辑,他们不能崩溃或抛出任何异常。 最佳答案 您不应该对DTO的getter和setter进行单元测试,除非它们包含一些需要测试的复杂逻辑。 关于java-DTO的单元测试,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5116860/
是否有类似于JavaBeans的DAO方法的标准命名约定?例如,我见过的一种命名约定是使用get()返回单个实体,使用find()返回实体列表。如果没有,您的团队使用的是什么?为什么? 最佳答案 我知道如下约定:以find开头的方法执行select操作,方法名称包含搜索条件,如findById、findByUsername、findByFirstNameAndLastName等修改方法以create、update、delete开头。查看SpringDataJPA使用的约定.这是Spring框架的一部分,它根据基于命名约定的方法名称检
我正在尝试在我的project上使用HibernateSTARTSCRIPT!org.hibernate.property.access.spi.PropertyAccessException:Erroraccessingfield[privatejava.util.Datecentaurus.domain.User.created]byreflectionforpersistentproperty[centaurus.domain.User#created]:User{id=0,email='test',created=WedJun0813:06:53BST2016}atorg.hi
我查阅了很多关于DAO模式的资料,我明白了。但我觉得大多数解释都没有说明全部,我的意思是你实际会在哪里使用你的DAO。因此,例如,如果我有一个User类和一个能够为我保存和恢复用户的相应UserDAO,这是正确的方法:Controller创建User对象并将其传递给UserDAO以将其保存到数据库Controller创建用户对象,并在其构造函数中用户对象调用userDAO以将其自身保存到数据库中这是一种代码味道,您缺少Controller将要求创建用户的额外类“UserManager”。UserManager负责创建用户并要求UserDAO保存它我真的觉得第三个选项是最好的,因为Con
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion在阅读了stackoverflow上的一些问答后,我仍然对在我的Web应用程序中正确实现DTO感到困惑。我当前的实现是一个(基于JavaEE的)多层架构(具有持久性、服务和表示层),但具有所有层使用的“通用”包,其中包含(除其他外)域对象。在这种情况下,这些层不能真正被视为独立的。打算一步步去掉commonpackage,但是遇到各种挑战/问题:假设持久层将使用一个类myproject.p
我对网上找到的一个例子有点困惑-spring&hibernate(要点4.Model&BO&DAO)。有模型、DAO和BO类(+DAO和BO接口(interface))。我不太清楚的是,如果DAO和BO具有完全相同的功能(唯一的区别是BO有一个DAOsetter),为什么它们被分成不同的类。作者仅解释了模式:isusefultoidentifythelayerclearlytoavoidmessuptheprojectstructure但对我来说它似乎设计过度(至少在这种情况下)。我知道这个例子很简单,但是这个类分离有什么用呢?有人可以举个例子吗? 最佳答案
DTO和实体有什么区别?详细来说,这些是我的问题:DTO应包含哪些字段?例如我的实体类是:@EntitypublicclassMyFirstEntityimplementsSerializable{@Id@GeneratedValueprivateLongid;privateStringstringData;@OneToOneprivateMySecondEntitymySecondEntity;@OneToManyprivateListmySecondEntitesList;}@EntitypublicclassMySecondEntityimplementsSerializable
我的问题是:JPAmerge在无状态Web应用程序中有作用吗?SO上关于JPA中的merge操作的讨论很多。还有一个greatarticleonthesubject这与JPA通过更手动的Do-It-Yourself过程合并形成对比(您通过实体管理器找到实体并进行更改)。我的应用程序有一个丰富的域模型(ala域驱动设计),它使用@Version注释以使用乐观锁定。我们还创建了DTO,作为我们RESTfulWeb服务的一部分通过网络发送。这个DTO层的创建还允许我们向客户端发送它需要的一切,而不是它不需要的。到目前为止,我理解这是一个相当典型的架构。我的问题是关于需要更新(即HTTPPUT