首页 > 代码库 > Hibernate最基础配置的记忆方式

Hibernate最基础配置的记忆方式

配置范本:   http://www.tutorialspoint.com/hibernate/hibernate_configuration.htm

1,核心配置文件

这个配置文件可以结合Hibernate的使用来记忆。

首先,在使用Hibernate的时候,需要先构造Configuration对象,然后用Configuration建造一个SessionFactory的一个具体实现。这就是一个抽象工厂模式。可以这样来记忆:既然factory的具体信息都来自configuration,那么<session-factory>标签包含在<hibernate-configuration>标签里就显得理所应当了。

其次,<session-factory>标签下的具体信息。Hibernate本身是对jdbc的轻量封装,那么jdbc接口的信息出现在<session-factory>标签里也就理所应当了。

关于hibernate.dialect。要知道,jdbc只是一个标准,平时对不同的数据库进行jdbc连接,也要下载对应的jdbc驱动,这是因为不同的数据库的内部实现不同。至于Dialect,官网描述为Represents a dialect of SQL implemented by a particular RDBMS.(代表了特定关系数据库的sql实现) ,可以猜测dialect做的是关于sql语句的封装。

最后,实体类映射文件的根节点是<hibernate-mapping>,下面可以配置一到多个<class>标签,既可以一个实体类对应一个映射文件,也可以把多个实体类映射放在同一个文件中。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration SYSTEM 
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.dialect">
            org.hibernate.dialect.MySQLDialect
        </property>
        <property name="hibernate.connection.driver_class">
            com.mysql.jdbc.Driver
        </property>

        <!-- Assume test is the database name -->
        <property name="hibernate.connection.url">
            jdbc:mysql://localhost:3306/db1
        </property>
        <property name="hibernate.connection.username">
            root
        </property>
        <property name="hibernate.connection.password">
            pwd
        </property>

        <!-- List of XML mapping files -->
        <mapping resource="tbl1a.hbm.xml" />
        <mapping resource="tbl1b.hbm.xml" />
    </session-factory>
</hibernate-configuration>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
 "-//Hibernate/Hibernate Mapping DTD//EN"
 "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="com.pojo.Tbl1a" table="tbl1a">
        <id name="id" type="int" column="id"></id>
        <property name="iachar" column="1achar" type="char" />
        <property name="iaint" column="1aint" type="int" />
    </class>
    
</hibernate-mapping>

 

Hibernate最基础配置的记忆方式