1. 程式人生 > >hibernate通過實體類和hbm.xml生成資料庫表

hibernate通過實體類和hbm.xml生成資料庫表

    由於某些原因,上某網站找了一個適合自己需求的開源專案,框架為ssh,難耐沒有sql指令碼,於是想到hibernate的正向生成資料庫表,首先做好準備工作:

    1、建好對應的資料庫

    2、需要一個hibernate.cfg.xml的配置檔案(和你用validator逆向生成實體類用的差不多),程式碼如下:

    

<?xml version="1.0" encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/xx?useUnicode=true&amp;characterEncoding=UTF8
        </property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">123456</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>

        <mapping resource="com/xx/xx.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

3、最後需要一個工具類來生成表,程式碼如下:

public static void main(String[] args) {
	//讀取配置檔案
	Configuration cfg = new Configuration().configure("com/hibernate.cfg.xml");
	// 生成ddl檔案,並在控制檯輸出
	SchemaExport export = new SchemaExport(cfg);
	export.create(true, true);
}