设为首页 收藏本站
查看: 1393|回复: 0

[经验分享] 第一步 配置D2RQ环境

[复制链接]

尚未签到

发表于 2016-11-22 06:00:45 | 显示全部楼层 |阅读模式
​第一步 配置D2RQ环境 Getting Started
2013年10月15日 15:16:55
老套路,还是先配置环境,没查到什么中文资料,写在这里,供大家参考。有需要交流的可以加QQ: 1q7q1q5q3q6q0q1q8(去掉中间的q)。

Quick start #

准备:

  • 配置java1.5及以上的JDK。
  • 可用的数据库,Oracle, SQL Server, PostgreSQL, MySQL or HSQLDB,都可以。
  • 可选)J2EE servlet容器,D2R即可以作为一个独立的Web服务器运行,也可以在其他现有的servlet容器内运行。

需要做的:

  • 下载D2RQ包,放到合适的位置。
  • 下载相应的JDBC,把JAR文件放在D2R Server的/lib目录下。Sun公司提供了一系列JDBC的下载,注意驱动的名字(e.g. org.postgresql.Driver for PostgreSQL or oracle.jdbc.driver.OracleDriver for Oracle),以及JDBC的URL(e.g. jdbc:mysql://servername/database for MySQL),这些在驱动的文件中可以找到。D2R Server中已经包括了MySQL和PostgreSQL。
  • 使用“创建映射”这个工具,创建一个映射文件,在D2R Server目录下运行:

    generate-mapping -o mapping.ttl -d driver.class.name
        -u db-user -p db-password jdbc:url:...
    其中,mapping.ttl是新建的映射文件,-d可以为MySQL跳过。

    我运行了以下命令:
    ./generate-mapping -o aniuer.ttl -d com.mysql.jdbc.Driver -u root -p asdfasdf jdbc:mysql://localhost/radar
    结果提示有警告,即我的表中没有设定主键。

  • 启动D2R Server。
    d2r-server mapping.ttl

    我运行了以下命令:
    d2r-server aniuer.ttl

  • 测试服务器,用浏览器打开 http://localhost:2020/。出现了预期的界面。 DSC0000.png
    可以浏览数据库的内容(真的可以),或者使用SPARQL浏览器执行查询,并可以通过几种格式来显示结果。
  • 在命令行下使用d2r-query工具执行SPARQL查询
    d2r-query mapping.ttl "SELECT * { ?s ?p ?o }         LIMIT 10"

    我运行了以下命令:
    ./d2r-query aniuer.ttl "SELECT * { ?s ?p ?o } LIMIT     10"
    结果为:
    DSC0001.png
    或者从文件中加载查询信息,假设这里有一个query.sqarql的文件(这个先不测试了)
    d2r-query mapping.ttl   @query.sparql

  • 运行dump-rdf工具(rdf转存工具)创建rdf的转存。
    dump-rdf mapping.ttl -o   dump.nt


    我运行了以下命令:(加上-o的话会报错:Too many arguments)
    ./dump-rdf aniuer.ttl


Customizing the D2RQ mapping #

当你能够正常运行之后,下一步通常就是通过自定义D2RQ映射,来改进RDF的输出。
D2RQ平台使用D2RQ Mapping Language把关系数据库的内容映射为RDF数据。一个D2RQ映射指定资源如何被识别和使用哪些属性来描述资源。
generate-mapping脚本从数据库的表结构中自动创建D2RQ映射。这个工具为每一个数据库创建一个新的RDF词汇表,把表名作为类名,把列名作为属性名。如果你自定义映射并把自动生成的术语更换为更广为RDF词汇表接受的术语,那么语义网的客户端应用就会更好地理解你的数据。
映射文件可以被任何文本编辑器进行编辑, D2RQ language specification中描述了它的语法。
D2R Server会自动检测映射文件的改变,当你点击浏览器的刷新按钮时,就会重新立即加载。
Note: HTML和RDF浏览器接口仅适用于相对URI的模式,并且不包含#字符。例如,一个URI模式,正如entries/@@mytable.id@@是可浏览的,但http://example.com/entries#@@mytable.id@@就不行。映射生成器只生成可浏览的模式。不可浏览的模型只能在SPARQL接口和RDF转换中使用。  


      


来自为知笔记(Wiz)  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-303600-1-1.html 上篇帖子: Moon.Orm 5.0(MQL版)及之前版本的开源计划 下篇帖子: 一条insert语句批量插入多条记录
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表