关于Hibernate中的Configuration

Hibernate中,关于从 Configuration中建立一个SessionFactory常用的可以有两种方法,一种是为Configuration提供hibernate.cfg.xml配置文件,还有一种就是提供hibernate.properties配置文件。

1.提供hibernate.cfg.xml配置文件:

static {
  Configuration config=null;
  try {
   config = new Configuration().configure();//使用configure()方法加载默认的hibernate.cfg.xml配置文件,因为配置文件中已经含有数据库映射信息,因此就不需要使用addClass方法加载各个类文件的映射文件
  } catch (HibernateException e1) {
   e1.printStackTrace();
  }
  try {
   sessionFactory=config.buildSessionFactory();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

2.提供hibernate.properties配置文件:

static {
  Configuration config=null;
  config = new Configuration();//因为new一个Configuartion默认会加载hibernate.proprties文件,所以就不需要调用configure方法了
  try {
   config.addClass(Manager.class);//因为hibernate.properties文件中没有映射信息,所以需要调用addClass方法来显式的加载类文件所对应的映射文件
   sessionFactory=config.buildSessionFactory();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

如果方法使用错误,错误信息会多种多样,我在这个问题在困扰两个星期之后终于解决了!!!

时间: 2024-10-11 12:40:58

关于Hibernate中的Configuration的相关文章

Hibernate中的Configuration类

Configuration类用来管理我们的配置文件的信息的,通过它,我们可以通过创建一个configuration实例来管理相应的配置文档,但是通常我们只创建一个configuration实例. 下面是一个通用的创建实例的代码 Java代码 try{ sessionFactory = new Configuration().configure().buildSessionFactory(); }catch(HibernateException e){ throw new RuntimeExcep

hibernate中 org.hibernate.MappingException: invalid configuration 报错

<session-factory>   <!-- #1:基本四项 -->  <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>  <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/h01</prop

Hibernate中,基于Annotation的简单树形结构的实现

在系统设计中,经常用到递归性质的树形结果,比如菜单.多级分类等,一般是在同一个表中定义父子关系实现这种结构. 下面是在Hibernate中,基于Annotation的简单树形结构的实现: 第一步:创建Entity类,并添加注解实现关联关系    ps: 主要是利用@ManyToOne 和 @OneToMany 配置在同一个Entity类中实现树形递归的结构.hibernate注解形式比在xml配置更加简洁 TreeNode.java 1 package com.hfut.hibernate; 2

Hibernate中调用带有underscore的Column Name

Hibernate中默认的NamingStrategy不支持调用带有下划线的column name.在hibernate的bean中必须使用camel case.使用ImprovedNamingStrategy可以使hibernate成功map到带有下划线的column name.代码如下: 1. Configure文件 public static SessionFactory getSessionFactory() { if (sessionFactory == null) { Configu

hibernate中session的获取使用以及其他注意事项

hibernate中session的获取使用以及其他注意事项 前言:工作时,在同时使用Hibernate的getSession().getHibernateTemplate()获取Session后进行数据查询时不是出现了"session is close"异常就是出现其他异常问题,痛定思痛,决定收集并整理相关资料,方便今后的使用. 一.session的获取 在hibernate中的Session对象通过SessionFactory来管理,可以通过使用openSession ().get

hibernate中的继承关系

  1.       hibernate中的继承关系   代码:   <1>.POJO类:(Person类)   package qau.edu; import java.util.Date; public class Person { //  成员变量: private int id ; private String name ; private Date date ; //  相应的getter和setter方法: public int getId() { return id; } pub

hibernate中使用Annotation

在hibernate中使用annotation非常方便我们的web开发.下面对比一下使用annotation和和不使用之间的差别吧. 首先,无论你是否使用annotation,都必须有hibernate的配置文件(hibernate.cfg.xml),这个在hibernate的自带的手册中能找到,这里就不给出了. 其次建立一个名为Student的实体类,如下: 1 public class Student { 2 private int id; 3 private String name; 4

【Hibernate】解析hibernate中的缓存

Hibernate中的缓存一共有三种,一级缓存.二级缓存.查询缓存.缓存除了使用Hibernate自带的缓存,还可以使用redis进行缓存,或是MongoDB进行缓存. 所使用的Demo: User.java文件 package cn.test.bean; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.T

Hibernate中Session与本地线程绑定

------------------siwuxie095 Hibernate 中 Session 与本地线程绑定 1.Session 类似于 JDBC 的连接 Connection 2.Session 对象是单线程对象,只能自己使用,不能共用 将 Session 与本地线程绑定,保证 Session 对象绝对是一个单线程对象 3.Hibernate 帮助我们实现了 Session 与本地线程绑定(底层是 ThreadLocal) 4.获取与本地线程绑定的 Session (1)在 Hiberna