1,String插入到BLOB类型字段,(这里的字符串以生成的XML为例):
String XML = document.asXML(); //使用dom4j写成的xml是String类型,记得string类型不能直接插入到BLOB类型
byte[] xmlbyte = XML.getBytes("GBK"); //这里将String转为字符数组。
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.update("update t_fseitemplate set EINVOICEXML = ? where id = ? ",new Object[]{xmlbyte,tempID}); // 这里使用jdbcTemplate执行sql语句,插入数据。
2,取出BLOB类型的数据
String sql = " select UTL_RAW.cast_to_varchar2(EINVOICEXML) as EINVOICEXML from T_FSEITEMPLATE t where t.id = ? ";
List xml = jdbcTemplate.queryForList(sql, new Object[] { StringUtil.nullToEmpty(p.get("TEMPID"))});
UTL_RAW.cast_to_varchar2(EINVOICEXML)这个语句是Oracle中自带的将BLOB类型转为String类型,EINVOICEXML是数据列名。