【SSH快速进阶】——Hibernate自动建表

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/48832613

  上文《【SSH快速进阶】——Hibernate环境搭建》中介绍了Hibernate环境搭建,环境搭建好了, 但是还没有数据库和表,Hibernate为提供了自动建表的功能。

   (摘自——Hibernate 自动创建表的方法)   我们从网上搜索到的hibernate源码中很多时候只有vo和配置文件,但没有创建表的sql脚本。

  很多时候需要我们反向创建表。一般情况下有如下两种方法:

  1、在配置文件中添加如下配置

<property name="hibernate.hbm2ddl.auto">create</property>

  然后我们再执行任何检索、更新等操作的时候就会自动建表

  2、编写一个方法,方法内容如下:

  Configuration conf=new Configuration();
  conf.configure("/hibernate.cfg.xml");
  SchemaExport dbExport=new SchemaExport(conf);
  dbExport.create(true, true);

  上面两种方法虽然都能反向创建表。但我个人建议仅在练习中如上述方法创建。因为存在以下问题:

  ① 只能创建表不能创建数据库   ② 创建的表的数据类型、长度经常跟我们实际需要不符。   ③ 第一种方式每次执行都会把以前旧表删除再次创建新表,所以执行完毕后一般要把这个语句注释掉或删除。   ④ 缺少初始化数据。


【 转载请注明出处——胡玉洋《【SSH快速进阶】——Hibernate自动建表》】

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

Mongo Database 性能优化

SQL Server有工具进行数据库的优化,Mongo Database Profiler.不仅有,而且功能更强大。 MongoDB 自带 Profiler,可...

34310
来自专栏乐沙弥的世界

system sys,sysoper sysdba 的区别

Oracle 中sys,system帐户以及登陆时的normal,sysoper,sysdba是经常容易混淆的几个概念,下面详细讲述了

743
来自专栏小二的折腾日记

面试总结-链接

https://blog.csdn.net/CCUTwangning/article/details/70153589 天下无难试之Redis面试题刁难大全 h...

701
来自专栏移动开发面面观

POSIX文件操作(二)

2215
来自专栏运维前线

Elasticsearch API 使用介绍

API文档: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs.htm...

2206
来自专栏坚毅的PHP

my linux FAQ

用命令查询系统是32位还是64位 getconf LONG_BIT or getconf WORD_BIT 例如: [root@sy02 /]# getconf...

3403
来自专栏不止思考

架构师带你玩转分布式锁

当某个资源在多系统之间,具有共享性的时候,为了保证大家访问这个资源数据是一致的,那么就必须要求在同一时刻只能被一个客户端处理,不能并发的执行,否者就会出现同一时...

881
来自专栏云计算教程系列

如何在Ubuntu 16.04上使用MySQL 5.6配置Galera集群

集群通过不同服务器分发更改来为数据库添加高可用性。如果其中一个实例失败,则其他已可以的实例还能继续服务。

2350
来自专栏乐百川的学习频道

django 快速入门

Django是Python语言编写的一个全栈式Web框架,可以帮助我们快速编写一个具有数据库功能、增删查改、后台管理等功能的网站。假如你只需要一些很简单的功能,...

2696
来自专栏Java编程技术

MySQL 中基于 XA 实现的分布式事务

Xa主要规定了RM与TM之间的交互,下面来看下XA规范中定义的RM 和 TM交互的接口:

1163

扫码关注云+社区

领取腾讯云代金券