Java:如何将JSON对象插入CLOB到Oracle数据库中

问题描述 投票:0回答:1

我有一个org.json.simple.JSONObject,我想使用PreparedStatement将其插入Oracle数据库的Clob类型列中。我该怎么办?

[当我执行preparedStatement.setObject(1, json_obj);时出现错误:无法为org.json.simple.JSONObject推断setObject中的SQL类型

java json oracle prepared-statement clob
1个回答
0
投票

我将json作为字符串并创建了此方法,它对我有用:

public long  insertClob(String  id, String json ) {
    KeyHolder holder = new GeneratedKeyHolder();
    jdbcTemplate.update(new PreparedStatementCreator() {

    public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
        PreparedStatement ps = connection.prepareStatement("UPDATE tableWithClobColumn SET clobColumn=? WHERE id=?",
                Statement.RETURN_GENERATED_KEYS);
        Reader reader = new StringReader(json);
        ps.setClob(1, reader);
        ps.setString(2, "1911030604");

        return ps;
    }
}, holder);
return Long.parseLong("0");
}
© www.soinside.com 2019 - 2024. All rights reserved.