内容简介:jBeanBox 2.4.8版本发布 主要更新内容: 1. 内核完全重写了一遍,更精简,架构更合理。所有注解完成的注入,都可以找到相应的Java方法来完成。 2. 新增getInstance(Class<T>)方法,与getbean()方法的区别在于get...
jBeanBox 2.4.8版本发布
主要更新内容:
1. 内核完全重写了一遍,更精简,架构更合理。所有注解完成的注入,都可以找到相应的 Java 方法来完成。
2. 新增getInstance(Class<T>)方法,与getbean()方法的区别在于getInstance返回的类型是与T同类型,而getBean()方法则不一定。
3. BeanBox的create方法和config方法增加可选Caller对象参数,用于运行期加载其它对象及循环依赖检测。
4. 添加了部分JSR330、JSR350、Spring注解的支持,以尽量兼容已有的配置。
5. 性能加速,原型(非单例)创建速度比上版提速十倍以上,目前原型创建的速度是Guice的二分之一,Spring的45倍。
6. 删除多余的寻找BeanBox配置的方式,添加bind方法绑定方法,相当于手工给Bean赋予ID。
7. AOP功能简化,并采用方法、Bean、上下文三级AOP配置方式,新增@AOP注解,删除@TX注解。
因为jBeanBox是一个微型工具,所以顺便也将它的内容介绍贴在这里:
jBeanBox是一个微形但功能较齐全的IOC/AOP工具,除了引入的第三方库之外,它的核心只有十多个类,源码只有1500行左右。它运用了“Box”编程模式,利用纯粹的Java类作为配置。jBeanBox运行于JDK1.6或以上。
jBeanBox的开发目的是要克服其它IOC/AOP工具的一些问题:
Spring: 源码臃肿,Java方式的配置不灵活,在动态配置、配置的继承上有问题、启动慢、非单例模式时性能极差。
Guice: 源码略臃肿(200个类),使用不太方便,对Bean的生命周期支持不好。
Feather:源码极简(几百行),但功能不全,只是一个DI工具,不支持AOP。
Dagger: 源码略臃肿(300个类),编译期静态注入,使用略不便,不支持AOP。
Genie: 这是ActFramework的内核,只是DI工具,不支持AOP。
如何在项目中使用jBeanBox?
手工下载jbeanbox-2.4.8.jar放到项目的类目录,或在pom.xml中加入以下配置:
<dependency> <groupId>com.github.drinkjava2</groupId> <artifactId>jbeanbox</artifactId> <version>2.4.8</version> <!--或Maven最新版--> </dependency>
jBeanBox不依赖于任何第三方库,为避免包冲突,它将用到的CGLIB、ASM等第三方库以源码内嵌方式包含在项目中。 jBeanBox的jar包尺寸较大,约为750K, 如果用不到AOP功能,可以只使用它的DI内核,称为"jBeanBoxDI", 只有49k大小,将上面artifactId中的jbeanbox改成jbeanboxdi即可。jBeanBoxDI项目详见jbeanboxdi子目录。
更多关于jBeanBox的用法还可以在jSqlBox项目中看到它的运用(数据源的配置、声明式事务示例等)。
jBeanBox码云主页:https://gitee.com/drinkjava2/jBeanBox
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- jBeanBox2.4.8 发布,IOC/AOP 工具,内核重写,性能提高
- 能用js重写的都会被typescript重写
- 重写equals的详细说明
- SpringSession:请求与响应重写
- 什么时候要重写equals
- 如何重写object虚方法
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python Machine Learning
Sebastian Raschka / Packt Publishing - ebooks Account / 2015-9 / USD 44.99
About This Book Leverage Python' s most powerful open-source libraries for deep learning, data wrangling, and data visualization Learn effective strategies and best practices to improve and opti......一起来看看 《Python Machine Learning》 这本书的介绍吧!
图片转BASE64编码
在线图片转Base64编码工具
RGB CMYK 转换工具
RGB CMYK 互转工具