欢迎来到天天文库
浏览记录
ID:36284914
大小:587.50 KB
页数:65页
时间:2019-05-08
《[工学]《动态web数据库技术-基于jsp和xml技术实现》-9xml与数据库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、王红第9章XML与数据库主要内容第9章XML与数据库9.1借助XML文档实现数据库之间数据互换9.2文档结构与数据库结构的映射9.3SQLServer对XML的支持9.4XML数据库9.5小结2021/8/62当存在大量数据需要处理分析的话,最好是把这些数据放到数据库中几乎所有大型应用系统都是和数据库相关联的,所以如果XML需要在这些领域大展宏图的话,必须要和数据库相联系2021/8/639.1借助XML文档实现数据库之间数据互换XML提供了一种连接关系数据库和面向对象数据库以及其他数据库管理系统之间的纽带关系数据库和面向对象数据库首先需要将数据
2、从数据库中提取出来,经过转换或直接以XML数据形式发布到网上(局域网或Internet网),然后相互交换数据,经应用层系统处理后在转存入库开发一个访问数据库的XML应用系统需要同时借助XML编程接口和数据库编程接口,前者用于对XML文档的解析、定位和查询,后者则是用于访问数据库2021/8/64XML和数据库XML文档是一个数据集合优点自我描述性可移植性以树结构描述数据提供部分数据库的功能缺点数据存取慢缺少数据库的功能2021/8/65XML和数据库XML文档在数据量较小和用户较少的环境中可以当作数据库使用本地XML数据库专门设计用于存储XML文
3、档的数据库2021/8/669.1.1将XML数据插入数据库将XML数据插入数据库的步骤:使用Class.forName()方法加载缺省驱动器使用DriverManager对象的getConnection()方法建立数据库连接使用Connection对象创建Statement对象将已解析的XML文档放在Document对象中使用getElementsByTagName()方法检索其元素使用Insert语句将数据插入数据库2021/8/67将XML中的数据插入数据库DocumentBuilderFactoryDocumentBuilderDocum
4、entNodeListElementNode2021/8/68实例下面例xml2db.java,将candidate.xml文档中的数据存储到一个ACCESS数据库people中表的结构如图9-1所示2021/8/69实例importjava.sql.*;importjavax.xml.parsers.*;importorg.w3c.dom.*;publicclassxml2db{staticConnectioncon;staticStringnm,add,tel,fax,email,sql;publicstaticvoidmain(String
5、args[]){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:people","","");Statementstmt=con.createStatement();2021/8/610实例(续)DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=factory.newDocument
6、Builder();Documentdoc=builder.parse("candidate.xml");NodeListnl=doc.getElementsByTagName("PERSON");for(inti=0;i7、'"+nm+"','"+add+"','"+tel+"','"+fax+"','"+email+"')";intret=stmt.executeUpdate(sql);}stmt.close();con.close();}catch(Exceptione){e.printStackTrace();}}}运行结果如图9-2所示2021/8/611图9-2xml2db.java运行结果2021/8/6129.1.2由数据库中数据生成XML文档从数据库检索数据生成XML的步骤:将文件头和根元素写入文件使用Class.forName(8、)方法加载缺省驱动程序使用DriverManager对象的getConnection()方法建立数据库连接使用Connection对象创
7、'"+nm+"','"+add+"','"+tel+"','"+fax+"','"+email+"')";intret=stmt.executeUpdate(sql);}stmt.close();con.close();}catch(Exceptione){e.printStackTrace();}}}运行结果如图9-2所示2021/8/611图9-2xml2db.java运行结果2021/8/6129.1.2由数据库中数据生成XML文档从数据库检索数据生成XML的步骤:将文件头和根元素写入文件使用Class.forName(
8、)方法加载缺省驱动程序使用DriverManager对象的getConnection()方法建立数据库连接使用Connection对象创
此文档下载收益归作者所有