论坛首页 Java企业应用论坛

字节码工具asm使用的一个例子

浏览 13956 次
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-05-04  
ak478288 写道
mazzystar 写道
ak478288 写道
目前我使用asm用来做sql查询后的组装结果集,实现orm的操作


不是通过反射来做吗?不知道asm在这个场景下能做什么


首先通过反射获得类信息和属性字段映射信息,然后通过asm创建一个RowMapper的子类,并缓存这个类生成的对象,这样每次进行ResultSet的处理,全都是和普通编程一样的处理,都不用通过反射赋值。

我目前的另外一个准开源项目就是这样做的,


开源的话会去学习一下的。
0 请登录后投票
   发表时间:2012-05-04  
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
目前我使用asm用来做sql查询后的组装结果集,实现orm的操作


不是通过反射来做吗?不知道asm在这个场景下能做什么


首先通过反射获得类信息和属性字段映射信息,然后通过asm创建一个RowMapper的子类,并缓存这个类生成的对象,这样每次进行ResultSet的处理,全都是和普通编程一样的处理,都不用通过反射赋值。

我目前的另外一个准开源项目就是这样做的,


开源的话会去学习一下的。


肯定开源,欢迎交流。https://github.com/akwei/halo1.1 这个是我以前的一个玩意,里面使用asm的有2个地方。
一个是刚才说的结果集组装,在一个就是对于action的创建使用asm,不过你可以不用看这个项目了,因为文档写的不好。
等我上传完毕新程序后,告知你。
0 请登录后投票
   发表时间:2012-05-04   最后修改:2012-05-04
ak478288 写道
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
目前我使用asm用来做sql查询后的组装结果集,实现orm的操作


不是通过反射来做吗?不知道asm在这个场景下能做什么


首先通过反射获得类信息和属性字段映射信息,然后通过asm创建一个RowMapper的子类,并缓存这个类生成的对象,这样每次进行ResultSet的处理,全都是和普通编程一样的处理,都不用通过反射赋值。

我目前的另外一个准开源项目就是这样做的,


开源的话会去学习一下的。


肯定开源,欢迎交流。https://github.com/akwei/halo1.1 这个是我以前的一个玩意,里面使用asm的有2个地方。
一个是刚才说的结果集组装,在一个就是对于action的创建使用asm,不过你可以不用看这个项目了,因为文档写的不好。
等我上传完毕新程序后,告知你。



好的,先fork下
0 请登录后投票
   发表时间:2012-05-04  
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
目前我使用asm用来做sql查询后的组装结果集,实现orm的操作


不是通过反射来做吗?不知道asm在这个场景下能做什么


首先通过反射获得类信息和属性字段映射信息,然后通过asm创建一个RowMapper的子类,并缓存这个类生成的对象,这样每次进行ResultSet的处理,全都是和普通编程一样的处理,都不用通过反射赋值。

我目前的另外一个准开源项目就是这样做的,


开源的话会去学习一下的。


肯定开源,欢迎交流。https://github.com/akwei/halo1.1 这个是我以前的一个玩意,里面使用asm的有2个地方。
一个是刚才说的结果集组装,在一个就是对于action的创建使用asm,不过你可以不用看这个项目了,因为文档写的不好。
等我上传完毕新程序后,告知你。



好的,先fork下

 

 

已经上传了,你可以看里面的单元测试   https://github.com/akwei/halo-query

0 请登录后投票
   发表时间:2012-05-04  
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
mazzystar 写道
ak478288 写道
目前我使用asm用来做sql查询后的组装结果集,实现orm的操作


不是通过反射来做吗?不知道asm在这个场景下能做什么


首先通过反射获得类信息和属性字段映射信息,然后通过asm创建一个RowMapper的子类,并缓存这个类生成的对象,这样每次进行ResultSet的处理,全都是和普通编程一样的处理,都不用通过反射赋值。

我目前的另外一个准开源项目就是这样做的,


开源的话会去学习一下的。


肯定开源,欢迎交流。https://github.com/akwei/halo1.1 这个是我以前的一个玩意,里面使用asm的有2个地方。
一个是刚才说的结果集组装,在一个就是对于action的创建使用asm,不过你可以不用看这个项目了,因为文档写的不好。
等我上传完毕新程序后,告知你。



好的,先fork下



halo-query 代码中 RowMapperClassCreater.java是具体使用asm的例子
0 请登录后投票
   发表时间:2012-05-04  
大致看了一下,很受用。以前还没想过用asm代替反射呢,学习了。
0 请登录后投票
   发表时间:2012-05-04  
mazzystar 写道
大致看了一下,很受用。以前还没想过用asm代替反射呢,学习了。

客气了,我目前也只是会用asm替代一部分反射,来提高性能,暂时还没发现别的用处
0 请登录后投票
   发表时间:2012-05-06  
这类文章的好好学习
0 请登录后投票
   发表时间:2012-05-07  
虽然知道你们在聊什么,但是不懂,呵呵。
虽然不懂,但是知道你们好厉害,哈哈。
赞一个
0 请登录后投票
   发表时间:2012-05-07  
endual 写道
虽然知道你们在聊什么,但是不懂,呵呵。
虽然不懂,但是知道你们好厉害,哈哈。
赞一个


我是现学现卖,没那么难的 
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics