这可能是一个非常新手的问题,但我已经搜索过,或者我的理解中存在很大差距,或者我做错了一些我无法弄清楚的事情.
在我的上下文文件中,这是一个摘录
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${datasource.driverClassName}" />
<property name="url" value="${datasource.url}" />
<property name="username" value="${datasource.username}" />
<property name="password" value="${datasource.password}" />
</bean>
<bean id="myBeanOne" class="a.b.c.myBeanOne">
<property name="dataSource" ref="dataSource" />
</bean>
Run Code Online (Sandbox Code Playgroud)
现在在myBeanOne我有:
private DataSource dataSource;
private JdbcTemplate jdbcTemplate;
@Autowired
public void setDataSource (DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
public void myMethod() {
String sql = "'My generic SQL update query'";
try {
this.jdbcTemplate.update(sql);
} catch (org.springframework.dao.EmptyResultDataAccessException ex) {
}
System.exit(0);
}
Run Code Online (Sandbox Code Playgroud)
当我尝试在调用setDataSource的行上执行此操作时,我收到此错误:
ERROR org.springframework.integration.handler.LoggingHandler
org.springframework.integration.MessageHandlingException:
java.lang.NullPointerException
Run Code Online (Sandbox Code Playgroud)
在线上: this.jdbcTemplate.update(sql);
我尝试了十种不同的配置来实现这一点,但我似乎无法做到这一点.非常感谢您的帮助,谢谢. …