解决如何用Hibernate自动创建表(hibernate3.0)

1.hibernate的基本配置如下  需要注意的是mysql5版本以后sql方言要配置为MySQL5Dialect

<hibernate-configuration>
    <session-factory>
        <!-- 数据库链接驱动 -->
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <!--<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>-->
        <!--链接地址用户名密码 -->
        <property name="connection.url">jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&amp;useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false</property>
        <property name="connection.username">root</property>
        <property name="connection.password">root</property>



        <!-- JDBC 链接池大小 -->
        <property name="connection.pool_size">5</property>

        <!-- SQL 方言 -->
        <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>

        <!-- Hibernate session 上下文为线程级别 -->
        <property name="current_session_context_class">thread</property>

        <!-- 配置C3P0缓存链接池  -->
        <property name="cache.provider_class">org.hibernate.c3p0.internal.C3P0ConnectionProvider</property>
        <!--在连接池中可用数据库连接的最小数目-->
        <property name="c3p0.min_size">6</property>
        <!--在连接池中所有数据库连接的最大数目-->
        <property name="c3p0.max_size">50</property>
        <!--设定数据库连接的超时时间-->
        <!--<property name="c3p0.time_out">1800</property>-->
        <property name="c3p0.timeout">100</property>
        <!--可以被缓存的PreparedStatement的最大数目-->
        <property name="c3p0.max_statement">50</property>
        <!-- 当连接池里面的连接用完的时候,C3P0一下获取的新的连接数 -->
        <property name="c3p0.acquire_increment">1</property>
        <!-- 连接对象因该多长时间被自动校验的时间段,以秒为单位-->
        <property name="c3p0.idle_test_period">100</property> <!-- seconds -->
        <!--最多可以创建Statements对象的个数. . 就是可以执行SQL语句的对象的个数-->
        <property name="c3p0.max_statements">0</property>

        <!-- SQL语句输出 -->
        <property name="show_sql">true</property>
        <property name="format_sql">true</property>

        <!-- 自动更新数据库的级别 -->
        <property name="hbm2ddl.auto">update</property>


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

 

 

<property name="hbm2ddl.auto">update</property>这一句用户SessionFactory创建时自动创建库,在库创建好后注释掉此语句

2.在hibernate.cfg.xml中配置mapping(如下,需要将model类都配置)

<mapping package="net.bin.web.alike.push.bean.db"
        class="net.bin.web.alike.push.bean.db.User"/>

 

 3.新建test类,运行即可

public class test {
     static final SessionFactory sessionFactory;

    static {
        Configuration configuration = new Configuration();
        configuration.configure();
        sessionFactory = configuration.buildSessionFactory();
    }

    public static void main(String[] args) {

    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值