mybatis怎么读写oracle 中long类型的数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis怎么读写oracle 中long类型的数据相关的知识,希望对你有一定的参考价值。
参考技术A InputStream is = rs.getBinaryStream("kppic");File file = new File("D:/e.bmp");
OutputStream os = new FileOutputStream(file);
byte [] bt = new byte[1024];
int len;
while ((len = is.read(bt)) != -1)
os.write(bt, 0, len);
os.close();
is.close();本回答被提问者和网友采纳
Spring+Mybatis类型转换的问题,oracle数据库中有一个clob类型,怎样在查询以后转换为String类型?
我在mapper文件里返回的不是实体类,而是一个Map类型,所以无法自动转换,我在配置文件中配置类型转换没有作用:
<typeHandlers>
<typeHandler javaType="String" jdbcType="CLOB" handler="org.apache.ibatis.type.ClobTypeHandler"/>
</typeHandlers>
有大神们能指点一下吗
首先你的思路就错的,不可能转换成string
把大对象读进byte[]
public byte[] function(Connection connection,所需参数) throws EMPException
PreparedStatement ps = null;
ResultSet rs = null;
byte[] data = null;
try
.....省略
while (rs.next())
oracle.sql.CLOB clob= (oracle.sql.CLOB) rs.getClob("大对象的字段名");
InputStream inStream =clob.getBinaryStream();
long nLen = clob.length();
int nSize = (int) nLen;
data = new byte[nSize];
inStream.read(data);
inStream.close();
connection.commit();
catch (SQLException e)
EMPLog.log(this.getClass().getName(), EMPLog.INFO, 0, e.toString());
catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace();
finally
try
if (rs != null)
rs.close();
rs = null;
if (ps != null)
ps.close();
ps = null;
catch (SQLException e)
EMPLog.log(this.getClass().getName(), EMPLog.INFO, 0, e
.toString());
return data;
2.直接在页面上将对象读到页面上
<form action="">
<%
response.setContentType("image/jpg");
response.setHeader("Content-Transfer-Encoding","base64");
ServletOutputStream toClient = response.getOutputStream();
out.clear();
out = pageContext.pushBody();
ByteArrayInputStream in = new ByteArrayInputStream(data);
int len;
byte[] buf = new byte[1024];
while ((len = in.read(buf, 0, 1024)) != -1)
toClient.write(buf, 0, len);
toClient.flush();
toClient.close();
%>
</form>
以上是关于mybatis怎么读写oracle 中long类型的数据的主要内容,如果未能解决你的问题,请参考以下文章
工作经验:mybatis 处理 oracle Long 类型
解决:oracle+myBatis ResultMap 类型为 map 时,表字段类型有 Long/Blob/Clob 时报错
Spring+Mybatis类型转换的问题,oracle数据库中有一个clob类型,怎样在查询以后转换为String类型?