为了账号安全,请及时绑定邮箱和手机立即绑定

Java/Hibernate 初学者问题理解下面的代码

Java/Hibernate 初学者问题理解下面的代码

慕容森 2021-09-12 10:51:22
package com.util;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HibernateUtil {    private static final SessionFactory sessionFactory = buildSessionFactory();    private static SessionFactory buildSessionFactory() {        try {            // Create the SessionFactory from hibernate.cfg.xml            return new Configuration().configure().buildSessionFactory();        } catch (Throwable ex) {            // Make sure you log the exception to track it            System.err.println("SessionFactory creation failed." + ex);            throw new ExceptionInInitializerError(ex);        }    }    public static SessionFactory getSessionFactory() {        return sessionFactory;    }    public static void shutdown() {        // Optional but can be used to Close caches and connection pools        getSessionFactory().close();    }}我试图理解上面的代码。我是 Java 的初学者,很难具体理解以下行。这是否意味着,一个Configuration对象有一个配置方法,配置方法有buildSessionFactory方法?return new Configuration().configure().buildSessionFactory();
查看完整描述

2 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

方法没有方法,方法返回对象,而那些对象有方法。


在这里,Configuration 有一堆方法返回 Confuguration(因此该方法返回它被调用的对象)。这允许方法链接,以便在该对象上调用 configure,然后在同一对象上调用 buildSessionFactory。


方法链的一个更常见的例子是 java.lang.StringBuilder 类。您可以在同一个构建器对象上使用连续的 append 调用构建一个字符串:


String example = new StringBuilder(“hello”)

    .append(“ “)

    .append(“world”)

    .toString();


查看完整回答
反对 回复 2021-09-12
?
慕哥6287543

TA贡献1831条经验 获得超10个赞

  1. Configuration 对象有一个 configure 方法,它将 hibernate.cfg.xml 中指定的所有配置作为 Configuration 对象返回。此信息用于连接到数据库。

  2. 然后从配置对象中获取 SessionFactory 对象,该对象将用于创建会话对象以连接到数据库。

配置配置=null; SessionFactory 工厂=null;

configuration = new Configuration().configure("com/app/cfgs/hibernate.cfg.xml"); 工厂=cfg.buildSessionFactory();


查看完整回答
反对 回复 2021-09-12
  • 2 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信