hibernate中的<generater class="native">什么意思

博客介绍了native和assigned的含义,native表示自动生成,无需人工管控;assigned表示指定、分配,需人工赋予。在用Hibernate时,表主键库自动生成用native,自己添加则用assigned,还提到建表时不同主键类型的对应策略。

native有天生的,本土的,也就是说生来就有的,
那也就是说自动生成,不需要人工来帮忙或者管控的.
而assigned是指指定的,分配的,
如果你不赋予他甚麼东西,那麼他是不能实现的.
需要人工,自己把某个东西赋予给它
所以是assigned
在用Hibernate的时候,当有表中的主键是库自动生成的时候将使用native。

而当是自己添加的时候则需要改为assigned。

否则将会出现异常!
如果建表时,该表主键类型是integer,并设置成auto-increment,用native;该表主键类型是string类型的,用uuid.hex

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 2.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> <hibernate-mapping package="com.smics.apps.etst.domain.admin"> <class name="GroupFields"> <id name="id"> <generator class="native"/> </id> <property name="fieldsName" length='255'/> <property name="employeeNo" length='60'/> <property name="createDate" /> <property name="createdBy" length='60'/> </class> <class name="ReasonCode"> <id name="id"> <generator class="native"/> </id> <property name="codeType" length='20'/> <property name="smicTermCode" length='255'/> <property name="custCode" length='60'/> <property name="custTermCode" length='255'/> <property name="description" length='500'/> <property name="createDate" /> <property name="createdBy" length='60'/> </class> <class name="ResponserDept"> <id name="id"> <generator class="native"/> </id> <property name="orgId" length='255'/> <property name="deptName" length='255'/> <property name="secName" length='255'/> <property name="magrId" length='10'/> <property name="costCode" length='20'/> <property name="pieVerify" length='20'/> <property name="pieSite" length='20'/> <property name="createDate" /> <property name="createdBy" length='60'/> </class> <query name="findGroupByMember"><![CDATA[ from GroupFields g where g.employeeNo = ? ]]></query> <query name="findCccByMagrId"><![CDATA[ from ResponserDept g where g.magrId = ? ]]></query> <query name="findResponserDeptByOrgId"><![CDATA[ from ResponserDept g where g.orgId = ? ]]></query> <query name="findResDeptByDeptSec"><![CDATA[ from ResponserDept g where g.deptName = ? and g.secName = ? ]]></query> <query name="findResSecByDept"><![CDATA[ from ResponserDept g where g.deptName = ? ]]></query> <query name="findReasonCodeByCodeType"><![CDATA[ from ReasonCode r where r.codeType = ? ]]></query> </hibernate-mapping>
最新发布
08-29
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值