我正在GWT中构建一个项目,它提取RSS源,在feed上执行正则表达式(使用JSNI在javascript中),然后将结果数据存储在用户可以访问它的数据库中。
截至目前,我一直在编写客户端.java文件中的所有代码,希望我可以简单地将其传输到服务器端。如何将部分代码移动到项目的服务器端?我现在拥有的代码太庞大,无法在客户端运行,因此id喜欢在服务器端运行并将结果存储在数据库中。是建议使用GWT编写服务器端代码还是应该使用其他框架或PHP?理想情况下,我希望用GWT开发整个项目,因为到目前为止它对我来说非常好。
我一直无法找到连接到数据库所需的资源,并在GWT的服务器端更新它。我可以用Hibernate做到这一点吗?
非常感谢!
答案 0 :(得分:2)
听起来像你可以在服务器端运行整个事情而不使用GWT。
如果您确实想在客户端上进行处理,则需要通过HTTP将结果提交给服务器,可能是文本。
您可以使用GWT RPC执行此操作,使用RequestBuilder执行HTTP请求,或者最后使用包含隐藏字段的FormPanel。 GWT RPC意味着您必须用Java编写服务器端代码。另外两种方法可以是任何讲HTTP的平台:PHP,Python,.NET ......
注意:JSNI很强大,但可以说你正在抛弃GWT的力量 - 也就是说,用Java编写客户端代码的能力。
答案 1 :(得分:1)
如果它在GWT中运行,那么它将以Java(几乎)运行:如果它不直接关注小部件或JavaScript(通过JSNI)。显然,您不希望任何代码在服务器上处理小部件或JSNI。
所以继续前进吧。
要进行通信,您将使用GWT-RPC - 您的服务器代码只是作为具有Java servlet提供的所有强大功能的servlet运行,包括使用Hibernate和其他Java框架的能力。您的服务器代码保留为GWT应用程序的一部分,但既不会转换为JavaScript也不会部署在客户端上。
关于GWT应用程序架构的单一最佳资源是here。