怎样从数据库中获取数据并转换为xml文件

怎样从数据库中获取数据并转换为xml文件,第1张

如果是Sql2005以上版本就简单了。

SELECT TOP 10 * FROM dbo.UserInfo

FOR XML PATH('UserInfo'),ROOT ('UserList')

就会生成以下XML

PATH里面的字符串生成行标签

ROOT生成根标签

<UserList>

<UserInfo>

<UserName>administrator</UserName>

<Age>21</Age>

如何将数据库中的查询出来的数据放到xml中

public class Test8 {

class UserBean {

private String userName

private String account

private String roleName

public UserBean(String userName, String account, String roleName) {

super()

this.userName = userName

this.account = account

this.roleName = roleName

}

public String getUserName() {

return userName

}

public void setUserName(String userName) {

this.userName = userName

}

public String getAccount() {

return account

}

public void setAccount(String account) {

this.account = account

}

public String getRoleName() {

return roleName

}

public void setRoleName(String roleName) {

this.roleName = roleName

}

public String toString() {

return "<user>" + "<userName>" + userName + "</userName>" + "<account>" + account + "</account>"

+ "<roleName>" + roleName + "</roleName>" + "</user>\n"

}

}

public void printXml() {

//获取数据库数据

List<UserBean>list = new ArrayList<UserBean>()

for (int i = 0i <10i++) {

UserBean user = new UserBean("User " + i, "U0000" + i, (i % 2 == 0 ? "管理员" : "普通用户"))

list.add(user)

}

//转XML

StringBuffer xml = new StringBuffer()

xml.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n")

xml.append("<users>\n")

for(UserBean user : list){

xml.append(user)

}

xml.append("</users>")

System.out.println(xml.toString())

}

/**

* @param args

*/

public static void main(String[] args) {

Test8 test = new Test8()

test.printXml()

}

}

这个是你自定义的,因为XML就是文本,把数据转换成XML和相反的 *** 作被称作序列化与反序列化。这样的话你自己定义序列化的逻辑和反序列化的逻辑就可以了。例如表MyTable有两个字段Id、Name。你可以定义成:

<MyTable>

<Items>

<Item Id="1" Name="a"/>

<Item Id="2" Name="b"/>

</Items>

</MyTable>

你也可以定义成:

<MyTable>

<Item>

<Id>1</Id>

<Name>a</Name>

</Item>

<Item>

<Id>2</Id>

<Name>b</Name>

</Item>

</MyTable>

至于程序你自己查查吧。就是数据库 *** 作和Xml *** 作的命名空间。.Net封装得已经很完善了,用起来也很方便。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9627675.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存