一种基于动态栈的EJB3容器AOP实现方法

    公开(公告)号:CN102508668A

    公开(公告)日:2012-06-20

    申请号:CN201110357781.6

    申请日:2011-11-11

    IPC分类号: G06F9/44 G06F9/45

    摘要: 一种基于动态栈的EJB3容器AOP实现方式,使用预编译和动态栈两种方式相结合的方式来实现EJB容器对业务方法的拦截。针对如日志、事务管理和安全等系统服务对所有的EJB处理方式一致的特点,将相应代码通过预编译方式重新生成源代码,减少了处理拦截器请求的时间,并通过配置文件的方式使得尽量减少对源代码的侵入式修改。对于EJB的业务方法拦截器,考虑到程序员经常修改编辑拦截器类的特点,采用动态栈的方式避免了预编译反复生成源代码的缺陷;同时相比动态代理方式节约了大量生成动态代理类的内存空间。使用静态和动态相结合提高EJB容器对业务方法拦截的速度与灵活性。

    一种基于动态栈的EJB3.0容器AOP实现方法

    公开(公告)号:CN102508668B

    公开(公告)日:2014-11-05

    申请号:CN201110357781.6

    申请日:2011-11-11

    IPC分类号: G06F9/44 G06F9/45

    摘要: 一种基于动态栈的EJB3.0容器AOP实现方式,使用预编译和动态栈两种方式相结合的方式来实现EJB容器对业务方法的拦截。针对如日志、事务管理和安全等系统服务对所有的EJB处理方式一致的特点,将相应代码通过预编译方式重新生成源代码,减少了处理拦截器请求的时间,并通过配置文件的方式使得尽量减少对源代码的侵入式修改。对于EJB的业务方法拦截器,考虑到程序员经常修改编辑拦截器类的特点,采用动态栈的方式避免了预编译反复生成源代码的缺陷;同时相比动态代理方式节约了大量生成动态代理类的内存空间。使用静态和动态相结合提高EJB容器对业务方法拦截的速度与灵活性。