`

hibernate自动创建表的配置

 
阅读更多

配置自动创建表:

<prop key="hibernate.hbm2ddl.auto">update</prop>//首次创建项目时用,项目稳定后一般注释

这里有4个值:

 

update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。

还有其他的参数: 
create:启动hibernate时,自动删除原来的表,新建所有的表,所以每次启动后的以前数据都会丢失。

create-drop:启动hibernate时,自动创建表,程序关闭时,自动把相应的表都删除。所以程序结束时,表和数据也不会再存在。 
validate :       
每次加载hibernate时,验证创建数据库表结构,只会和数据库中的表进行比较,不会创建新表,但是会插入新值。

然后在配置  读取实体类映射:

有3种方法:

1、(常用)

通过注解扫描包的方式:
<property name="packagesToScan">
<list><value>com.systop.common.core.dao.testmodel</value></list>

2、

通过注解的方式:
<property name="annotatedClasses"> 
  <list><value>com.systop.common.core.dao.testmodel.TestDept</value></list> 
</property> 

3、

mappingResources用于指定少量的hibernate配置文件像这样
Xml代码
<property name="mappingResources"> 
     <list> 
   <value>WEB-INF/conf/hibernate/cat.hbm.</value> 
               <value>WEB-INF/conf/hibernate/dog.hbm.xml</value> 
               ......  
     </list> 
</property> 

 

实例:

<bean id="propertyConfigurer"
      class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>
            <value>classpath*:/dataSource/jdbc.properties</value>
        </list>
    </property></bean><!-- 配置数据源 --><bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
    <property name="driverClassName" value="${jdbcCcbs.driverClassName}"/>
    <property name="url" value="${jdbcCcbs.url}"/>
    <property name="username" value="${jdbcCcbs.username}"/>
    <property name="password" value="${jdbcCcbs.password}"/></bean><!-- 配置SessionFactory--><bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"><!--<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">-->
    <property name="dataSource" ref="dataSource" />
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
            <!--自动创建表配置-->
            <!--<prop key="hibernate.hbm2ddl.auto">update</prop>-->
            <prop key="hibernate.show_sql">true</prop>
            <prop key="hibernate.format_sql">true</prop>
            <!--结果滚动集,跟分页有关-->
            <prop key="jdbc.use_scrollable_resultset">false</prop>
        </props>
    </property>
    <!--<property name="annotatedClasses">-->
        <!--<list>-->
            <!--<value>com.jason.entity.UserEntity</value>-->
        <!--</list>-->
    <!--</property>-->
    <property name="packagesToScan">
        <list>
            <value>com.jason.entity</value>
        </list>
    </property></bean>

 

分享到:
评论

相关推荐

    Hibernate自动创建表结构示例--Oracle

    标题"Hibernate自动创建表结构示例--Oracle"表明我们将使用Hibernate在Oracle数据库中自动生成表结构,这是通过Hibernate的`hibernate.hbm2ddl.auto`配置属性实现的。这个属性可以设置为"create"、"update"、...

    hibernate中创建表

    6. **运行应用**:启动应用,Hibernate会根据实体类和配置自动创建相应的数据库表。 在提供的链接`https://purplesunset.iteye.com/blog/500979`中,可能详细阐述了这些步骤,并给出了更多实践示例。在实际项目中,...

    Hibernate自动生成表demo

    当运行这个程序时,Hibernate会检查配置,并根据实体类自动创建相应的数据库表。在完成所有操作后,关闭SessionFactory以释放资源。 总的来说,通过使用Hibernate的注解和自动建表功能,我们可以轻松地在Java应用中...

    详解hibernate自动创建表的配置

    综上所述,通过正确配置`hibernate.hbm2ddl.auto`、实体类扫描和数据源,可以实现Hibernate自动创建和管理数据库表的功能,极大地简化了开发过程。但务必注意,在生产环境中谨慎使用`create`和`create-drop`,以防止...

    Hibernate通过配置文件自动生成表

    要让Hibernate自动生成表,我们需要在配置文件中开启自动创建或更新模式。以下是一个示例配置: ```xml &lt;hibernate-configuration&gt; &lt;!-- 数据库连接信息 --&gt; &lt;property name="hibernate.connection.driver_...

    Hibernate自动生成配置文件

    6. **用Hibernate自动生成配置文件**:选择数据库中的目标表,如`t_user`,通过右键菜单选择“HibernateReverseEngineering”,根据提示逐步填写相关信息,包括主键类型、对应的Java类名及包名等,最后点击“Finish...

    用myeclipse自动生成hibernate配置文件

    MyEclipse作为一款强大的集成开发环境,提供了自动生成Hibernate配置文件的功能,帮助开发者快速构建项目。以下是使用MyEclipse自动生成Hibernate配置文件的详细步骤: 1. **创建数据库表**: 在开始之前,需要先...

    hibernate自动生成dao,配置文件等的学习笔记,在myeclipse下实现

    反向工程是Hibernate自动生成代码的关键步骤。通过右键点击已连接的表,选择"Hibernate Reverse Engineering",我们可以启动这个过程。在这个界面中,你可以选择要生成的文件类型: 1. Hbm.xml文件:这是Hibernate...

    为 Hibernate 创建一张简单的表

    现在,当我们运行应用时,Hibernate会根据我们的实体类自动创建对应的数据库表。在上述`User`类的例子中,它会在数据库中创建一个名为`User`的表,包含`id`、`name`和`email`三个字段。 然而,`sql.sql`文件可能...

    java+hibernate双数据源配置

    本篇将详细讲解如何在Java项目中结合SpringBoot和Hibernate进行双数据源配置,以满足对MySQL数据库的高效管理。 首先,我们要明白什么是双数据源配置。双数据源配置是指在一个应用中同时管理两个或更多的数据源,每...

    Hibernate XML配置表映射实例

    总结一下,Hibernate XML配置表映射实例主要涉及以下几点: 1. `hibernate.cfg.xml`配置文件用于设置数据库连接和SessionFactory。 2. `hbm.xml`文件定义了Java类与数据库表的映射关系。 3. 使用SessionFactory和...

    Hibernate自动生成持久化类和映射文件

    "Hibernate自动生成持久化类和映射文件"这个话题主要涉及如何利用myEclipse这款集成开发环境的反向工程功能,快速地根据数据库中的表结构生成对应的Hibernate配置文件、映射文件以及持久化类。下面将详细介绍这一...

    Hibernate核心配置文件对照表

    - `hibernate.hbm2ddl.auto`: 自动创建/更新数据库模式,可选值有`create`, `create-drop`, `update`, `validate`等。 - `hibernate.connection.zero_data_date_format`: 日期和时间的零值格式化字符串。 - `...

    Hibernate3.4 不自动创建索引的问题

    如果想让Hibernate自动创建或更新数据库结构,包括索引,我们需要将这个属性设置为"create"、"create-drop"或者"update"。 但是,即使设置了正确的`hibernate.hbm2ddl.auto`,依然可能出现不自动创建索引的情况。这...

    代码自动生成工具 hibernate配置文件工具 MagicalTools

    通过简单的界面操作,开发者可以选择数据库表,工具会自动分析表结构,生成对应的Java实体类,同时创建相应的Hibernate配置文件,如`hibernate.cfg.xml`和`mapping.xml`。这极大地减少了手动编写代码的时间,确保了...

    解决 Springboot Jpa 自动创建表 和字段乱序问题[凤凰小哥哥]

    产生原因:因为使用 jpa 自动创建表的时候,采用的是TreeMap的,我们要变成LinkedHashMap 的结构。 解决方案:在项目下java文件夹下创建包名为: org.hibernate.cfg ,创建类: PropertyContainer [包名,类名...

    Myeclipse自动生成Hibernate配置文件及实体类映射ORM

    Myeclipse 自动生成 Hibernate 配置文件及实体类映射 ORM 配置文件 Myeclipse 是一个功能强大的集成开发环境(IDE),它提供了许多实用的功能来简化软件开发过程。在这个示例中,我们将展示如何使用 Myeclipse 自动...

    hibernateJar包及配置文件

    - 其他配置:如方言(Dialect)、实体别名、自动创建/更新/验证数据库结构等。 3. Hibernate映射文件(.hbm.xml): - 实体类与数据库表的映射:通过`&lt;class&gt;`标签定义实体类,`&lt;id&gt;`表示主键,`&lt;property&gt;`或`...

Global site tag (gtag.js) - Google Analytics