hibernate.cfg.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!--这部分以后直接复制引用即可主要是版本与DTD的一些声明-->
<hibernate-configuration>
<session-factory>
<!-- hibernate 设计者,给我们提供了一写常用的配置 -->
<!-- 配置使用的driver -->
<property name="connection.driver_class">你的数据库驱动</property>
<property name="connection.username">数据库登陆用户名</property>
<property name="connection.password">数据库登陆密码</property>
<property name="connection.url">(数据库连接的端口)jdbc:mysql:/localhost:3306/test(测试用的数据库,以后要用则修改为自己的数据库)</property>
<!-- 配置dialect方言,告诉hibernate连接是哪种数据库 -->
<property name="dialect">可以查看参考文档(不同的数据库有着不同的dialect方言配置)</property>
<!-- 显示出对应的sql -->
<property name="show_sql">true</property>
<!-- 让hibernate给我们自动创建表 create :如果没有该表则创建(不允许插入相同的记录).update:如果没有表,则跟create一样;当表的结构变化时,重新建表(允许插入相同的记录)-->
<property name="hbm2ddl.auto">create</property>
<!-- 指定管理的对象映射文件 -->
<mapping resource="对象映射文件的路径"/>
</session-factory>
</hibernate-configuration>
***hibernate开发的三种方式之《编写domain object + 映射文件 ------> 创建出对应的数据库》
这种方式下,写好domain对象和对象关系映射文件(domain.hbm.xml)即可,对应的数据库表可以通过加载核心配置文件的时候生成(hibernate.cfg.xml)自动生成表的配置如下即可
<property name="hbm2ddl.auto">配置值</property>
其中这里可以有有四个配置值: create , update , create-drop, validate
1、create
当我们的应用程序加载hibernate.cfg.xml [ new Configuration().config(); ]就会根据映射文件,创建出数据库, 每次都会重新创建, 原来表中的数据就没有。
2、update
如果数据库中没有该表,则创建,如果有表,则看有没有变化,如果有变化,则更新.原有数据不会丢失。
3、create-drop(创建表-删除表)
在显示关闭 sessionFactory时,将drop掉数据库的schema
4、validate
相当于每次插入数据之前都会验证数据库中的表结构和hbm文件的结构是否一致