`
yonglin4605
  • 浏览: 187689 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hibernate.hbm2ddl.auto 的设置

    博客分类:
  • ssh
阅读更多
<properties>
           <property name="hibernate.show_sql" value="true" />      
           <property name="hibernate.hbm2ddl.auto" value="create-drop" />
</properties>



validate               加载hibernate时,验证创建数据库表结构
create                  每次加载hibernate,重新创建数据库表结构,这就是导致数据库表数据丢失的原因。
create-drop        加载hibernate时创建,退出是删除表结构
update                 加载hibernate自动更新数据库结构

在本机开发调试初始化数据的时候可以选择create、update等。


但是网站发布正式版本的时候,对数据库现有的数据或表结构进行自动的更新是很危险的。 此时此刻应该由DBA同志通过手工的方式进行后台的数据库操作。

hibernate.hbm2ddl.auto的值建议是“none”或“validate”。“validate”应该是最好的选择:这样spring在加载之初,如果model层和数据库表结构不同,就会报错,这样有助于技术运维预先发现问题。
分享到:
评论
1 楼 peijinlong 2009-05-31  
我想知道这项属性的应用环境,因为我以前使用这项属性是在maven的工程里面的。

我在一个Spring+Hibernate的环境里面(没有使用ant或maven),已经配置好了Datasource和SessionFactory的bean了,tomcat的启动log显示applicationContext加载正常,也没有任何异常。我使用的值是create-drop。
但是加载完毕后,并没有发现数据库有任何变化。

相关推荐

    hibernate.hbm2ddl.auto属性详解

    详解hibernate.hbm2ddl.atuo 属性的配置

    hibernate3 配置hbm2ddl和hbm2java所需jar

    要使用hbm2ddl,你需要在Hibernate配置文件(如hibernate.cfg.xml)中启用auto-import属性,并指定对应的schema更新策略。 2. hbm2java: hbm2java工具则将Hibernate的映射文件转换为Java实体类。这些实体类是与...

    Hibernate常用操作示例

    Hibernate常用操作示例,包含详细注释说明,数据库初始化文件。使用和学习请参考:http://blog.csdn.net/daijin888888/article/details/51692942

    详解hibernate自动创建表的配置

    首先,我们要关注的关键配置项是`hibernate.hbm2ddl.auto`。这个属性决定了Hibernate在启动时如何处理数据库的元数据,即表结构。以下四个值是它可能的取值: 1. **update**:这是最常用的设置,当设置为`update`时...

    hibernate325ga+struts2011+spring25实现crud

    部署时,可修改web-inf/config/spring/applicationContext.xml文件,修改相应的数据库信息,把把&lt;prop key="hibernate.hbm2ddl.auto"&gt;update 改为&lt;prop key="hibernate.hbm2ddl.auto"&gt;create即可自动创建表 我自己写的...

    hbm2ddl属性hbm2ddl属性

    &lt;property name="hibernate.hbm2ddl.auto"&gt;create ``` 这样,每当应用程序启动时,Hibernate都会检查`User`实体类并自动创建名为`users`的表。 2. **更改实体类**:如果我们决定为`User`实体添加一个新的字段`...

    Spring3+hibernate4+Struts2图书管理系统

    2.修改applicationContext.xml文件中hibernate.hbm2ddl.auto的值为create而不是update 3.修改数据库的连接信息(数据库,用户名,密码) 4.部署到Tomcat服务器上面,然后运行 5.在浏览器中输入...

    javaee 书上的Customer程序

    怎样运用Hibernate hibernate.dialect=org.hibernate.dialect.SQLServerDialect hibernate.connection.driver_class=... hibernate.hbm2ddl.auto=create hibernate.show_sql=true

    hibernate.cfg.xml文件

    5. **hibernate.hbm2ddl.auto**:此属性决定了Hibernate在启动时如何处理数据库模式。例如,`create`表示每次启动时都创建新表,`update`则更新已有表结构,`validate`验证表结构是否匹配,`none`则不做任何操作。 ...

    Hibernate.cfg.xml常用配置总结.pdf

    3. **Hbm2ddl.auto**: 这个属性决定了 Hibernate 如何自动管理数据库的元数据。有以下几种模式: - `create`: 每次启动应用时,Hibernate 会删除现有的表并重新创建它们,这会导致数据丢失。 - `update`: ...

    Hibernate.cfg.xml常用配置总结.docx

    例如,为了保证生产环境数据的安全,通常会将 `Hbm2ddl.auto` 设置为 `update` 或 `validate`,而不是 `create` 或 `create-drop`。同时,`Hibernate.show_sql` 和 `Hibernate.format_sql` 在生产环境中可能被设置为...

    数据库的自动创建

    `hibernate.hbm2ddl.auto`的设置对于开发和测试环境来说,提供了极大的便利性,减少了手动管理数据库表结构的工作。但在生产环境中,一般不推荐使用`create`和`create-drop`,因为它们可能会导致数据丢失。通常,...

    hibernate.properties

    #hibernate.hbm2ddl.auto create-drop #hibernate.hbm2ddl.auto create #hibernate.hbm2ddl.auto update #hibernate.hbm2ddl.auto validate ## specify a default schema and catalog for unqualified tablenames ...

    Hibernate四大属性

    这四个属性分别是:`connection.datasource`、`hibernate.hbm2ddl.auto`、`hibernate.show_sql`和`hibernate.c3p0.min_size`,接下来我们将逐一深入探讨。 1. `connection.datasource`: 这个属性定义了数据源,它...

    Hibernate参数设置一览表

    6. **hibernate.hbm2ddl.auto** 控制Hibernate自动管理数据库模式。可选值包括`create`(每次启动时创建新表)、`update`(根据实体类更新表结构)、`validate`(验证表结构是否匹配实体类)、`none`(不进行任何...

    Hibernate开发jar包

    &lt;property name="hibernate.hbm2ddl.auto"&gt;update &lt;!-- 配置C3P0的连接池 --&gt; &lt;property name="connection.provider_class"&gt;org.hibernate.connection.C3P0ConnectionProvider &lt;!-- 映射配置文件 -...

    jeecg架构搭建步骤

    6. 如果遇到表不存在的错误,如Table 'easyssh.tauth' doesn't exist,则需要确认hibernate.hbm2ddl.auto设置是否正确。 7. 如果在部署时遇到spring.xml等配置文件找不到的错误,需要在导入项目到MyEclipse时勾选...

    oracle的hibernate配置文件

    `hibernate.hbm2ddl.auto`控制数据库表的自动管理,`update`表示在启动时更新数据库结构。`hibernate.show_sql`开启后,Hibernate会打印执行的SQL语句。 3. SessionFactory配置: SessionFactory是Hibernate的...

    hibernate配置

    `hibernate.hbm2ddl.auto`参数是Hibernate配置中一个关键的属性,它控制着Hibernate在启动时对数据库表的操作行为。这个属性的值可以设置为以下几个选项: 1. **create**: 当设置为`create`时,Hibernate会在应用...

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

    当Session启动时,Hibernate会根据`hibernate.hbm2ddl.auto`的设置自动处理表结构。 在给定的压缩包文件“hibernate”中,可能包含了示例项目的源代码,如实体类、映射文件、配置文件以及测试用例。通过研究这些...

Global site tag (gtag.js) - Google Analytics