我在Spring中注入了三个层次结构层-其余部分,业务逻辑和数据库操作。用于BL和DAO的Junit测试工作正常,其余时间只能注入业务逻辑ioc层。
我的junit测试晚餐班:
import org.springframework.test.AbstractTransactionalSpringContextTests;
public class AbstractTest extends AbstractTransactionalSpringContextTests {
protected static final String path = "config/spring/applicationContext.xml";
/**
* Disabled autowire by type
* Disabled dependency check
*/
public AbstractTest() {
super();
this.setAutowireMode(AUTOWIRE_BY_NAME);
this.setDependencyCheck(false);
}
@Override
protected String[] getConfigLocations() {
return new String[] {
path
};
}
}
所以-rest调用业务逻辑,这调用数据库操作。空指针异常属于数据库调用的业务逻辑。
示例的更多信息:
REST:getUser(id)调用
BL:getUserBO(id)调用
DAO:getUserDAO(id)
Nullpointer会在getUserBO方法中抛出在getUserDAO上。这仅发生在正在部署的junit测试中。
最佳答案
您是否定义了数据源bean?没有更多详细信息(例如堆栈跟踪,应用程序上下文文件等),那是我的最佳猜测...