首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GWT可以这样做吗?如果是这样,我们可以使用的最好的后端java技术是什么?

GWT可以这样做吗?如果是这样,我们可以使用的最好的后端java技术是什么?
EN

Stack Overflow用户
提问于 2011-01-04 23:37:19
回答 3查看 668关注 0票数 4

我使用微软技术开发web应用程序已经有很长时间了,但现在我被要求在一个Java Web项目上构建一个非常大的应用程序。出于某种原因,我被迫使用GWT作为前端;我读到了一些关于它的评论,有些人说这不是大型/企业应用程序的最佳选择(在这种情况下,它几乎和ERP一样复杂)。另一个要求是:允许连接到多个数据库,使用快速开发技术,并具有低性能成本(用户不喜欢等待页面加载)……

所以问题是:- GWT是最佳选择吗?-如果是,我们可以使用的最好的后端(Java技术)是什么?我读到过它可以是Groovy,Spring Roo或者JSF。-我应该使用Hibernate,还是创建另一个轻量级的选项?

提前感谢

EN

回答 3

Stack Overflow用户

发布于 2011-01-05 04:57:08

GWT 是一个严肃的框架,无论是用于大项目还是小项目。在致力于 GWT 之前,您必须意识到:

  • 这是一种基于客户端(浏览器)的技术
  • 它是从 Java 到 JavaScript 的翻译层,其中 JavaScript 开发被消除或减少到最低限度
  • 它能够与服务器(中间层)集成,尤其是与基于 Java 的服务器集成,无论它使用什么技术:JDBC、Hibernate、GAE、专有等。
  • 它是为 Java/桌面开发人员量身定制的,因此如果不是您的背景,请期待陡峭的学习曲线
  • 它需要对 MVP(MVC 的变体)框架有基本的了解
  • 它需要熟悉 JavaScript 浏览器技术
  • 使用 GWT 的大型项目将需要使用 GWT MVP、Guice、gin、gwtp 等支持框架。

很好的类比是 Swing 或 Eclipse RCP。它们提供丰富的 GUI 桌面开发平台,同时与各种基于服务器的技术集成。但是 GWT 的目标平台是支持 JavaScript 的浏览器,而不是桌面。

票数 6
EN

Stack Overflow用户

发布于 2011-01-05 06:56:00

GWT是一个非常强大的平台,适用于所有规模的项目,特别是从2.1开始。Google Wave团队帮助GWT开发了API和practices,这对在大型项目中使用GWT非常有帮助。就.NET背景而言,一开始可能是一个陡峭的学习曲线,但谷歌的GWT入门指南是一个很好的起点,你应该能够快速入门。人们经常忘记的一件事是,GWT实际上只是一个编译器,它模拟了JRE的各个部分,最终它只是HTML、CSS和Javascript。

对于后端技术,有很多选择,但实际上有两个你必须做出的决定。首先,您需要确定web/通信层。在我看来,在我们开始实现之前,您有3种主要的通信类型选择: GWT-RPC、REST(XML或JSON)或SOAP。然而,我更喜欢使用JSON的REST,如果您不需要在GWT之外公开您的服务,那么使用GWT-RPC可能会更好。如果您选择使用REST或SOAP,那么您甚至可以选择不使用Java后端,而是使用.NET来满足您的需求。为此,我将编写一个XSD来描述您的数据模型,并使用.NET来持久化您的数据,并通过REST将您的数据公开为JSON。然后,您可以使用JAXB生成这些类的Java表示,以便在您的GWT客户机中使用,但是您必须去掉所有的XML注解,并将它们修改为overlay types

其次,您需要决定您的持久层。许多人更喜欢Hibernate,但我更喜欢JPA,两者都可以很好地用于企业级应用程序。将Java后端与GWT-RPC通信结合使用的优势在于,您可以使用RequestFactory with EntityProxy,因此您只需通过持久层维护来自客户端的对象的一个版本。

票数 2
EN

Stack Overflow用户

发布于 2011-01-04 23:55:07

首先,你不能使用JSF作为后端,我建议你使用hibernate作为后端,jsf作为前端,特别是新版本的jsf2,它具有CDI的强大功能,我建议你使用Richfaces,Primefaces作为轻量级的jsf组件,还有Seamframeworkas开发平台,如果你使用它,我认为你将拥有最强大的java web技术。

GWT可以在大型项目中为您服务,但是与JSF相比,它可能需要两倍的时间,但是如果您喜欢GWT,您应该看看Vaadin

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4595405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档