用xml描述数据库表的字段及JDOM简单使用

xml描述表的字段

老师说要用xml描述表的字段名,我以为是这样的:

<DATA>
	<ROW>
		<Sno>1001</Sno>
		<Sname>李勇</Sname>
		<Ssex>1</Ssex>
	</ROW>
	<ROW>
		<Sno>1002</Sno>
        .......
	</ROW>
</DATA>

实际上网上全是这样的,但这个叫用xml表示数据库内容,不是字段,字段应该是这样的:

Table: student
	Columns:
		学号 varchar(100) PK 
		姓名 varchar(100) 
		性别 int(11) 

那这个是怎么搞呢?在描述之前你必须知道描述了用来干什么。
实际上,就像读文件一样,从里面读取罢了,只不过xml有独特的读取方式,比如JDOM,这个网上很多,我就不说了。
那么回到正题,这里把我的xml展示出来,帮助某高校广大莘莘学子,说来都是泪,呜呜呜~~

讲解:Sno是你自定义的名字,用来读文件时定位用的,“姓名”就是你保存的表名,是你读取到的东西,整个xml一般用来做数据集成。

<?xml version="1.0" encoding="UTF-8"?>  
<student_1>
	<table name="student">
		<Sno>
			<name>学号</name>
			<type>varchar</type>
		</Sno>
		<Sname>
			<name>姓名</name>
			<type>varchar</type>
		</Sname>
		<Ssex>
			<name>性别</name>
			<type>int</type>
		</Ssex>
	</table>
</student_1>
JDOM简单使用

我在网上查找读取xml的方式,发现xml的标签名是读取不了的(可能不对,至少我没在jdom里面发现),环境是在JAVA里面用

//先给个示例xml
<student>
	<table name="student">
		<Sno>
			<name>学号</name>
			<type>int</type>
		</Sno>
		<Sname>
			<name>姓名</name>
			<type>varchar</type>
		</Sname>
	</table>
	<table name="course">
		<Cno>
			<name>课程编号</name>
			<type>varchar</type>
		</Cno>
		<Cname>
			<name>课程名</name>
			<type>varchar</type>
		</Cname>
	</table>
</student>
	SAXBuilder builder = new SAXBuilder();   
   	Document doc = builder.build(new File("F:student.xml"));
	Element ele = doc.getRootElement();   
   	List<Element> list = ele.getChildren();   
   		//前面的都是读取文件用的,头文件系统会提示的
   	Element element=(Element)list.get(0);
   		//这个get(0)就是根标签的第一个子标签,就是第一个table
	String table=element.getAttributeValue("name");
		//这个是获取table标签的name属性值,即table=student
	Element element1=(Element)list.get(1);
		//这个get(1)就是根标签的第二个子标签,就是第二个table
	String table1=element1.getAttributeValue("name");
    	//即table=student
	String para = element.getChild("Sno").getChildText("name");
		//这个是在第一个table标签下获取子标签Sno,再获取子标签name的值,此时para="姓名"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值