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. 【HDOJ】2604 Queuing

    递推,推得f(n) = f(n-1) + f(n-3) + f(n-4).然后转换成矩阵相乘,如下f(n-1)  f(n-2)  f(n-3)  f(n-4)   *    1   1   0   0 ...

  2. Java StringTokenizer分割字符串

    除了String本身的split方法,JDK在很早就提供了StringTokenizer这个类来分割字符串: 不过,由于正则表达式和String本身的功能越来越多,StringTokenizer已经被 ...

  3. Linux下的memset函数

    函数原型 void *memset(void *s, int c, size_t n); 函数功能 将以s为首的存储空间前n字节空间全部替换为参数c指定的数据. 返回值 更新后的首地址s. 头文件 # ...

  4. Visual Studio创建跨平台移动应用_01.Cordova&Xamarin

          目前开发移动应用有三种模式:Native.Hybird.Web,若要开发跨平台的移动应用,又希望与本地API交互,那么Hybird是一个非常好的选择.       作为一个.Net程序员, ...

  5. 酷派D530刷机指引之官方ROM

    刷机前的准备工作 刷官方ROM的大致过程就是:先手机连接电脑,然后在电脑上运行刷机工具,然后那个刷机工具就会把你选择的ROM装到手机里面,然后就没有然后了. 所以在刷机之前,硬件方面需要准备好: 充满 ...

  6. hdu 4540 威威猫系列故事——打地鼠 dp小水题

    威威猫系列故事——打地鼠 Time Limit: 300/100 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Total ...

  7. IOS开发之Post 方式获取服务器数据

    //1.创建post方式的 参数字符串url +(NSString *)createPostURL:(NSMutableDictionary *)params { NSString *postStri ...

  8. 浅谈Manacher算法与扩展KMP之间的联系

    首先,在谈到Manacher算法之前,我们先来看一个小问题:给定一个字符串S,求该字符串的最长回文子串的长度.对于该问题的求解.网上解法颇多.时间复杂度也不尽同样,这里列述几种常见的解法. 解法一   ...

  9. ICMP报文分析

    一.概述: 1.   ICMP同意主机或路由报告差错情况和提供有关异常情况.ICMP是因特网的标准协议,但ICMP不是高层协议,而是IP层的协议.通常ICMP报文被IP层或更高层协议(TCP或UDP) ...

  10. CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡【转】

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡   一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2 ...