GWT非Java后端应用程序结构

问题描述 投票:0回答:1

有谁知道使用非Java后端的GWT应用程序的好例子在哪里? 类似于GWT官方页面上的“联系人”应用程序。 我对以下主题特别感兴趣(这是看到应用程序“后部”部分的方式,但是当然可能有所不同):

  • DTO序列化
  • 通讯层 (最背面的一层)。 它应该使用泛型并与任何抽象DTO一起使用吗? 还有其他任何可行的方法吗?
  • 服务层 ,它使用具有特定DTO的通信层。
  • 请求缓存 应该在服务或通信级别上禁止它吗?
  • 好的抽象 因此,我们可以轻松地将任何部分替换为测试和其他目的,例如使用不同的序列化程序(例如XML,JSON),在管理用户会话时使用不同的服务器行为(用户登录后URL可能会更改)。

我知道,这里有很多类似的主题,但是我还没有找到一个主题,它专注于客户端部分的结构

gwt
1个回答
1
投票

双方都使用REST。 PHP / Python REST服务器端。 GWT客户端。

不要使用GWT-RPC。

以下给出了Java-java REST的准则,但是要移出服务器端Java还有余地。 它解释了为什么REST是合适的。

http://h2g2java.blessedgeek.com/2011/11/gwt-with-jax-rs-aka-rpcrest-part-0.html

REST是行业建立的模式(Google。Yahoo,实际上,每个头脑稳定的机构都部署REST服务)。

REST被抽象为HTTP级别的数据结构。 哪些Java,PHP和Python已建立库以确保DTO完整性。

通讯层(最背面的一层)。 应该使用泛型吗?

不明白问题或问题存在的原因。 只需使用REST模式即可为服务器和客户端之间的非均匀语言以及HTTP请求/响应提供完整性。

如果您在后端使用Java,那么使用泛型将无可避免。 泛型保存代码。 但是广泛使用泛型需要程序员具有同样广泛的可视化能力来可视化泛型。 如果您的后端使用PHP或Python,是否有适用于PHP的泛型? Python泛型? 最好还是留在Java领域或C#领域,而忘了不依赖Java的服务提供商。

您是说DTO多态性吗? 建立服务之前,请不要尝试多态或决定多态。 然后,如果您真正看到需求,就可以灵活地将多态性引入DTO。 但是请尝试避免这种情况,因为使用JSON数据交换时,服务器和客户端之间会变得相当混乱。 特别是如果他们不会说相同的编程语言。

如果您要询问HTTP级别的泛型? 我不知道可以使用XML或JSON承载泛型的任何框架,SOAP,REST。 在那儿? 泛型?

服务层? 休息。

请求缓存? 抓住每个适当的机会。 对于所有会话(例如菜单,菜单/下拉框选择,标签等)的所有公共和静态项目,都有服务提供者缓存查询结果。缓存您的历史记录和位置。

在GWT端缓存记录,以便前进/后退按钮不会触发无意查询。 使用MVP模式和历史记录来管理可能会触发信息重新显示的历史记录遍历。

如果您正在谈论统一信息抽象,则应从JAX-RS开始您的项目以定义/测试API并执行数据抽象。 不执行任何业务逻辑。

然后,在定义了HTTP级API和DTO之后,将服务器端转换为使用您选择的语言,以继续编写更复杂的代码。

顺便说一句,我不会挖掘您的术语“后端”。

对于服务使用者,我们通常使用术语客户端,对于服务提供者,使用服务器端,对于数据存储/持久性访问使用后端,对于提供数学/科学/图形分析/综合所需的辅助/辅助软件,使用中间层或中间件。

如果我们的术语不一致,我可能会错误地回答这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.