首页 > 编程知识 正文

java spring,hibernate自定义sql

时间:2023-05-06 19:09:33 阅读:171574 作者:269

这是用document.hbm.xml创建的视图

AS

选择*来自文档;

GO]]

DROP VIEW docView

如何用我的方法调用此视图

我试着这样打电话

session session=sess factory.open session (;

query query=session.create SQL query (' docview );

List list=query.list (;

结束了

caused by : Java.SQL.sqlexception : therequestforprocedure ' docview ' failed because ' docview ' isaviewobject。

at net.source forge.jtds.JDBC.SQL diagnostic.add diagnostic (SQL diagnostic.Java 3:368 ) )。

at net.source forge.jtds.JDBC.TD score.tdserrortoken (TD score.Java 33602820 ) ) ) ) ) ) ) )。

at net.source forge.jtds.JDBC.TD score.next token (TD score.Java 33602258 ) ) ) ) ) ) ) ) ) )。

at net.source forge.jtds.JDBC.TD score.get more results (TD score.Java :632 ) ) ) ) ) )。

有在hibernate中调用sql视图的想法或其他方法吗?

解决方法:

可以像使用常规实体类表一样使用DB视图。 使用@Entity注释或等效的XML和视图列的任何子集作为字段定义实体类。

重要的是,不会更改实体中的值,因为视图是只读的。

编辑:我不知道如何使用类似于存储过程的视图。 如果存储过程的目的是查询注释中隐含的多个实体,则可以执行以下操作:

通过“加宽”视图,可以包含所需图元的所有所需属性

使用视图中的外键列与相关实体相关联,并定义映射到视图的实体的@ * To *注释。

因为你还需要使用本地SQL,或者需要定义实体,所以我担心这不会给你带来很远。

标签: java、sql、orm、hibernate

资料来源: https://codeday.me/bug/2019 07 16/1477809.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。