gpt4 book ai didi

jakarta-ee - RemoteServiceServlet 和 RemoteService 有什么区别?

转载 作者:行者123 更新时间:2023-12-04 00:44:29 25 4
gpt4 key购买 nike

我知道第一个是类,第二个是接口(interface),但重点是,为什么客户端服务应该扩展 RemoteService 并为 ServiceImpl 类扩展 RemoteServiceServlet

那么幕后究竟是什么?!

最佳答案

您正在尝试比较苹果和橙子。请阅读docs并制作任何简单的演示 project清楚地理解这些概念。

RemoteService是客户端RPC接口(interface)应该扩展的接口(interface)。 RemoteServiceServlet 是服务器上 RPC 服务实现的 servlet 基类。它反序列化来自客户端的请求并序列化传出的响应。

要使用 RPC,您需要在 client 包中创建和定义自己的接口(interface),应该扩展 RemoteService接口(interface)并指定服务器应实现的方法。

package com.yourproject.client;

import com.google.gwt.user.client.rpc.RemoteService;

public interface CustomInfoService extends RemoteService {
Info getInfo(String infoId);
}

然后你需要在服务器端提供这个接口(interface)的实现。这应该是 server 包中的一个 servlet,它扩展了 RemoteServiceServlet并实现 CustomInfoService

package com.yourproject.server;

import com.yourproject.client.CustomInfoService;
import com.google.gwt.user.server.rpc.RemoteServiceServlet;

public class InfoServiceImpl extends RemoteServiceServlet implements CustomInfoService {
public Info getInfo(String infoId) {
//implementation (for example getting info from database)
}
}

确保正常工作,您还需要设置 servlet 映射,创建异步接口(interface),调用它并在生成的回调中处理结果,实现接口(interface) SerializableIsSerializable对于通过 RPC 传递的实例类。

关于jakarta-ee - RemoteServiceServlet 和 RemoteService 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13372633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com