使用DTO Factory时需要注意的是:不需为每个Entity EJB定义一个Factory。可以为一系列相关的Entity EJB创建一个Factory,或者只创建一个Factory。
Generic Attribute Access
使用Entity EJB作为商业数据层时,我们首先需要从数据库加载数据,创建对应的Entity EJB实例,之后对内存中Entity EJB实例的属性进行相应操作。对属性的操作比较直接的做法是:直接调用Entity EJB的getXXX()/setXXX(),通常利用EJB2.0的本地接口;通过DTO Factory生成DTO。但这两种做法都存在如下问题:
1. 当Entity EJB的属性特别多时候,以上做法会带来复杂罗嗦的代码,使EJB变的庞大无比。
2. 使Entity EJB的客户端(比如Session EJB)和Entity EJB的接口紧密关联。Entity EJB属性的增删都需要更改客户端代码,给项目开发和维护带来不便。
事实上可以利用更通用的方式访问Entity EJB的属性,即定义Generic Attribute Access Interface。见下图8:
图8:Generic Attribute Access Interface示例
文章来源于领测软件测试网 https://www.ltesting.net/