Ioc容器的革命性优点
Ioc容器的革命性优点是颠覆了“使用对象之前必须创建” 的基本Java语言定律。而基于PicoContainer实现的Jdon框架比Spring更好实现这一目标。
比Spring更好实现这一目标,具体是怎么做到的呢?
我以前也是这么认为,但是其实不是,因为配置文件只是定义了一个类,可以做到一个开发工具插件,一般你在编码时,创建一个类代码,开发工具插件会自动将这个类名写到配置文件中。
类与类之间调用关系在运行时就能自己解决,无需在编码时考虑。
上述开发工具插件非常类似JBuilder的EJB可视化开发工具,在JBuilder中创建一个EJB,JBuilder会自动将EJB的类名写到ejb-jar.xml中,但是,EJB之间的调用关系是靠JNDI维系的。EJB容器其实很早就自动实现了对象的生命周期,但是只停留在单个对象的创建和销毁上,没有从调用关系上考虑,减轻开发者负担。
Spring也是如此,也没有从调用关系上考虑,减轻开发者负担。
从一开始我就看好pico(可查看以前发言),而不是spring,我觉得spring商业炒作太厉害(什么without EJB,故弄玄虚),我更喜欢默默无闻的 真正小巧优质的pico,通过jdon框架我将之商用,从闺楼里走到平民百姓家。算是实现我想法的一个实践吧。