时间: 2021-07-31 作者:daque
一、jdom引见
咱们领会dom是用来与平台和谈话无干的办法表白xml文书档案的官方w3c规范,运用dom和sax api不妨领会和处置xml文书档案。这边咱们引见的jdom是鉴于树操纵的纯java api,该当说它供给的是一套用来领会、创造、处置和实行xml的处置计划。那些api比dom和sax api供给的本领更为直觉,对于有java体味的步调员将会创造jdom特殊简单控制。jdom处置xml的办法比dom简单的多,而且它的功效比运用sax越发宏大。
jdom的里面论理构造基础上与dom的沟通,比方具备document、element、comment等文书档案节点典型,个中每一个jdom文书档案必需有一个document节点,而且为节点树的根节点。该根节点不妨有子节点大概叶子节点如comment、text等。jdom文书档案中的每一个节点典型均对应方法杰出的xml文傍边的没一个元素。这也就为咱们运用jdom变换数据库到xml文书档案供给了可操纵的按照。
jdom的便宜:
由jdom的文书档案证明咱们将会很鲜明的看出运用jdom的上风地方。jdom文书档案证明如次“jdom援用了20/80规则,即运用20%的精神处置80%的java/xml题目”。
● jdom是用java开拓并为java供给效劳的,它采用了java代码的典型和类库;
● 在稠密编制程序谈话中,java是运用xml的特出平台,xml又是java运用的特出数据表白本领。jdom api是纯java api对于java开拓职员来说更简单上手;
● jdom api比dom所供给的本领更为直觉,同声简化了与xml的交互。比运用dom更快。
org.jdom是用来java api操纵的jdom东西包。
在org.jdom中,供给了document、element 、comment 、doctype、attribute、text等存 java 类,那些类均是考察和操纵jdom文书档案所必需的。咱们不妨运用那些类创造、遍历、窜改jdom文书档案。
在org.jdom.output中,供给了domoutputter、xmloutputter,用来处置jdom树的dom树情势、xml文书档案情势输入、打字与印刷等。
二、情况摆设
在我的windows2000体例平台上沿用tomcat4.1.18、jdk1.4.0_02动作开拓和尝试平台。
经过“我的电脑”的“高档”属性增添如次两个情况树立classpath树立为:“.;c:\j2sdk1.4.0_02\lib\dt.jar;c:\j2sdk1.4.0_02\lib\tools.jar;”。path树立为“.;c:\j2sdk1.4.0_02\bin;”。
sql server jdbc启动:mssqlserver.jar 放入tomcat的lib目次下。
三、赢得与安置jdom
因为暂时jdom并没有包括在sun的jdk中(我想不久的未来jdom必定会变成sun jdk的一局部),咱们必需细工载入与树立jdom的情况。
在http://www.jdom.org不妨载入jdom的最新本子。这边载入的是jdom beta8。载入jdom-b8.zip后解收缩,jdom的jar文献即是build目次下的文献jdom.jar,将上述文献正片到j2sdk1.4.0_02目次下的jre/lib/ext目次下。
四、运用jdom实行sql server 数据库到xml的变换
1、数据库、表的创造
这边运用一个变换主顾消息的例子——“主顾基础消息”。咱们是把数据安置于microsoft sql server 2000数据库中,而后应用jsp和jdom本领动静天生xml范例文书档案。
咱们事前microsoft sql server数据库custom中创造了一个数据表--custom,其数据构造如次表所示:
字段名
解释
典型
能否为空
name
全名
varchar(12)
not null
id
id
int
not null
company
公司
varchar(30)
not null
tel
varchar(15)
not null
往数据库中输出以次几条记载:
name
id
company
刘氏
001
公司1
liu@yantai.com
蒋氏
002
公司2
jiang@yantai.net
2、数据源树立
数据源(odbc source)本质上即是设置数据的根源。数据源的树立本领是: [发端]-〉[树立]-〉[遏制面板]-〉[处置东西]-〉[数据源(odbc)]-〉[system dsn]->[add]->[sql server],辨别摆设效劳器名(custom地方效劳器)、数据库名(custom)、数据源称呼(此处定于db_custom)、用户名(lgz)、用户口令(空),数据源就摆设好了。
3、代码的编写
底下发端咱们的编写jsp代码变换处事,代码将经过挪用jdom动静天生xml构造,而后借助jdbc考察sql server数据库动静弥补xml实质。
<%@page contenttype="text/html;charset=gbk"%>
<html>
<head>
<title>用jdom实行数据库到xml的变换</title>
</head>
<body>
<%@page import="org.jdom.*"%>
<%@page import="java.*"%>
<%
class.forname("com.microsoft.jdbc.sqlserver.sqlserverdriver").newinstance();
string url="jdbc:microsoft:sqlserver://10.40.14.54:1433;databasename=db_custom";
//载入jdbc odbc的启动步调
string user="lgz";
string password="lgz";
connection conn= drivermanager.getconnection(url,user,password); //贯穿数据库
statement stmt=conn.createstatement(resultset.type_scroll_sensitive,resultset.concur_updatable);
//创造一个statement
string sql="select * from client"; //设置查问的sql语句
resultset rs=stmt.executequery(sql); //实行查问
document document=new document(new element("接洽人列表"));//创造文书档案
resultsetmetadata rsmd = rs.getmetadata(); //获得字段名
int numberofcolumns = rsmd.getcolumncount(); //获得字段数
int i=0;
while(rs.next()){ //将查问截止掏出
element element0=new element("接洽人"); //创造元素 天生jdom树
document.getrootelement().addcontent(element0);
for (i=1; i<=numberofcolumns;i++)
{ string date=new string(rs.getstring(i).getbytes("iso-8859-1"),"gb2312"); //代码变换
element element=new element(rsmd.getcolumnname(i)).settext(date);
element0.addcontent(element);
}
}
rs.close(); //封闭截止集
stmt.close(); //封闭statement
conn.close(); //封闭贯穿
xmloutputter outp = new xmloutputter();
outp.output(document, new fileoutputstream("d:\\data.xml")); //输入xml文书档案
out.print("xml 文书档案天生结束!");
%>
<a href="file:///d|/data.xml">点击翻开爆发的xml文书档案 </a>
</body>
</html>
4、步调的运转
经过欣赏器的8080端口运转该jsp,将爆发预期的xml文献。
五、运用领会
xml动作数据调换的规范,获得了越来越普遍的运用。这篇作品阐领会数据库到xml变换的基础本领,进而使各别构平台以及百般方法的数据举行数据调换变成大概。当咱们不妨把原始的数据变化为xml方法化的情势,就不妨以充分的html的方法表白出来。这边陈列两个上面的运用:
1、 xml运用效劳器:
xml运用效劳器本质上是扶助xml的web运用效劳器,它们常常是沙盘启动的,经过在一个脚本谈话中嵌入运用sql语句来索取数据并动静建立xml文书档案。
2、 鉴于xml