浔阳江上
BlogJava
首页
新随笔
联系
聚合
管理
posts - 5, comments - 6, trackbacks - 0
net.sf.cglib.beans.BeanMap 重写toString()的用法
在cglib 中 BeanMap的用法
1.导入cglib-nodep-2.1.3.jar
2.在javaBean 对象中重写toString()方法 比如是UserManageVo.Java
public String toString(){
return BeanTools.getBeanDesc(UserManageVo.this);
}
java 代码
1
package
BeanUtils;
2
3
import
net.sf.cglib.beans.BeanMap;
4
5
public
class
BeanTools
{
6
private
static
String LINE
=
System.getProperty(
"
line.separator
"
,
"
\r\n
"
);
7
8
/** */
/**
9
* 对象中重写toString()方法,在打印日志的时候调用
10
*
@param
obj
11
*
@return
12
*
@return
String
13
*/
14
public
static
String getBeanDesc(Object obj)
{
15
StringBuffer bf
=
new
StringBuffer();
16
bf.append(LINE
+
"
{
"
+
LINE
+
"
Class =
"
+
obj.getClass().getName()
17
+
LINE);
18
BeanMap beanMap
=
BeanMap.create(obj);
19
for
(Object object : beanMap.keySet())
{
20
Object value
=
beanMap.get(object);
21
if
(
null
!=
value)
{
22
/** */
/**
23
* 这是定义对象的是时候用到
24
*/
25
String className
=
value.getClass().getName();
26
if
(className.startsWith(
"
test.UserManageEvent
"
)
27
||
className.startsWith(
"
test.BasicEvent
"
)
28
||
className.startsWith(
"
test.UserManageVo
"
))
{
29
bf.append(object
+
"
=
"
+
getBeanDesc(value)
+
LINE);
30
}
31
32
/** */
/**
33
* 这是数组对象的是时候用到
34
*/
35
if
(className.startsWith(
"
Ltest.UserManageEvent
"
)
36
||
className.startsWith(
"
Ltest.BasicEvent
"
)
37
||
className.startsWith(
"
Ltest.UserManageVo
"
))
{
38
Object[] objs
=
(Object[]) value;
39
for
(
int
i
=
0
; i
<
objs.length; i
++
)
{
40
bf.append(object
+
"
=
"
+
getBeanDesc(objs[i])
+
LINE);
41
}
42
}
43
44
/** */
/**
45
* 对String数组重写toString()方法
46
*/
47
if
(className.startsWith(
"
[Ljava.lang.String
"
))
{
48
Object[] objs
=
(Object[]) value;
49
for
(
int
i
=
0
; i
<
objs.length; i
++
)
{
50
bf.append(object
+
"
[
"
+
i
+
"
]
"
+
"
=
"
+
objs[i]
51
+
LINE);
52
}
53
}
54
}
55
bf.append(object
+
"
=
"
+
value
+
LINE);
56
}
57
bf.append(
"
}
"
);
58
return
bf.toString();
59
}
60
}
java代码
/Files/yjlongfei/beanUtil.rar
posted on 2009-10-19 21:41
浔阳江头夜送客
阅读(2537)
评论(0)
编辑
收藏
所属分类:
java
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
判断文件格式
net.sf.cglib.beans.BeanMap 重写toString()的用法
BeanUtils.copyProperties() 用法
<
2009年10月
>
日
一
二
三
四
五
六
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
EJB3.0
Hibernate
iBATIS
java(3)
linux(1)
myEclipse
Oracle
Pushlet
Spring
struts2
Tomcat
WebService(1)
随笔档案
2010年1月 (2)
2009年10月 (3)
myeclipse6.5上基于JAX-WS开发Webservice(中文示例)
搜索
最新评论
1. re: MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)
评论内容较长,点击标题查看
--hhs
2. re: MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)[未登录]
顺便再说一下,1L纯2B,大家不要理它~~~~~~~~
--test
3. re: MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)[未登录]
内容介绍的非常好,非常适合新人 。谢谢。。
--test
4. re: MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)
我是新手,你写的很好,一看就明白
--whily
5. re: MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)
@nishilaji
楼上的太没素质了,人家辛辛苦苦写的这么详细,对于初学者来说就希望有这种细致的文档介绍。在此我很感谢楼主,谢谢你,让我很清楚明了的学会了这个实现方法!
--gxylh
阅读排行榜
1. MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)(3009)
2. net.sf.cglib.beans.BeanMap 重写toString()的用法(2537)
3. inotify+rsync+ssh数据实时同步(1372)
4. BeanUtils.copyProperties() 用法(1164)
5. 判断文件格式(396)
评论排行榜
1. MyEclipse6.5上基于JAX-WS开发Webservice(中文示例)(6)
2. inotify+rsync+ssh数据实时同步(0)
3. 判断文件格式(0)
4. net.sf.cglib.beans.BeanMap 重写toString()的用法(0)
5. BeanUtils.copyProperties() 用法(0)