Hibernate 与数据库的关系是ORM关系,对象映射数据库。

  那么如何通过对象对数据库进行各种对象的ddl与dml操作呢?

  数据库对象操作的〈database-object /〉+ SchemaExport

  1、hibernate.cfg.xml

  <?xml version="1.0" encoding="GBK"?>

  <!-- 指定Hibernate配置文件的DTD信息 -->

  <!DOCTYPE hibernate-configuration PUBLIC

  "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

  "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

  <!-- hibernate- configuration是连接配置文件的根元素 -->

  <hibernate-configuration>

  <session-factory>

  ……

  <!-- 根据需要自动创建数据库:如果创建表,这里必须为create -->

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

  <!-- 显示Hibernate持久化操作所生成的SQL -->

  <property name="show_sql">true</property>

  <!-- 将SQL脚本进行格式化后再输出 -->

  <property name="hibernate.format_sql">true</property>

  <!-- 罗列所有的映射文件 -->

  <mapping resource="……/lovejk.hbm.xml"/>

  </session-factory>

  lt;/hibernate-configuration>

  2、lovejk.hbm.xml

  <?xml version="1.0" encoding="gb2312"?>

  <!-- 指定Hiberante3映射文件的DTD信息 -->

  <!DOCTYPE hibernate-mapping PUBLIC

  "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

  "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

  <!-- hibernate-mapping是映射文件的根元素 -->

  <hibernate-mapping>

  <!-- 使用data-object元素定义数据库对象 -->

  <database-object>

  <!-- 定义创建数据库对象的语句 -->

  <create>create table testjk(name varchar(256));</create>

  <!-- 让drop元素为空,不删除任何对象 -->

  <drop></drop>

  <!-- 指定仅对MySQL数据库有效 -->

  <dialect-scope name="org.hibernate.dialect.MySQLDialect"/>

  <dialect-scope name="org.hibernate.dialect.MySQLInnoDBDialect"/>

  </database-object>

  </hibernate-mapping>

  3、执行 www.jx-jf.com

  public static void main(String[] args) throws Exception

  {

  //实例化Configuration,这行代码默认加载hibernate.cfg.xml文件

  Configuration conf = new Configuration()。configure();

  //以Configuration创建SessionFactory

  SessionFactory sf = conf.buildSessionFactory();

  // //创建SchemaExport对象 www.yzyedu.com

  SchemaExport se = new SchemaExport(conf);

  // //设置输出格式良好的SQL脚本

  se.setFormat(true);

  // //设置保存SQL脚本的文件名

  se.setOutputFile("d:\\1.sql");

  // //输出SQL脚本,并执行SQL脚本

  se.create(true, true);

  sf.close();

  }

Hibernate数据库对象的创建与导出的更多相关文章

  1. Greenplum+Hadoop学习笔记-14-定义数据库对象之创建与管理模式

    6.3.创建与管理模式 概述:DB内组织对象的一种逻辑结构.一个DB内能够有多个模式.在未指定模式时默认放置在public中.能够通过"\dn"方式查看数据库中现有模式: test ...

  2. Greenplum中定义数据库对象之创建与管理模式

    创建与管理模式 概述:DB内组织对象的一种逻辑结构.一个DB内能够有多个模式.在未指定模式时默认放置在public中.能够通过"\dn"方式查看数据库中现有模式. testdw=# ...

  3. oracle数据库表空间创建&导入&导出

    1.表空间创建 --删除表空间 drop tablespace EVPBDMGIS including contents and datafiles; --删除用户 drop user EVPBDMG ...

  4. MySQL笔记(二)数据库对象的创建和管理

    学校用 sqlserver ,记录数据移植到 mysql 过程中的一些问题(对应数据类型,主键外键等). 索引: 查看数据的物理路径 查看表相关的信息(SHOW CREATE TABLE.DESC) ...

  5. oracle(创建数据库对象)

    1 --创建数据库 2 --1.SYSDBA系统权限 3 startup:--启动数据库. 4 shutdown:--关闭数据库. 5 alter database[mount]|[open]|[ba ...

  6. Oracle数据库对象_同义词

    同义词是一种数据库对象,它是为一个数据库对象定义的别名,使用同义词的主要目的是为了简化SQL语句的书写. 同义词的概念和类型 利用同义词可以为用户的一个对象,或者其他用户的一个对象定义别名,从而简化命 ...

  7. Hibernate映射文件创建和删除触发器,存储过程等数据库对象

    创建表,触发器,和存储过程等数据库对象,这里一定要用create 在hibernate.cfg.xml文件中

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

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

  9. 使用Myeclipse为数据表创建hibernate实体对象

    hibernate是orm框架的一种,orm即Object Relational Mapping,对象映射关系,其主要作用是将数据库(mysql,mssql,oracle)的对象转换为具体编程语言(如 ...

随机推荐

  1. COJ 0538 购物问题

    购物问题 难度级别:C: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 由于换季,ACM商场推出优惠活动,以超低价格出售若干种商品.但是,商场 ...

  2. bzoj1503 [NOI2004]郁闷的出纳员(名次树+懒惰标记)

    1503: [NOI2004]郁闷的出纳员 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 8705  Solved: 3027[Submit][Statu ...

  3. MyBatis Parameter not found

    遇到一个很牛X的问题.当MyBatis的foreach中item='cr'时,程序居然抛出异常: 19:07:55.338 DEBUG c.l.dao.PageMapper.selectByCrite ...

  4. OBJ-C

    1.直接赋值 NSString *name = @"Starain"; 2.用已经存在的字符串进行初始化 NSString *name2 = [NSString stringWit ...

  5. Mvc中DropDownList 和DropDownListFor的常用方法

    Mvc中DropDownList 和DropDownListFor的常用方法 一.非强类型: Controller:ViewData["AreId"] = from a in rp ...

  6. Java实现文件的预览

    最近项目需要用到文件的预览功能,就开始在网上收集资料,学习了几种文件预览的方法.我集成到我项目内测试的有以下三种,最后使用的是第三种: 直接使用别人提供的服务 例如:office web 365 使用 ...

  7. css文本超出2行就隐藏并显示省略号

    之前在网上看到过这样的代码,感觉有的时候还是挺有用的,故留个笔记. display:-webkit-box; //将对象作为弹性伸缩盒子模型显示. -webkit-box-orient:vertica ...

  8. Citrix 服务器虚拟化之十三 Xenserver虚拟机内存优化与性能监控

    Citrix 服务器虚拟化之十三   Xenserver虚拟机内存优化与性能监控 XenServer的DMC通过自动调节运行的虚拟机的内存,每个VM分配给指定的最小和最大内存值之间,以保证性能并允许每 ...

  9. Liferay 6.1开发学习

    http://www.huqiwen.com/2013/01/10/liferay-6-1-development-study-17-springmvc-portlet/ http://www.blo ...

  10. ORACLE函数之单行数字函数

     1.           ABS(X) 返回X的绝对值 SQL>SELECT ABS(-1) A,ABS(1) B,ABS(0) C FROM DUAL; A          B     ...