public class generator extends hibernateUtil {
/*
* increment机制是int 查找当前id的最大值加1,两次查询效率底点
* Hibernate: select max(id) from Person
Hibernate: insert into Person (name, id) values (?, ?)
*/
@Test
public void testIncrement()
{
Session session = factory.openSession();
Transaction tran = session.beginTransaction();
Person p = new Person();
p.setName("yyyyy");
session.save(p);
tran.commit();
session.close();
}
/*
* Hibernate: insert into Person (name, id) values (?, ?)
* 1;表必须支持自动增长机制 在Mysql中加入autoincrement
* 2;主键的产生是数据库产生的,并不是由hibernate产生的
* 3:比increment效率高
*/
@Test
public void testIdentity()
{
Session session = factory.openSession();
Transaction tran = session.beginTransaction();
Person p = new Person();
p.setName("zzzzz");
session.save(p);
tran.commit();
session.close();
}
/*
* assigned产生机制
* 由程序员手动添加id,一般测试的时候用,企业里面用的少
*/
@Test
public void testAssigned()
{
Session session = factory.openSession();
Transaction tran = session.beginTransaction();
Person p = new Person();
p.setName("zzzzz");
p.setId("222");
session.save(p);
tran.commit();
session.close();
}
/*
* UUID是hibernate内部生产的
* id 必须是字符串类型的
* Hibernate: insert into Person (name, id) values (?, ?)
*/
@Test
public void testUUID()
{
Session session = factory.openSession();
Transaction tran = session.beginTransaction();
Person p = new Person();
p.setName("QQQQQ");
session.save(p);
tran.commit();
session.close();
}
}
转载于:https://www.cnblogs.com/linhong/p/4495325.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109454.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...