仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 736|回复: 12
打印 上一主题 下一主题

[学习教程] 发布一篇Jenabean:将JavaBeans轻松绑定到RDF

[复制链接]
第二个灵魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:16:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你通过从书的数量和开发周期及运行速度来证明:net网页编程和ruby要比java简单。
Java开辟职员是侥幸的,由于在Jena中他们能够使用一种优秀的RDF框架。Jena供应了一个编写和读取RDF的API,它能够以多种体例举行保留和耐久化。
Jena的计划方针是能够优秀地处置RDF数据模子,正如JDBC合适处置干系模子一样。数据库使用程序中编写的大批代码都用来保留Java对象,另有一些代码用来从数据库中会萃对象。用Java代码编写的语义Web使用程序面对一个相似的成绩:它们必需完成Java对象和RDF之间的互相转换。因而,开辟职员必需编写大批的代码来打消本身模子(通常是JavaBeans)和Jena的以RDF为中央的API之间的差别。
本文展现Jenabean的Java-to-RDF绑定框架怎样简化上述历程并削减所需的代码量。您将审阅一些Jena客户端代码并将其与Jenabean的基于JavaBean的编程模子对照。起首检察一个复杂的例子,我将向您展现怎样完成以下操纵:
将一个bean保留为RDF
将其属性与特定的RDF属性绑定
将其与其他对象联系关系
再次回读bean
Jenabean编程模子
思索清单1中的复杂RDF示例,为便利浏览,它利用了N-triple(N3)格局:
清单1.RDF示例(N3格局)
<http://www.ckuyun.com/developerworks/xml/library/j-jena/>
  a   dc:Article;
  dc:creator"PhilipMcCarthy"^^xsd:string;
  dc:subject"jena,rdf,java,semanticweb"^^xsd:string;
  dc:title"IntroductiontoJena"^^xsd:string.
清单1申明了“Jena简介”这篇文章由PhilipMcCarthy撰写而且主题包含jena、rdf、java和语义web。辞汇表是DublinCore元数据分类的一部分。要利用Jena的原始的JavaAPI复制这些RDF声明,您大概要实行相似清单2的事情:
清单2.利用原始的JenaAPI断言RDF示例
StringNS="http://purl.org/dc/elements/1.1/";
OntModelm=createModel();
OntClassarticleCls=m.createClass(NS+"Article");
Individuali=articleCls.createIndividual(
 "http://www.ckuyun.com/developerworks/xml/library/j-jena/");
Propertytitle=m.getProperty(NS+"title");
Literall=m.createTypedLiteral("IntroductiontoJena");
i.setPropertyValue(title,l);
Propertycreator=m.getProperty(NS+"creator");
l=m.createTypedLiteral("PhilipMcCarthy");
i.setPropertyValue(creator,l);
Propertysubject=m.getProperty(NS+"subject");
l=m.createTypedLiteral("jena,rdf,java,semanticweb");
i.setPropertyValue(subject,l);
m.write(System.out,"N3");
<p>
对于一个大型项目,如果用java来作,可能需要9个月,并且可能需要翻阅10本以上的书,但如果用ruby来作,3个月,3本书就足够了,而.net网页编程也不过3,4本书足以,这就是区别。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-1-20 18:52:10 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
乐观 该用户已被删除
板凳
发表于 2015-1-24 23:19:17 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
金色的骷髅 该用户已被删除
地板
发表于 2015-2-2 13:43:54 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
变相怪杰 该用户已被删除
5#
发表于 2015-2-3 09:51:25 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
小妖女 该用户已被删除
6#
发表于 2015-2-5 18:57:09 | 只看该作者
是一种突破用户端机器环境和CPU
透明 该用户已被删除
7#
发表于 2015-2-13 05:12:18 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
山那边是海 该用户已被删除
8#
发表于 2015-2-13 07:03:28 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
第二个灵魂 该用户已被删除
9#
 楼主| 发表于 2015-3-3 17:22:05 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
简单生活 该用户已被删除
10#
发表于 2015-3-6 18:26:20 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
再见西城 该用户已被删除
11#
发表于 2015-3-13 05:09:48 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
小魔女 该用户已被删除
12#
发表于 2015-3-13 05:09:48 | 只看该作者
是一种使用者不需花费很多时间学习的语言
因胸联盟 该用户已被删除
13#
发表于 2015-3-20 13:32:34 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 02:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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