SSH项目中根据Hibernate的映射文件生成数据库表的方案:

时间:2021-05-20 08:27:36

1.首先在项目的根目录下配置:hibernate.cfg.xml文件:如下:

<?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>


  <!-- Database connection settings -->
        <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:ORCL</property>
        <property name="connection.username">WMS</property>
        <property name="connection.password">WMS</property>


        <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>


        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.OracleDialect</property>




        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>


        <!-- Drop and re-create the database schema on startup -->
        <property name="hbm2ddl.auto">create</property>

<mapping resource="com/ydsn/tms/hbm/Tbcharges.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbcoffersfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbconsigneesfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbcustomerfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbdefectivegoodsinventory.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbgoodsdisplacement.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbgoodsfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbgoodsmovecoffer.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbgoodspositionfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbinventory.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbinvoices.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tboutstorehouseorder.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbpermissiongroups.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbprofitloss.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbserialnumfiles.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbstorageinvoices.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbstorageinvoicesdetail.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbstorageorder.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbstorehouselist.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbstorehouselistdetail.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbuserinfo.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbuserpermission.hbm.xml" />
<mapping resource="com/ydsn/tms/hbm/Tbvoucher.hbm.xml" />


</session-factory>
</hibernate-configuration>

2.写一个测试类,让它自动生成数据库表文件,我这里使用的是oracle数据库:

package com.ydsn.tms.test;


import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;


public class TestSprinig {


public static void main(String[] args) {

Configuration cfg = new Configuration().configure();
SchemaExport export = new SchemaExport(cfg);
export.create(true, true);
}
}