Spring和hibernate集合的框架中只要在applicationContext.xml文件中配置如下:

<prop key="hibernate.hbm2ddl.auto">update</prop>

Hibernate框架中只要在hibernate.cfg.xml里加上如下代码:

<property name="hbm2ddl.auto">update</property>

update:只是更新,没有就创建
create: 每次都是新创建
create-drop: 用完就会删除表

hibernate.cfg.xml 可以通过idea自动生成

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD//EN""http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration><session-factory><property name="connection.url"/><property name="connection.driver_class"/><property name="connection.username"/><property name="connection.password"/><property name="dialect">org.hibernate.dialect.MySQLDialect</property><!-- DB schema will be updated if needed -->
<!-- 可选值 update,create,create-drop(用完就删)--><property name="hbm2ddl.auto">create</property></session-factory>
</hibernate-configuration>

idea 生成hibernate-cfg.xml步骤
file->projectsTructure->+ hibernate->create hibernate.cfg.xml->Apply->ok
如果spring配置文件中配置过了sessionfactory,那么这里的hibernate.cfg.xml 会自动补充上url,driverclass,password 的值
如果是单一框架hibernate,则需要手动填入属性值
使用java代码读取配置生成数据表

  @Testpublic void testCreateTables(){Configuration cfg=new Configuration().configure();SessionFactory sessionFactory=cfg.buildSessionFactory();Session session=sessionFactory.openSession();session.beginTransaction();Noodles noodles=new Noodles();noodles.setNoodlesName("兰州拉面");session.save(noodles);session.getTransaction().commit();session.cose();}

注意需要给实体类加上各自的entity.hbm.xml 配置文件来映射(而我是使用的注解)
所以代码需要改变,来读取被注解标注的实体类,否则hibernate只是认为实体是简单的java类

 @Testpublic void testCreateTables(){Configuration cfg=new Configuration().configure();SessionFactory sessionFactory= cfg.configure()// 可以add 多个被注解的实体类// 相比单独的在hibernate.cfg.xml 中配置每个实体的映射要简单得多.addAnnotatedClass(Noodles.class).buildSessionFactory();Session session=sessionFactory.openSession();session.beginTransaction();Noodles noodles=new Noodles();noodles.setNoodlesName("兰州拉面");session.save(noodles);session.getTransaction().commit();session.close();}


效果:中文乱码,需要给url加上编码限制

乱码解决:
1,修改数据库编码 navicat ->右键数据库->数据库属性->设置编码
2.连接指定编码

?characterEncoding=utf-8

hibernate 配置自动创建表相关推荐

  1. hibernate mysql 自动建表_配置hibernate根据实体类自动建表功能

    Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 如何使用呢?很简单,只要在hibernate.cfg.xml里加上如下代码 Xml代码update upda ...

  2. Hibernate连接mysql数据库并自动创建表

    天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个 ...

  3. Hibernate 自动创建表

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 在 hibernate.cfg.xml 添加这句话,可以自动生成数据表 : <prope ...

  4. Hibernate自动创建表

    Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 一.通过Hibernate的ShemaExport来创建 1)实体类 package com.xiaomo. ...

  5. A.CTable开源框架Mybatis增强自动创建表/更新表结构/实现类似hibernate共通的增删改查-mybatis-enhance-actable

    mybatis-enhance-actable-1.3.1.RELEASE 项目已更新既支持传统Spring项目也支持Springboot项目,同时支持tk.mybatis能够支持更强大的CUDR(为 ...

  6. Java自动切表_java_Mybatis自动创建表和更新表结构,最近有小伙伴问我mybatis有没有 - phpStudy...

    Mybatis自动创建表和更新表结构 最近有小伙伴问我mybatis有没有自动创建表结构的功能,因为他们之前一直使用hibernate用习惯了,理所当然的认为,在实体类上配置下注解或者写写映射文件,系 ...

  7. Hibrenate实现根据实体类自动创建表或添加字段

    Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 实现: 在配置hibernate的配置文件中将hbm2ddl.auto设置为update,如:Xml代码&l ...

  8. Hibernate3.x,hibernate3.x,Hibernate3.x整合Spring3.x不能实现自动创建表结构的解决办法:...

    一:今天遇到一个诡异的问题,就是关于hibernate3.x实现表结构自动创建,一般我们在用Struts2,Hibernate3.x,Spring3.x搭建框架,尤其在开发阶段都希望在启动Web容器时 ...

  9. Beego使用orm自动创建表结构(结构化目录--亲团队开发)

    关于 Beego 框架,这里不再赘述.beego官方网站 一.什么是orm,为什么要用orm? orm (Object-relational mapping),中文翻译为对象关系映射,是一种为了解决面 ...

最新文章

  1. Angular rxjs里自定义operator的使用
  2. 洛谷-图的遍历-P2661-信息传递
  3. 辐射避难所服务器维护,《辐射:避难所Online》6月2日停服维护更新公告
  4. HTML期末作业-宠物网
  5. virtualbox报错:Failed, trying without DKMS的解决方案
  6. LeetCode112. 路径总和(DFS)(递归)
  7. 求传递闭包c语言具体编程,实验一_传递闭包的实现.doc
  8. 服务器的分类都有哪几种?
  9. element-plus 中loading 自定义图片
  10. ipa包瘦身之图片无损压缩瘦身
  11. qt中如何模拟按钮点击_qt模拟鼠标单击事件
  12. 你评论,我赠书~【TFS-CLUB社区 第11期赠书活动】〖Unity手机游戏开发:从搭建到发布上线全流程实战〗等你来拿,参与评论,即可有机获得
  13. windows2016安装AD域
  14. 18位身份证号码最后一位校验
  15. uni-app使用vue-i18n实现国际化(中英文切换)
  16. String中与获取相关的几个方法
  17. 甲骨文java计算机考证
  18. python pandas dataframe 获取除了指定列以外的所有列
  19. 什么!脑机接口可让中风患者快速,准确的打字?
  20. 适用于 Windows 的 5 大 PDF 编辑器

热门文章

  1. 【认证】【澳大利亚】澳大利亚认证相关,Freeview EPG
  2. linux设置用户名密码命令,Linux设置(修改)用户密码命令-passwd | IT运维网
  3. [附源码]PHP计算机毕业设计会议室预约系统(程序+LW)
  4. 使用unity完成华为游戏的初始化和华为帐号登录
  5. 进来学习,这个拿墨刀产品素材设计大赛万元大奖的原型设计超强
  6. Proxmox ve 开启嵌套虚拟化
  7. python画不同颜色的直方图_Python与机器视觉(x) 颜色直方图
  8. Java面向对象程序设计(第二版)袁绍欣 第十章课后习题答案
  9. EasyUI tabs click监听
  10. 如何阻止移动设备(手机,pad)浏览器双击放大网页?