GWT中应用程序的最佳架构

时间:2011-08-05 13:27:25

标签: java javascript gwt

我现在开始学习GWT,并且有一个非常普遍的问题,我可以自学一点经验,但我不想错误地开始,所以我决定问你。

我总是使用JSF进行开发,为bean,控制器和管理员提供单独的包。

然而,由于GWT使用RPC,我不会有管理员,对吧? 那么,GWT会自动为我处理用户会话,还是我必须自己处理?

项目的最佳包结构是什么?

最好使用RPC,还是创建Web服务并访问GWT中的Web服务?

很难在tomcat服务器上托管应用程序?

是否有测试表明哪个服务器对GWT更快?

谢谢。

2 个答案:

答案 0 :(得分:4)

However, as the GWT uses RPC, I will not have managedbeans, right? 

是的,GWT RPC使用POJO。

So, GWT automatically handles user session for me, or do I have to do it myself?

GWT是纯AJAX APP - 客户端代码(通常)在一个浏览器窗口(类似于gmail)中运行,不会重新加载网页。这意味着应用程序状态始终存在 - 不需要会话(作为保存状态的手段)。您仍然可能需要用于用户身份验证的会话,但这通常由servlet容器处理。

What is the best package structure for the project?

三个包:clientservershared。 GWT客户端代码为Client,服务器(也为RPC)代码为server,客户端和服务器均使用POJO为shared

It is best to use RPC, or create a webservice and access the webservice in GWT?

使用GWF-RPC或(更好,更新)使用RequestFactory。

It's hard to host the application on a tomcat server?

这很简单:GWT客户端代码编译为JS / html,并作为任何静态内容托管。 RPC服务器代码只是Servlets - 正常的web.xml注册。

Is there a test saying which server is faster for GWT?

毫无头绪,但恕我直言并不重要,因为大多数延迟都来自数据库和网络。

答案 1 :(得分:1)

另请查看http://code.google.com/p/gwt-platform/

这个框架非常棒,并且遵循谷歌提供的所有建议的最佳实践(例如MVP),并为您提供对gin,gwt调度程序,网站爬行,带有令牌的历史记录,通过gwt异步等进行代码拆分等的大力支持。

如果你想建立一个好的项目结构,试着使用maven gwt插件(http://mojo.codehaus.org/gwt-maven-plugin/),它可以帮助你设置一个初始结构并管理你的构建过程。