nutz,今晚来一发(17): nutz跟quartz怎样玩耍?

例如, 一个Job需要使用dao/service等ioc里面的对象,应怎么办呢?


-----------------上期没人回答问题的分割线-------------------------------------

上一期没人给出一个答案,拖了好多天依然没人回答,好桑心...


以下讨论不涉及自定义ClassLoader, javaagent,inst包的话题.


第一个问题, 一个类加上@IocBean注解,发生了什么事:

什么都没有发生, 仅仅是添加了一个可供读取的class文件内的几个属性.

无论UserServiceImpl标注了任何注解,下面的代码的运行没有任何区别

UserService us = new UserServiceImpl();
us.insert(user);

注解对这段代码的运行没有任何影响. 啊啊啊? 那你会问:

那Ioc做了啥??

先看代码:

UserService us = ioc.get(UserService.class);
us.insert(user);

跟直接new的区别是什么? 是ioc.get方法可以写一堆逻辑,而new只是一个字节码的操作符.

换句话说:  ioc.get比new多很多代码, 里面可以创建对象,创建引用,设置属性,触发事件


注解并非什么魔法,它只是class文件里面的一个attr, 除非有程序去读取它,并按某个规则进行操作, 它才有意义.

你可能感兴趣的:(注解,IOC,nutz)