当前位置: 代码迷 >> J2ME >> hibernate中增添数据?
  详细解决方案

hibernate中增添数据?

热度:363   发布时间:2016-04-17 21:07:42.0
hibernate中添加数据???
有一个表role(name varchar,text varchar) pk:name
在hibernate中的映射文件:
<id name="name" type="java.lang.String">
    <column name="name" length="45" />
    <generator class="uuid.hex" />
</id>
我想添加指定的数据:
Role r=new Role("管理员","对职员的CRUD");
getHibernateTemplate().save(role);
添加是成功了,但是在数据库中r变成了:
r    8a16f84b3e306959013e30695a7b0001     对职员的CRUD
求大神指点,如果想要添加Role r=new Role("管理员","对职员的CRUD");这条数据能实现么?如果不能,还有其它方法么?用的mysql数据库

------解决方案--------------------
少年。你的hibernate的配置文件中写的是主键利用uuid算法自增。所以无论你在主键的位置插入的是什么最后都是uuid算法生成的字符串代替了你插入的东西。
你如果写
Role r=new Role(null,"对职员的CRUD");
 getHibernateTemplate().save(role);
最后的结果还是生成一个uuid的字符串。
除非你把<generator class="uuid.hex" /> 去掉。或者把name字段变成非主键。
  相关解决方案