hibernate学习笔记
hibernate学习笔记
silenceyawen 发表于2年前
hibernate学习笔记
  • 发表于 2年前
  • 阅读 24
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: hibernate学习第一记
  Configuration configuration = new Configuration().configure();
  
  ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build();

  SessionFactory sessionFactory = new MetadataSources( serviceRegistry ).buildMetadata().buildSessionFactory();
  
//  StandardServiceRegistryBuilder registryBuilder = new StandardServiceRegistryBuilder()
//    .applySettings(configuration.getProperties());
//
//  StandardServiceRegistry registry = registryBuilder.build();
//
//  sessionFactory = configuration.buildSessionFactory(registry);
  
  session = sessionFactory.openSession();

  transaction = session.beginTransaction();

 

1. 加载hibernate配置文件

2. 获取 SessionFactory

3. 获取 Session

其中在获取 SessionFactory 时按照示例程序的代码(注释区域)行不通,在 Stack Overflow 找到了解决办法,最终实现了。

tip:

    User yawn = new User("yawn", "liu1234");
    User yawn2 = yawn;
    
    session.save(yawn);
    session.save(yawn2);

最终保存的结果只有一条记录,yawn 和 yawn2 属于同一实例的不同引用,所以只对应数据库中一个元组。

  User yawn = new User("yawn", "liu1234");
  session.save(yawn);
  
  yawn = new User("yawn2", "liu1234");
  session.save(yawn);

保存结果又两条记录,两次yawn 分别是不同对象的引用。

  User yawn = new User("yawn", "liu1234");
  session.save(yawn);
  
  yawn.setName("yawn2");
  yawn.setPwd("1234yawn");
  session.save(yawn);

保存结果只有一条记录。

    hibernate的学习自今日开始,加油!

标签: hibernate 笔记
共有 人打赏支持
粉丝 14
博文 58
码字总数 24424
×
silenceyawen
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: