浏览 1968 次
锁定老帖子 主题:如何建立动态的依赖关系
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-30
但是类A又依赖于多个属性,是否需要队列来处理Socket,A所对应的Socket端口是多少。因此问题是:如何在服务端创建A的实例,然后将已定义好的属性注入到A中? 解决方法之一: (1)基于Spring,将创建A的类称为W,作为Spring的一个bean; (2)A的“包名+类名”作为W的String属性; (3)A所依赖的队列和Socket端口等属性定义为一个属性集合Map,该Map作为W的一个属性。 在W运行时,对于每个客户端向服务端发起的请求,都会利用反射建立A的实例,然后将W的属性Map通过调用A的setMap方法将这些属性传递到A的实例中。 缺点:(1)W包含了对A的属性的依赖,破坏职责单一性。 (2)在实现A时,需要实现setMap方法,处理由A传递过来的参数。分散A的业务职责。 (3)Map的key在编译时不能进行检查。 有没有更好的方法解决这个问题呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |