当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:12:00  来源:本站整理

操纵sqlRest将数据库转换为REST气势的Web服务[Java编程]

赞助商链接



  本文“操纵sqlRest将数据库转换为REST气势的Web服务[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

随着 Web 2.0 的 发展,REST(Representational State Transfer)气势的 Web Service 得到广泛的利用,各种 REST 框架如雨后春笋般发展起来.当我们从事 Web 2.0 的实践时,越来越感遭到服务器端的 REST 服务在应对 MIS 一样的信息系统以及和数据库的交互时还存在很大的问题,比方效率低下,反复编码等.

比方,我们假定以下的场景:需求利用 Web 2.0 的技术来实现一个信息管理系统,这个系统的主要的任务就是对后台数据库的业务数据的操作,管理和报表.这样的场景在如财政等这样的业务系统中非常常见.我们可以利用实体 Bean 实现 EJB,再将该 EJB 包装成为 REST 服务,大概利用轻量级的 Hibernate,配合各种 Java 的 REST 框架来实现,但是无论若何都不可避免需求做很多的反复编码,大概要实现大量的数据库操作.既然 REST 将服务当作是资源的服务,那么我们可以认为数据库中的数据也是一种资源.有没有办法直接将它们转化为 REST 服务呢?sqlRest 恰是这样一种框架,它是一种高效的轻量级数据库 REST 服务办理筹划,可以通过简单配置直接将数据库中的数据表露成 REST 气势的 Web 服务,并将数据库的 CRUD 操作和 REST 服务的 GET, DELETE, POST, PUT 接口对应起来.

本文将介绍这一框架的配置和运行,并谈论若何测试 REST 服务,最后给出了配置 DB2 实现 DB2 中的资源 REST 化的参考办法,相信会对 Web 2.0 和 REST 服务的开辟者带来一定的参考代价.本文的示例基于 Eclipse 3.2 和 JDK1.5,Servlet 容器利用的是 Tomcat 5.5 .

sqlRest 第一步

下载和运行

sqlRest 是 sourceforge 站点上的一个开源项目,它利用一个 Servlet 实现了基于数据库的 REST 引擎,可以自动的将数据库的表映射成 REST 资源,用户可以利用 URL 获得表的内容 (XML 格局),并举行相关操作.

我们首先下载一个二进制的包来运行 sqlRest 示例.您可以通过 http://sourceforge.net/projects/sqlrest/ 拜候该项目.在首页上点击下载,进入下载页面下载 sqlrest-0.3.2 版本,这也是目前唯一可用的版本.

下载后解压缩,请先确认安装了 JRE 1.4.1 和 TOMCAT 4.1 以上版本.将解压缩目录内 webapps 目录下的 sqlrest 目录拷贝到 TOMCAT 的 webapps 目录中.启动 TOMCAT,在您的浏览器内键入 http://localhost:8080/sqlrest, (假如您的 TOMCAT 的端口是 8080),您将瞥见如图 1 的 sqlRest 的 Web 界面:

图 1. sqlRest 初始 Web 界面

该页面描写了数据库中有 4 种可用的 REST 资源,这阐明安装成功,我们也便可以开始进一步的工作.

这里读者需求注意,按照 JRE 版本和范例的差别,大概在启动的时刻 TOMCAT 会出错(参考如图 2 的错误信息),sqlRest 的 Servlet 无法加载,造成错误的缘由是我们下载的 sqlRest 是二进制版本,而编译 sqlRest 的 JRE 和我们运行 Tomcat 的 JRE 之间存在不兼容.办理办法是获得 sqlRest 的源码,在运行环境中重新编译,再将编译的 class 文件拷贝到 Tomcat 中的 webapp/sqlrest/WEB-INF 目录中的 classes 目录下重新启动便可以了.假如挑选从源码项目开始编译和布置运行,便可以避免这一错误(TOMCAT 和 Eclipse 利用的是同一 JRE),下面您将理解到若何从 CVS 获得代码并从源码开始编译布置 sqlRest .

图 2. 差别的 JDK 的兼容性问题惹起的启动错误


  以上是“操纵sqlRest将数据库转换为REST气势的Web服务[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 操纵Squid + DNSPOD 搭建CDN服务器心得
  • 操纵SQLyogEnt对Mysql数据库举行转移
  • 操纵squid反向代理功效办理WEB网站被封80端口(不缓存)
  • 操纵SQL Server的扩大属性象access一样显示列的注释
  • 操纵SQLServer的全局暂时表避免用户反复登录
  • 操纵SQL移动硬盘文件
  • 操纵SQL Server索引提高数据处理的效率
  • 操纵SQLServer发邮件
  • 在Java中操纵SQLite的教程
  • 操纵sqlRest将数据库转换为REST气势的Web服务
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .