因为使用spring来管理整个项目类的加载和卸载,
一、所以当使用 @Resource(name="userService")
private UserService userService;这个注释注入加载的时候就要注意了。
如:
A类是数据库操作类
B类使用了@Resource这个注释注入A类
当在C类中使用B类时,不能使用B b=new B();这种方法来实例化B,因为这样的话就会失去spring来统一管理类的作用,在B类中的A类就不会实例化了。只能还使用@Resource来实例化B类。这样才能保证A实例化成功。
但是如果B类中没有使用@Resource这个方式注入A类的话,就能使用B b=new B();实例化B了,但是这样就失去了使用spring的作用,所以不推荐使用这种方式
二、要注意当使用junit来单元测试的话,必须使用@SpringBean("newsWapService")
private NewsWapService newsWapsService;来加载你要实例化的类,因为这样才能使用spring,spring才能加载applicationContext-test.xml配置文件。来初始化dao等。
上面只是我个人理解,希望斧正