jdbcTemplate获取mysql的blob
来源:互联网 发布:淘宝推广pid 编辑:程序博客网 时间:2024/04/29 18:00
java使用jdbcTemplate操作mysql数据库,遇到blob字段,正常读取出来是blob的地址,而不是blob的内容。
下面采用2中方式读取blob的内容:
1、以二进制数组形式读取blob,适用于文本数据
public void testJdbc(){ApplicationContext ctx = new ClassPathXmlApplicationContext("restlet-servlet.xml");JdbcTemplate jdbcTemplate = (JdbcTemplate)ctx.getBean("jdbcTemplate");String sql = "select * from violation_redis t where t.id < 10";final LobHandler lobHandler=new DefaultLobHandler(); @SuppressWarnings("unchecked")List<Map<String,String>> list = jdbcTemplate.query(sql,new RowMapper(){public Object mapRow(ResultSet rs, int rowNum) throws SQLException {//以二进制的数组方式获得Blob数据,第二个参数3是指blob字段在结果集的位置byte[] attach = lobHandler.getBlobAsBytes(rs, 3);//非blob子弹获取String key = rs.getString("vio_key");String strAttach = new String(attach);p(key + "==" + strAttach);Map<String,String> map = new HashMap<String,String>();map.put("vio_key", key);map.put("vio_info", strAttach);return map;}});p(list);}
2、流模式读取blob:
public void getBlob(OutputStream out){String sql = "select * from violation_redis t where t.id < 10";final LobHandler lobHandler=new DefaultLobHandler(); List<Map<String,String>> list = jdbcTemplate.query(sql,new RowMapper(){public Object mapRow(ResultSet rs, int rowNum) throws SQLException {//以二进制的数组方式获得Blob数据InputStream is = lobHandler.getBlobAsBinaryStream(rs, 2);if(is != null){//利用spring的工具类将输入流的数据复制到输出流中FileCopyUtils.copy(is, out);}});}
1 0
- jdbcTemplate获取mysql的blob
- jdbcTemplate更新mysql的blob类型字段
- 利用spring的jdbcTemplate处理blob、clob
- mysql的blob
- mysql的BLOB数据类型
- mysql的BLOB类型
- MySQL的BLOB类型
- MySQL的BLOB类型
- 使用Spring JdbcTemplate实现CLOB和BLOB的存取
- 使用Spring JdbcTemplate实现CLOB和BLOB的存取
- 使用Spring JdbcTemplate实现CLOB和BLOB的存取
- 关于SPRING JDBCTEMPLATE执行BLOB 表不存在 的问题
- 使用Spring JdbcTemplate实现CLOB和BLOB的存取
- 获取jdbctemplate的一种方法
- 解决mybatis获取mysql blob 乱码问题
- jdbcTemplate存取blob(图片)
- 优化MySQL BLOB的使用
- MySql的Blob插入(JDBC)
- 泛型超详细解读(二):super和extend
- UVA10300 - Ecological Premium
- httpclient4下载图片 java实现
- #411 Gray Code
- Android-高通代码接触初篇
- jdbcTemplate获取mysql的blob
- chrome浏览器调试JS代码
- android仿IOS底部弹对话框
- 堆排序,快速选择排序,快速选择排序,归并排序的c++实现
- android官网译文《Using CTS Verifier》-CTS验证工具的使用
- 虚拟机问题
- 哈希树HashTree(trie树)
- 语法和注释
- MySql Order By 多个字段 排序规则