提问人:Lukas 提问时间:10/10/2008 更新时间:10/17/2008 访问量:1474
如何将基于 Spring + Hibernate 的应用程序后端与纯 HTML 和基于 AJAX 的客户端连接?
How to connect my Spring + Hibernate based application backend with pure HTML and AJAX based client?
问:
我想通过 AJAX 调用我的 DAO 的方法。我在这方面很陌生,所以我想问一下最好的方法是什么。是否可以将我的 bean 发布为 Web 服务并使用 jQuery 调用它们?我认为这是不可能的:)我也读过关于直接 Web 远程处理的文章,但我不知道该走哪条路......
正如我所看到的,这里有很多有经验的人,所以我认为你可以给我指明方向。提前致谢
答:
1赞
Miguel Ping
10/14/2008
#1
你必须通过 http 公开你的 DAO 或 bean。通常,在 DAO 层上方创建一个层,以通过 HTTP 公开您的服务,这些服务可用于任何 AJAX 框架(如 jQuery)。jQuery和其他框架最终要做的是使用一个名为XMLHttpRequest的特殊异步请求,然后解析服务器响应(可以是任何内容,纯HTML,JSON,XML等)并对其进行处理。
这是我找到的一个链接,显示了 Spring 和 DWR 与 AJAX:Bram Smeets 博客。
2赞
Dónal
10/17/2008
#2
与其直接公开 DAO bean,不如创建一些 Spring MVC 控制器 bean,并从客户端调用它们(使用 AJAX)。理想情况下,控制器不应直接调用 DAO,而应调用服务 bean(并且服务 bean 应调用 DAO)。这种方法的一个优点是,您可以将服务方法定义为事务性方法,即每当服务方法开始时,都会启动事务,并且每当服务方法返回(无异常)时,事务就会提交。如果事务的边界是 DAO 方法,则不可能在单个事务中包装多个数据库调用。
当然,你没有理由需要使用Spring MVC——任何Web框架就足够了。
评论