gpt4 book ai didi

java - Hibernate:如何配置通过Oracle包过程插入/更新/删除实体?

转载 作者:行者123 更新时间:2023-12-01 09:32:32 25 4
gpt4 key购买 nike

是否可以(如果是,如何?)映射要从表中获取的实体类,但通过过程插入/更新/删除,而不是执行 INSERT/UPDATE/DELETE 在此表上?

实体配置是通过 XML 完成的,并且使用特定于 Oracle 的类/方法是可以的。

最佳答案

version 3.5 起,您可以映射自定义 SQL 来进行创建/更新/删除操作.

如果你想通过常规SQL语句进行映射,你可以在 <sql-insert> 内正常编写SQL即可, <sql-update> , <sql-delete>元素。

使用存储过程时,需要将它们标记为可调用语句并使用调用语法。请注意删除和更新所需的输出参数,返回删除的行数。

<class name="Person">
<id name="id">
<generator class="increment"/>
</id>
<property name="name" not-null="true"/>
<sql-insert callable="true">{call createPerson (?, ?)}</sql-insert>
<sql-delete callable="true">{? = call deletePerson (?)}</sql-delete>
<sql-update callable="true">{? = call updatePerson (?, ?)}</sql-update>
</class>

关于java - Hibernate:如何配置通过Oracle包过程插入/更新/删除实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39290967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com