零件jsp技术

jsp技术  时间:2021-02-26  阅读:()
苇20卷第5期200i年9月无锡轻I大学学报JournalofWuxiUniversityofLightIndustryV0120No5Sep2001文章编号:1009—038XC2001】050522—04基于XML的汽车零部件网站数据存储与查询的实现李志华,施明辉,孙荣胜(江南大学信息工程学院,江苏无锡214036)摘要:以一个汽车零部件网站为例,介绍j基于XML的敷据存储,结合关系数据库、MSXMI.
提供的JAVA类等I具,实现7XML信息查询的技术.
关键词:标记语言;文档类型声明;汽车零部件;存储;查询系统中图分类号:TP311.
113文献标识码:ATheRealizeationofStorageandQueryforPartsofcarsonInternetBasedonXMLLIZhi—hua,SHIMing—hui,SUNRong-sheng(SchoolofInformationEngineering.
SouthernYangtzeUniveA'sity,Wuxi214036,China)Abstract:Anewmethodtosolvethepmplemofthedatawhichcharacterizedwithlayerwasfoundinthepaper,andthemethodwhichWaSdevelopedfromthetraditionalwaycombinesXMLtechnologywithDBMStechnologywasalsoobtained.
ThispaperalsointroducedtheresearchforcombiningXMI—withorganization,queryanddisseminationofthepartsofcarsonIntemet.
Keywords:XMI.
;DTD;partsofcars;storage;querysystemXMI,(ExtensibleMarkupLanguage可扩展标记语言)同HTMI,一样,是SGMI.
(标准通用标记语言)的一个子集,定义了结构化表达数据的标准格式.
在表达复杂的产品数据文档时具有很大的优势在存储信息方面,其数据的结构性虽然不及数据库,但比数据库有更好的描述能力,比较适合于描述半结构数据.
并且XML文档是自描述的.
结构和内容共存,与显示实现了真正地分开.
近年来.
基于web数据库的XML应用.
大多是通过开发中间程序将传统的数据库中的数据转化为XMI.
文档,用XML-QL进行查询.
并将结果用XMI,文档显示给用户.
这一方式存在以下不足:①当数据量相当大时,转换后的xml文档将占用相当大的存储空间,造成存储空间的重复浪费;②对具体数据库的基于脚本级的静态转换,实际意义不是很大.
而要实现针对Internet上的异数据库的动态转换,中间程序将相当复杂.
难以实现.
本系统通过把DBMS和XML相结合,借助传统DBMS在数据库检索方面的优势和成熟技术,用SQL查询后台数据库取得部件XMI,文档存储位置、零件编号等信息,根据零件编号"Num"关键字,从文件服务器中的XMI.
文档中取得相应汽车零部收稿日期:2001—06—04;修订日期:2001—09—13.
基金项目:江苏省计算机信息处理技术重点实验室项目(K99088)资助课冠作者简升:李志华(1969一),男(土家族).
湖南保靖人,计算机应用硕士研究生.
讲师万方数据第5期李志华等:基于XMI.
的汽车零部件网站数据存储与查询的实现523件的详细描述,并用XMI.
将结果显示给用户.
有效地避免T上述问题1基于Internet汽车零部件网站的体系结构本系统的建设主要是为了面向零部件生产产家、中间商、仓储商、私人用户在生产、经营零部件和汽车维护时,能对整个行业产品的行情有一个较全面地了解.
整个系统的设计是通过DBMS与XML数据相结台的方法实现的.
其中查询子系统的设计与平台无关整个系统的核心是系统管理程序,它是通过继承微软XMI.
DOM(document.
bjeotmodeI,文档对象模型)分析器MSXML中的JAVA类编写而成的一组Java程序,主要负责获取查询关键字并协调汽车零部件的XMI.
元数据与后台数据库之间的联系,并访问汽车零部件XMI,元数据.
数据库的各表中主要是为了方便用户查询而保留的一些查询关键字和XMI.
元数据的存储信息.
Parser是XML语法分析器,主要是对XMI.
文档和DTD进行解析和合法性检验.
系统中应用现成的JayaParser,如IBM的XMI.
4J或SUN公司的ProjectX,它们都符合SAXl.
0和DOMl.
O标准.
整个系统的体系结构如图1所示.
圈l系统的体系结构Fig.
1Theslruetureofthesystem2汽车零部件数据的存储2.
1汽车零部件数据的数据结构为了实现高效率的网上查询,必须很好地解决汽车零部件数据的存储问题.
设计过程中.
通过对汽车零部件的分析,得出如下数据结构,如图2所示.
很显然这是一棵树.
系结点的子结电是部件结点,部件结点的子结点是零件结点,零件结点的叶结点即为该零件的描述信息也就是用户需要的信.
恩.
汽车发动机系……底盘系车身系……电器仪表……l转动部件行驶部件制动部件转向部件广——J]悬架……零件名称型号/规格价格产品个性描述适应车型生产产家联系方式图2汽车零部件数据结构图Ft窖一2Thedalastructureforthepartsofcars2.
2数据结构到XML的文档映射(!
ATTLIST产品idID#REQUIRED)2,2.
1DTD的设计为了提高汽车零部件信息的(!
ELEMEMNT零件名(#PCDATA))通用性,系统利用XMI,对汽车零部件信息进行统(!
ELEMEMNT型号规格(#PCDATA))一描述用XMI.
定义了适合远程查询的DTD,以部《fEI.
EMEMNT价格(#PCDATA))件的DTD(parts.
dtd)为例,具体定义如下:(!
EI.
EMEMNT产品个性描述(#PCDA《!
DOCTYPEDOCUMENTTA))[(!
ELEMENT部件(产品*))《!
ELEMEMNT适应车型(车型*))(!
ATTl.
1ST部件idCDATA#REQUIRED)(!
EI.
EMEMNT车型(#PC'DATA))(!
ELEMENT产品(零件名+f型号规格l价(!
ELEMEMNT生产产家(厂家*))格l产品个性描述I适应车型|生产产家))(!
ELEMEMNT厂家(名称f地址J邮编l联系万方数据524无锡轻I大学学报第20卷电话I传真I电子邮件i阿站))(!
ELEMEMNT名称(#PCDATA))(!
ELEMEMNT地址(#PCDATA))(!
ELEMEMNT邮编(#PcDATA))《!
ELEMEMNT联系电话(#PcDATA))(!
ELEMEMNT传真(#PcDATA))(!
ELEMEMNT电子邮件(#PCDATA))(!
ELEMEMNT网站(#PCDATA))]DTD的引用有两种方式:内部DTD和外部DTD.
在本系统中使用外部DTD.
2.
2.
2系、部件、零件结点到XML文档的映射XMI.
可以灵活地定义具有确切含义的元素及其属性且结构嵌套.
从汽车零部件的数据结构图分析可知.
用XMI.
标记语言能方便地对此加以描述.
每一个部件结点由若干个零件子结点组成.
即每一个部件XML文档由若干个"(产品)"tag组成.
每一对"(产品)《/产品)"tag(即一棵"产品"子树)对应一个零件结点.
其中的xml描述的就是该零件的详细信息.
以"行驶部件"的XML文档的典型结构为例,零件"悬架"是它的其中的第一棵"产品"子树.
XMI,文档如下":0"encoding="GB2312")(!
DOCTYPE行驶部件SYSTEM"parts.
dtd")(行驶部件id="22000")(产品id="001")(零件名)悬架(/零件名)(型号规格)独立悬架《/型号规格)(价格)89.
00(/价格)(产品个性描述)铸造(/产品个性描述)(适应车型)i车型)奥迪(/车型)(车型)桑塔纳(//E型)(车型)夏利(/车型)(/适应本型)(生产产家)(厂家)(名称)无锡开源集团(/名称)(联系电话)5807602(/联系电话)(传真)5287122(/传真)(电子邮件)Ⅺ@263.
net无锡(/地址)(邮编)214031(/邮编)(网址)http://www.
autopart.
org(/网址)(/厂家)(/生产厂家)(/产品)(产品jd="002")——(/产品)(/行驶部件)其中部件的"id"号在系统中是唯一的,前两位分别对应部件所属系和系内的部件编号后3位限定零件编号的长度,不超过3位.
2.
2.
3部件XML元数据到关系数据库的映射为了实现通过数据库查询.
然后访问部件xml文档,取得零件结点的详细信息.
必须实现数据表到各部件xml文档的存储位置和零件结点的映射实现映射的数据表条目的数据格式及示例如表1所示.
表1数据表条目格式、示例Titb.
1ThefonmatoftableentriesandexⅢplB其中,名称1、名称2、名称3是该产品的可能别名或商业名称,以方便模糊查询.
3网上汽车零部件查询的实现3.
1查询功能概述为了方便用户查询,本系统提供以下3种查询方式:1)按汽车的体系结构进行查询如:从系(底盘系)一部件(行驶部件)一零件(悬架);2)按零件所适应品牌车型和零件名称的方式查询如:桑塔纳2000的悬架;3)按零件的生产产家和零件名称进行查询如:无锡开源集团的扭振减振器;3种不同的查询方式,为了设计上的方便.
最后将以相同的格式提交给客户,都包括:零件名称,型号/规格,价格,产品个性描述.
适应车型,生产产家联系方式等信息.
3.
2查询系统的实现:本系统实现了在Internet上对汽车零部件的模万方数据第5期李志华等:基于XML的汽车零部件网站数据存储与查询的实现525糊查询.
在图型界面设计中,主要采用按钮控制.
从图型界面的下拉列表框中选择适当的查询方式.
在模糊查询编辑框中输入查询关键字.
然后单击提交按钮,符合条件的所有不同产家生产的汽车零件产品的信息以及联系方式以表格的形式显示出来.
对汽车零部件的查询.
概括起来主要包括以下2个步骤:第1步.
访问后台数据库,找到零件编号"Num"和对应部件XMI,文档的存储位置;第2步.
从部件的XML文档中取出符合条件的零件结点的XMI.
描述(即零件叶结点);最常用的"品牌车型和零件名称"的组合查询方式为例,具体讲述查询的实现过程.
3.
2l查询后台关系数据库,获得零件编号"Nutn"和对应部件的XMI,文档的存储位置建立数据库与JDBC的连接:JDBC是JAvA语言的数据库访问API,JDBC提供了特殊的驱动程序JDBC-ODBC桥.
该驱动程序支持JDBC通过现有的ODBC驱动程序访问其数据库系统.
本系统中,由于微软的sQLServer7.
0支持ODBC.
因此要建立与ODBC数据库的连接.
方法:先加载一个JD—BC—ODBC桥驱动程序,然后指定JDBCURI,,使它指向网上的资源.
格式URLurl="jdbc:odbc:CN—CARDB"t其中CNCARDB为数据源数据库名,通过JDBCAPI提供的一系列的类接口对数据库操作.
对数据库的一个典型的操作如下:Connectiondb=DriverManagergetComleetion(url);//连接数据库StatementSt=db.
createStatement();lfg,J建一个对象StStringsql—str="select*fromLBJYSBwhere零件名称=selectbox.
getText()and(零件名称like%editlgetText()%or名称1=editl.
getText()or名称2=editl.
getText()or名称3=editl.
getText())"{//定义SQL语句Resultrs=st.
executeQuery(sql.
str);1/执行sQI,语句,并返回结果集"LBJYSB"为零部件映射表.
通过把SQL语句传给exeeuteQuery构造器执行数据库操作.
构造器返回一个结果集(ResuhSet)对象,当执行SQL查询后,通过处理结果集对象的内容,来获得零件的编号"Num"和对应的部件XMI.
文档的存储位置.
其中,部件xml文档的文件名存放在字符串变量"file—namepath"中.
如"悬架"的零件编号为"001",对应的部件xml文档的文件名为:"WWW.
aut.
part.
org/xs.
xml".
3.
22访问文件服务器上的部件XMI,文档,获取零件的xML描述由于XMI.
文档是"文件的形式存储在文件服务器上,所以在系统中,对汽车零部件的查询,最后得来的查询信息主要是通过访问文件服务器上部件XML文档中的"产品"子树来实现的.
方法:在系统管理程序巾,导八MSXMI.
分析器中的相关Java类,并定义自己的类:ReadXml和ViewEIement等.
类ReadXml是MSXML的Java类库中"Comms.
xml.
omDocument"类的一个子类,在该类中,首先,创建一个新的对象"Documentxmlfile=herA,Document()",该对象中,主要包括I.
oad(url)方法.
url指定元素所在的XML文档的路径,并加载该文档.
如零件"悬架"对应的部件xml文档为:wwwautopart.
org/xS.
xml.
另一个重要的方法,即通过重载applet类的action方法来对具体的单击事件进行处理.
Showproducts(inthum,Elementrootl)方法是ViewElement类的又一个主要方法,该方法是在找到的部件XML文档中,取得第"Num"棵"产品"子树的全部信息.
该方法的主要逻辑结构如下:Showpmduets(inthum,EIementrootl)E1ementeleml.
elem2;ElementEnumerationEnuln;Ehum=llewElementEnumeration(rood);For(intI=0;I(=hum;I+十)deml=(Element)enum.
nextElement();ElementEnumerationEhum2:Enum2=newElementEnumeration(eleml);ehm2=(Element)enum2.
nextElement();ifelem2.
getAttribute(id)=Numwhile(elem2.
getTagName()!
=null&&elem2.
getTagName().
toStringunequal("产品"))棵产品子树//遍历部件xml文档中的第"Num"主要通过遍历部件XML文档树直到第"Num"棵"产品"子树.
程序通过javams.
xml.
omElement(下转第530页)万方数据530无锡轻I大学学报第20卷!
一一一圈豳圈圈—黼灌瞄豳璀-__.
__一.
i1m.
.
~,…々~誓mE.
.
mmmNIm扦号.
"""著者t醢面瀑口E葛砸一!
薯者单位I岳愠轻工丈学3缃工柽学统i篇名'雕犟群搿耍盖譬藐耆ll摘簧-离慰鬻溺孺嬲曩i{变化,C-91ycmlee嘲1s主i霜量关键词:藩效鞴鑫产癌酽骰衅蜀i囊申图分类号:咏西爵商丁史献标识碣:五§糊溷豳翻墨图4查询结果Fig.
4Theresultquery由于模糊算法的植入,匹配过程是非一致性模糊匹配,不是一致性精确匹配,按照人们的思维过参考文献:程,用户可边想边输八,模棱两可的字词都输入进去(如醇酯、有机酸无机酸、标点、符号、空格、字哥等).
在不淹没查询目标要求的情况下.
均可帮用户查询到与查询目标最接近的或相近的文章从上述实验结果看模糊优化查询不仅降低了用户输入要求,对用户更加友好,一般Web用户都可得到满意结果.
而且有一定的抗干扰噪声能力以及一定的容错性4结语当今是信息爆炸的时代,web为人们提供r.
个全球化信息空间,针对目前大型的Internet结点日益数据库化.
和传统的数据库向Internet平移.
提出基于Web的数据库模糊优化查询法适应网上一般用户信息查询需求.
改善网上信息查询查准率低的状况,此算法可用于网站搜索引擎中,另外此法困其一定的抗干扰噪声能力和容错性还可用于基于Internet的多通道用户界面如目标选择等方面[1]LAWRENCES,GILESCLAccessibilityanddistributionofin:formationontheWeb[J]Nature,1999.
400:107~109[2]刘增良主编.
模糊技术与应用选编[M】北京:航空航天大学出版社,1997[3]肖位枢编著模糊数学基础及应用[M]北京:航空工业出版社.
1992[4]董士海等.
基于Intemet的多通道用户界面[J].
计算机学报,2000(12):1270~1275[5]张德Intemet上的数据库联合查询优化[J]计算机学报,2000(2):171~176(责任编辑:朱明)(上接第525万)类的getAttribute(id)方法获得标记"(产品)"的"id"属性值,程序把该"id"同从DBMS中检索到的零件编号"Num"相比较,若相等,则进一步对产品于树进行遍历.
或通过java.
ms.
xml.
om.
Element类的getText()方法返回"(产品)"标记的所包含的全部非标记信息,即所查找的汽车零件的详细信息.
4小结传统的数据库技术只有与飞速发展的网络技术相适应,才能得以进一步的发展和应用.
XML技参考文献:术特别适合于半结构化数据资源的组织和发布XML中的文档类型定义DTD,使人们可以根据实际需要构造所需的标记.
不仅方便用户开发基于Intel·net的应用系统,而且结合Java技术,可方便地构建一个与用户平台无关的统一而简单的交流方式本系统基于JSP技术,把XMI.
技术和DBMS技术结合起来,充分发挥传统关系型数据库在信息检索方面的优越性,实现了信息的描述、信息的内容和结构与系统的查询真正地分开.
提高了整个系统的阿上查询的效率.
[1]CHRISTOPHERA.
LinuxWeb编程[M]北京:电子工业出版社,1999[2]HORSTMANSJm2棱心技术[M]北京:机械工业出版社.
1999[3]黄理用JSP轻松开发Web网站[M]北京:希望电子出版社,2000[4]HAROLDRusty著.
XML实用大全[M].
北京:中国水利电力出版社.
2000【5]怀石工作室编著.
XML完全手册[M].
北京:中国水利出版社,2000【6]武苍林著.
JDBC在数据库中的应用[J]计算机应用,1998,18(10):35~36(责任编辑:朱明)万方数据

knownhost西雅图/亚特兰大/阿姆斯特丹$5/月,2个IP1G内存/1核/20gSSD/1T流量

美国知名管理型主机公司,2006年运作至今,虚拟主机、VPS、云服务器、独立服务器等业务全部采用“managed”,也就是人工参与度高,很多事情都可以人工帮你处理,不过一直以来价格也贵。也不知道knownhost什么时候开始运作无管理型业务的,估计是为了扩展市场吧,反正是出来较长时间了。闲来无事,那就给大家介绍下“unmanaged VPS”,也就是无管理型VPS,低至5美元/月,基于KVM虚拟,...

digital-vm:VPS低至$4/月,服务器$80/月,10Gbps超大带宽,不限流量,机房可选:日本新加坡美国英国西班牙荷兰挪威丹麦

digital-vm,这家注册在罗马尼亚的公司在国内应该有不少人比较熟悉了,主要提供VPS业务,最高10Gbps带宽,还不限制流量,而且还有日本、新加坡、美国洛杉矶、英国、西班牙、荷兰、挪威、丹麦这些可选数据中心。2020年,digital-vm新增了“独立服务器”业务,暂时只限“日本”、“新加坡”机房,最高也是支持10Gbps带宽... 官方网站:https://digital-vm.co...

819云互联 香港 日本 美国 2核4G 18元 8核8G 39元 免费空间 免费CDN 香港 E3 16G 20M 230元/月

819云互联是海外领先的互联网业务平台服务提供商。专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前平台研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的海外资源、香港,日本,美国等各国优质的IDC资源。官方网站:https://www.819yun.com香港特价物理服务器:地区CPU内存带宽...

jsp技术为你推荐
易pc华硕易PC这款本本值不值的买勒?湖南商标注册湖南长沙怎么注册商标无线路由器限速设置无线路由器速度如何设置?万网核心代理在万网代理商购买万网产品,谁知道价格?知道的说下?arm开发板新手入门应如何选择 ARM 开发板?如何建立一个网站如何建立一个网站?二层交换机二层交换机是什么意思,三层呢小米手柄买了个小米蓝牙手柄,游戏是可以玩但是按键位置不舒服,怎么可以改按键系统分析员系统分析员的工作内容系统分析员考系统分析员有什么好处?
vps是什么意思 过期域名抢注 免费个人博客 网页背景图片 京东商城0元抢购 seednet 昆明蜗牛家 四核服务器 免费邮件服务器 太原联通测速 永久免费空间 防cc攻击 lamp是什么意思 购买空间 江苏双线 阿里云个人邮箱 privatetracker asp简介 西部主机 ssd 更多