zoukankan
html css js c++ java
java List2Xml
import
java.lang.reflect.Field;
import
java.lang.reflect.Method;
import
java.util.ArrayList;
import
java.util.List;
import
com.fh.hibernate.pojo.TblUserId;
public
class
XmlHelper
{
public
static
String toXml(List list)
{
StringBuffer bf
=
new
StringBuffer();
bf.append(
"
<?xml version=\
"
1.0
\
"
encoding=\
"
utf
-
8
\
"
?>\n<objects>\n
"
);
for
(
int
i
=
0
; i
<
list.size(); i
++
)
{
Object obj
=
list.get(i);
bf.append(
"
\t<
"
+
obj.getClass().getSimpleName()
+
"
>\n
"
);
Field[] fields
=
obj.getClass().getDeclaredFields();
for
(
int
j
=
0
; j
<
fields.length; j
++
)
{
try
{
String name
=
fields[j].getName();
Method method
=
obj.getClass().getMethod(
"
get
"
+
name.substring(
0
,
1
).toUpperCase()
+
name.substring(
1
),
new
Class[]
{}
);
Object result
=
method.invoke(obj,
new
Object[]
{}
);
bf.append(
"
\t\t<
"
+
name
+
"
>
"
+
(result
==
null
?
""
:result)
+
"
</
"
+
name
+
"
>\n
"
);
}
catch
(Exception e)
{
}
}
bf.append(
"
\t</
"
+
obj.getClass().getSimpleName()
+
"
>\n
"
);
}
bf.append(
"
</objects>\n
"
);
return
bf.toString();
}
public
static
void
main(String[] args)
{
List
<
TblUserId
>
list
=
new
ArrayList
<
TblUserId
>
();
TblUserId tblUserId
=
new
TblUserId();
tblUserId.setOrganizationId(
"
i1
"
);
tblUserId.setUserId(
"
n1
"
);
TblUserId user2
=
new
TblUserId();
user2.setOrganizationId(
"
i2
"
);
//
user2.setUserId("n2");
list.add(tblUserId);
list.add(user2);
XmlHelper c
=
new
XmlHelper();
System.out.println(c.toXml(list));
}
}
查看全文
相关阅读:
NET Core 2.2
NET Core项目模板
Eclipse同时显示多个控制台项目的输出
Java中的序列化
Java中的泛型
Java中的集合
Java中的数据结构
Java中的包
Java中的接口
Java中的封装
原文地址:https://www.cnblogs.com/meetrice/p/1214596.html
最新文章
基于spring-boot的应用程序的单元测试方案
开发环境、测试环境、生产环境、UAT环境、仿真环境详解
图数据库neo4j添加算法包
neo4j安装APOC插件
Neo4j-Apoc
[Neo4j] 添加算法插件包
neo4j算法(1)-介绍
QMap QHash的选择(QString这种复杂的比较,哈希算法比map快很多)
如何利用UDP协议封装一个数据包
一个尖括号能干什么,画一个笑脸开始(为了支持交互,它又增添了JavaScript。HTML页面也越来越臃肿。于是CSS便诞生了。API和核心代码的出现使HTML能够访问更复杂的软件功能--支持更高级的交互和云服务集成。这就是今天的HTML5)
热门文章
回调函数实现类似QT中信号机制(最简单)
QFileDialog关于选择文件对话框中的几个信号的说明(currentChanged,directoryEntered,fileSelected,filterSelected)
超时重传+拥塞控制
Linux性能评估命令
NET Core 中的通用主机和后台服务
Visual Studio Code插件
Vim-Go环境搭建
vue-simple-uploader上传插件
阿里云ECS 环境是CentOS 7.3安装mongodb3
携程框架Apollo实现.NET Core微服务统一配置(测试环境-单机)
Copyright © 2011-2022 走看看