Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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
Java hibernate中的本机生成器类_Java_Hibernate_Hibernate Mapping_Id Generation - Fatal编程技术网

Java hibernate中的本机生成器类

Java hibernate中的本机生成器类,java,hibernate,hibernate-mapping,id-generation,Java,Hibernate,Hibernate Mapping,Id Generation,我有hibernate映射xml文件的这一部分,我正在寻找一个很好的例子来说明native的含义 <hibernate-mapping> <class name="com.hib.Task" table="tasks"> <id name="id" type="int" column="id" > <generator class="native"/> </id> 我知道这和唯一标识符属性有关,但我真的想举个例子

我有hibernate映射xml文件的这一部分,我正在寻找一个很好的例子来说明native的含义

<hibernate-mapping>
 <class name="com.hib.Task" table="tasks">
  <id name="id" type="int" column="id" >
   <generator class="native"/>
  </id>

我知道这和唯一标识符属性有关,但我真的想举个例子

对不起,我是个新手,我不熟悉hibernate和编程:) 谢谢大家!

本机方法 生成器将根据当前数据库支持的内容使用标识列或序列列

文档在这里解释了每种策略

本地的

根据基础数据库的功能选择标识、序列或hilo

分配的

允许应用程序在调用save()之前为对象分配标识符。如果未指定任何元素,则这是默认策略

例如:
在Mysql中,如果您将主键列作为自动增量,则将使用此策略更新数据库,要完成Suresh Atta所说的内容,您可以将序列命名为:

<hibernate-mapping>
 <class name="com.hib.Task" table="tasks">
  <id name="id" type="int" column="id" >
   <generator class="native">
     <param name="sequence">s_tasks</param>
   </generator>
  </id>

s_任务

因此,它既可以用于标识,也可以用于序列递增主键。

“已分配”是生成主键的默认策略。参考键。阅读第三行,这可能决定谁是这里的疯子。@AshishBurnwal同意你的意见Ashish。很抱歉也链接了一些随机的在线资源。现在编辑为指向官方文档。再次感谢。