dao经junit测试没问题,
但在dao1调用dao2时,出现空指针异常。
描述一下情况:
diray类中有个type属性,这个type是个类,
我在dao方法中在加载diray类时同时加载type类,
diray.setType(new TypeDaoImpl().byId(1));
这种写法是错误的,没有使用spring的注入特性,这里我自己新new了实例,
但,typeDaoImpl继承了spirng的jdbcDaoSupport,我单纯的实例化TypeDaoImpl时,DataSource 和 jdbcTemplate并没有实例化,导致jdbctemplate类报空指针异常。
想到这里,豁然开朗,
private TypeDao typeDao;
private setTypeDao(TypeDao typeDao){
this.typeDao=typeDao;
}
diray.setType(typeDao.byId(1));
对spirng的注入认识不清楚。低级错误,低级错误。。。