Javascript + Servlet的鸿沟如何抹平以构建富客户端应用?[SOS]-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Javascript + Servlet的鸿沟如何抹平以构建富客户端应用?[SOS]

简介: 在Silverlight的世界中,RIA Service + Silverlight可以无缝的进行集成,如有一个实体对象和关联的复杂子对象,在这里可以非常简便的实现: 1、构建公用的Domain Class定义 2、Silverlight客户端可以使用双向绑定和以上的对象关联 3、服务端可以使用以上的Domain Class进行存储 因此非常方便,WCF框架已经提供了WCF Trackable支持,如某个对象内容的变化内容可以跟踪,等等。
  • Silverlight的世界中,RIA Service + Silverlight可以无缝的进行集成,如有一个实体对象和关联的复杂子对象,在这里可以非常简便的实现:

1、构建公用的Domain Class定义

2、Silverlight客户端可以使用双向绑定和以上的对象关联

3、服务端可以使用以上的Domain Class进行存储

因此非常方便,WCF框架已经提供了WCF Trackable支持,如某个对象内容的变化内容可以跟踪,等等。。

 

  • Flex中配合BlazDS也可以非常方便的处理这个问题。

 

  • 而在JavaScript+ Servlet的环境以上对象该使用哪种方式呢?

查阅了相关的资料,归纳起来,目前查到的主要有:

1、Java方面的改善方案

GWT:其中的rpc传递客户端和服务端公用的对象,客户端界面元素的双向绑定,好像也没有达到这个程度

ZK:这个以servlet为中新的框架倒可以简化处理,但毕竟消耗了大量的服务器资源

...

2、JavaScript的改善方案

KnockoutJS:对MVC的客户端开发很强,但JavaScript Object如何和Domain Object公用呢,写两遍太复杂了吧

Jquery Template: 没有仔细看,但对于这个鸿沟还是不好处理

...

 

现在常用的SSH框架中的Domain Object如何在客户端中结合JavaScript构建一个比较完善,而且代码不要反复重复的解决方案呢?

园子中是否有这类的开发推荐?真是一个困惑的问题!

 

最理想的方式[待解]:

  • 对象可以在服务端、客户端共享,以减少前端、后端的辅助编码
  • 客户端可以双向绑定该对象,如jQuery UI easyUI等界面元素
  • 对象传递到服务端可以使用hibernate/JPA等持久化到数据库中(或者使用automapper这类的转换)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: