Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HibernateUtil中的实例是什么?_Java_Hibernate_Instance - Fatal编程技术网

Java HibernateUtil中的实例是什么?

Java HibernateUtil中的实例是什么?,java,hibernate,instance,Java,Hibernate,Instance,我不熟悉Java的Hibernate框架。 我有一个HibernateUtil类的代码,我不知道实例是从哪里来的。 它拥有HibernateUtil类的实例,如何 代码是这样的 import java.util.Properties; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import org.hibernate.serv

我不熟悉Java的Hibernate框架。 我有一个
HibernateUtil
类的代码,我不知道
实例是从哪里来的。
它拥有
HibernateUtil
类的实例,如何

代码是这样的

import java.util.Properties;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;

public enum HibernateUtil {

INSTANCE;   // what about this???
public static SessionFactory sessionFactory = null;

private synchronized SessionFactory initialiseSessionFactory() {

    if (sessionFactory == null) {
        Configuration config = new Configuration();

        config.addAnnotatedClass(demo1.class);
        config.addAnnotatedClass(demo2.class);
        config.configure();

        //get the properties from Hibernate configuration file
        Properties configProperties = config.getProperties();
        ServiceRegistryBuilder serviceRegisteryBuilder = new ServiceRegistryBuilder();
        ServiceRegistry serviceRegistry = serviceRegisteryBuilder.applySettings(configProperties).buildServiceRegistry();
        sessionFactory = config.buildSessionFactory(serviceRegistry);

    }
    return sessionFactory;
}

public Session getSession() {
    Session hibernateSession = null;

    if (sessionFactory == null) {
        hibernateSession = initialiseSessionFactory().openSession();

    } else {
        hibernateSession = sessionFactory.openSession();
           }
    return hibernateSession;
}
}

HibernateUtil正在实现单例模式:该类只能有一个实例,该实例就是HibernateUtil.instance。

Java中的
枚举实际上是一个类。隐式扩展
java.lang.Enum
的函数。您在
实例
中看到的特殊语法;是枚举常量的声明。这将用于生成枚举类的实例,该实例可以在代码中引用。

但是没有
instance=new HibernateUtil(),然后从哪里来,为什么HibernateUtil是“枚举”?你能给我一个链接,从那里我可以理解关于枚举的事情。