如何能够实现,hibernate 配置文件中的主键,默认保存的时候是自动增长的,如果赋值,则保存的时候为所赋的值?如何配置和mysql数据库中的主键如何定义?这里如何配置
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="assigned"></generator>
</id>mysql中对应的主键如何设置?系统中如何调用保存方法请教各位大虾了hibernate
解决方案 »
- 使用hibernate annotation在继承过程中出现Unable to instantiate default tuplizer,找了一天都没找到问题
- 大话帮我看看,我这条分页SQL有什么问题啊?在线等!
- ResultSet在jsp中无法使用
- 现在有没有j2EE的中文api文档?
- eclipse项目按右键刷新时总弹出这个错误
- 求助:一直报java.lang.ClassNotFoundException
- 求在weblogic下的struts例子
- tomcat-5.0.28下如何访问JavaBean???
- soap和http的问题
- 求助?一个格子游戏的麻烦!
- 求助!关于远程调用EJB3.0
- 如何解析一个txt文件,获取有用字段.
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="native"></generator>
</id>
MySQL中的建表语句:
identity是定义标识列,该字段应该是整型的
如:
create table my_table(
user_id int identity,
user_name char(8)
);
MySQL支持在建表的时候指定主键的自动生成策略。指定后就可以在使用hibernate的时候指定主键的生成策略为identity。插入数据的时候就不再插入主键,而由数据库自己负责。
除非不使用auto_increment,你自己用别的方法生成id,比如UUID,那你就可以手动去控制了。
你都告诉Hibernate了,由数据库去自增,还要个屁ID字段,它没你那么傻。
得支持手动ID赋值啊,不发出ID,怎么支持手动ID赋值啊我的意思是如果系统没有指定ID字段,或者ID地段为空,则按照mysql的自增,实现插入,如果指定了ID字段的值,则连通ID一起插入
<class name="引用" table="对应表名">
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="native"></generator>
</id>
</class>MySQL中id定义成自动增长
如:
create table my_table(
user_id int identity
);
--表--
id(主键,自增),idCopy(类型和主键一样),其他字段
1 1
2 2 如果需要自动赋值的时候就让idCopy的取值和id一样,最麻烦不过在添加一条记录后再发送一条update语句
如果需要手动赋值的时候,主键照样自动增长,ipCopy随你怎么赋值
如果如果表已经设计好了,不能改了,又希望实现这样的需求,同求大神指点~~