Spring jdbcTemplate空指针异常

时间:2016-06-20 16:50:36

标签: java spring jdbc spring-jdbc jdbctemplate

我正在尝试使用jdbcTemplate来执行sql命令。在这种情况下,我正在尝试将事物插入表中。我在行中发现了空指针异常:jdbcTemplate.execute(subscriptionStatusInsertQuery);

当我尝试运行该行时: dbMapper.mapToDatabase(newEntry); 其中dbMapper是DBMapper的一个实例。

@Repository
public class DBMapper {

    private JdbcTemplate jdbcTemplate;

    public JdbcTemplate getJdbcTemplate() {
        return jdbcTemplate;
    }

    @Autowired
    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

    public void mapToDatabase(Status status) {
        String id = status.getId();

        String subscriptionStatusInsertQuery = "INSERT INTO t1 (ID) VALUES (id)";
        jdbcTemplate.execute(subscriptionStatusInsertQuery);
    }
}

我已经尝试过没有jdbcTemplate的setter。我试过取出@Repository注释。我试过有一个包含数据源的setter。仍然有错误。

我该如何解决这个空指针异常?

编辑:

我的application.properties具有以下设置:

spring.datasource.url=jdbc:mysql://localhost:3306/ee_internal
spring.datasource.username=ee
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.password=mypassword
spring.datasource.test-on-borrow=true
spring.datasource.validation-query=SELECT 1

从我的pom.xml:

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>

0 个答案:

没有答案