Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 在HQL中将Blob转换为字符串_Hibernate_Spring Mvc_Blob - Fatal编程技术网

Hibernate 在HQL中将Blob转换为字符串

Hibernate 在HQL中将Blob转换为字符串,hibernate,spring-mvc,blob,Hibernate,Spring Mvc,Blob,我在Oracle数据库中有一个列类型的BLOB,我想以字符串的形式获得一个简短的概述(例如限制为300个字符) 我的专栏在Hibernate中被注释为@Lob,我的问题是如何将我的Blob(实际上是@Lob)转换为字符串 在我的模型中: @Lob private byte[] content; 当我想解析我的blob时,我得到: org.springframework.web.util.NestedServletException: Request processing failed;

我在Oracle数据库中有一个列类型的BLOB,我想以字符串的形式获得一个简短的概述(例如限制为300个字符)

我的专栏在Hibernate中被注释为@Lob,我的问题是如何将我的Blob(实际上是@Lob)转换为字符串

在我的模型中:

@Lob
private byte[] content;
当我想解析我的blob时,我得到:

org.springframework.web.util.NestedServletException: 
  Request processing failed; nested exception is org.springframework.orm.hibernate3.HibernateJdbcException: 
  JDBC exception on Hibernate data access: SQLException for SQL [n/a]; SQL state [99999]; error code [24816]; ORA-24816: 
Expanded non LONG bind data supplied after actual LONG or LOB column; 
  nested exception is org.hibernate.exception.GenericJDBCException: ORA-24816: 
Expanded non LONG bind data supplied after actual LONG or LOB column

我知道我可以用Java进行转换(
newstring(myBlob);
例如),但我想直接用HQL查询来获取字符串。

我认为不能直接从HQL进行转换。我总是在
java.sql.blob
类型中检索blob字段,然后充分使用。@malaguna谢谢你的回答,我会继续在网上搜索,但我认为你是对的。