java如何读取sybase中的image类型数据

苏城 发布于 2016/07/13 11:06
阅读 746
收藏 0
### Error querying database.  Cause: org.jboss.util.NestedSQLException: Error; - nested throwable: (java.lang.UnsupportedOperationException: The method com.sybase.jdbc3.jdbc.SybResultSet.getBlob(String) is not supported and should not be called.)
加载中
0
Pig-man
Pig-man
public void loadZp(String userId) {
		String sql = "select ZP"
				+ " from S_USER"
				+ " where USERID = '" + userId + "'";
		List<Map<String, Object>> list = baseDao.queryForList(sql);
		
		byte[] zp = null;
		if (list.size() <= 0 || list.get(0).get("ZP") == null) {
			String imgDir = ScopeUtil.getRequest().getSession().getServletContext().getRealPath("")
					+ File.separator + "resources" + File.separator + "img" + File.separator;
			String defaultUserImgPath = imgDir + "default_user.png";
			try {
				zp = FileUtils.readFileToByteArray(new File(defaultUserImgPath));
			} catch (IOException e) {
				e.printStackTrace();
			}
		} else {
			zp = (byte[])list.get(0).get("ZP");
		}
		HttpServletResponse response = ScopeUtil.getResponse();
		response.reset();
		response.setHeader("Cache-Control", "no-cache");
		response.setContentType("image/*");
		BufferedOutputStream out = null;
		try {
			out = new BufferedOutputStream(response.getOutputStream());
			out.write(zp);
			out.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}



苏城
回复 @Pig-man : 好的,感谢
Pig-man
Pig-man
@苏城 到时候我传网盘上吧,给你个下载链接
苏城
回复 @Pig-man : 嗯,可以15.7的发我一个吗,邮箱422051632@qq.com, 感谢
Pig-man
Pig-man
@苏城 我看了下我这边有12.5.4的,还有15.7的,但是15.7的得晚上很晚了,我待会儿要飞广州,
苏城
回复 @Pig-man : 嗯
下一页
0
Pig-man
Pig-man
如果没猜错,Sybase里的那个image字段放的是byte吧
苏城
是byte, 这个会有问题么? 插入没问题,就是后台读取的时候报错勒。response.getOutputStream().write(document.getBinary());
0
苏城

引用来自“Pig-man”的评论

如果没猜错,Sybase里的那个image字段放的是byte吧
对,是byte[]
0
苏城

升级驱动到jconn4.jar

问题解决。

返回顶部
顶部