我需要将 GWT 与基于服务的域层一起使用——而不是使用带有 DAO 的 bean。具有 MVP 和 RequestFactory 的 GWT 2.1 架构是否适合此?还是我应该继续使用 RPC?
谢谢
我需要将 GWT 与基于服务的域层一起使用——而不是使用带有 DAO 的 bean。具有 MVP 和 RequestFactory 的 GWT 2.1 架构是否适合此?还是我应该继续使用 RPC?
谢谢
GWT 2.1.1 添加了一种机制Locator
,ServiceLocator
允许您控制 RequestFactory 服务器代码如何获取对实体和服务对象实例的引用。
例如,您可以声明如下代码
class MyService.class {
// Note that this is not a static method
public void doSomething() {....};
}
class MyServiceLocator implements ServiceLocator {
public Object getInstance(Class<?> clazz) {
// Or use Guice, Spring, whatever provides instances of MyService
return new MyService();
}
}
interface MyRequestFactory extends RequestFactory {
@Service(value=MyService.class, locator=MyServiceLocator.class)
interface ServiceRequest extends RequestContext {
Request<Void> doSomething();
}
ServiceRequest myService();
}
如果您需要更多地控制 RequestFactory 如何与您的服务器域对象或服务代码交互,您可以将实例ServiceLayerDecorator
注入服务层。