从SimpleJdbcInsertOperations.java获取已编译的SQL字符串

时间:2015-09-01 15:24:32

标签: java jdbc

我继承了一个使用 SimpleJdbcInsertOperations.java 进行简单数据库插入的大型代码库。我知道这个类在内部编译了传递给执行方法的地图后面的SQL语句。我需要一种方法从对象中获取该SQL字符串。以下是示例代码段...

private int insertIntoTable(){

    SimpleJdbcInsertOperations simpleJdbcInsertOperations = new SimpleJdbcInsert(
            MY_JDBC_TEMPLATE).withSchemaName(MY_SCHEMA).withTableName(MY_TABLE);

    //Map the columns for query
    Map<String, Object> myArguments = new HashMap<String, Object>();
    myArguments.put("COLUMN1", "1");
    myArguments.put("COLUMN2", "2");

    //TODO - NEED WAY TO GET COMPILED SQL STATEMENT


    return simpleJdbcInsertOperations.execute(myArguments);

}

请不要回复像&#34;为什么不使用jdbcTemplate呢?&#34;在这一点上,代码库太昂贵了。

1 个答案:

答案 0 :(得分:0)

哇这很容易解决。我只是将对象引用更改为SimpleJdbcInsert,而不是使用SimpleJdbcInsertOperations。然后我可以调用SimpleJdbcInsert.getInsertString()