我感兴趣的是将现有的使用Spring/Struts2/Hibernate编写的应用程序移植到GAE。我没有阅读过很多关于这方面的成功案例,所以我首先想知道在那里使用它们是否明智。我想摆脱休眠,并使用谷歌数据存储,因为它很明显休眠不是一个好的GAE选择。所以我的主要问题是指Struts2(webworks)/ Spring。我的应用程序使用简单的JSP页面,没有其他模板机制。什么web框架可以在Google应用程序引擎上成功使用?那么Struts/Spring怎么样?
我的问题是指以下几个方面:
- 目前每个网页都有相关的Struts动作。每个请求都由struts dispatcher进行,然后根据配置文件将其分派到特定的操作类,然后调用特定的jsp。
- 一切都由Spring实例化(动作,工厂,休眠层,...)
- 安全性通过Spring Security(以前的acegi)进行管理。
我的第一印象是我应该摆脱Spring,因为GAE应该管理所有对象以便在分布式环境中工作。我对Struts有一些反对意见。但是,如果我摆脱他们,我不知道我是否应该这样做,以防万一我会,而是选择什么。 GAE是否足够提供我需要的所有东西?我假设实例化应该由GAE处理,以获得真正可以解决的问题。会话管理怎么样,安全&用户权限? GAE提供了很好的机制来管理它们,或者我应该像经典的jsp解决方案一样手动处理它们?我会以一个巨大的web.xml结束吗?
是否有任何框架可以很好地适用于GAE,并且可以取代Spring/Struts?我会很乐意从在GAE中遇到过这些问题的人那里找到答案。