一.Hibernate原生状态

?
1
2
3
4
5
Configuration
cfg =
new

Configuration().configure();
 
SchemaExport
export =
new

SchemaExport(cfg);
 
export.create(true,
true);

二.Hibernate整合Spring

1.使用hibernate.cfg.xml原生配置

hibernate.cfg.xml同原生一样编写

在Spring主配置文件applicationContext中,引入hibernate.cfg.xml

使用SchemaExport生成数据库表的代码同上一致。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
Spring
applicationContext.xml
 
<bean

id
="sessionFactory"
 
   class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
 
      <property

name
="configLocation"
 
        value="file:src/hibernate.cfg.xml">
 
      </property>
 
</bean>

2.不使用hibernate.cfg.xml,在Spring的主配置文件applicationContext.xml中配置

完全不编写hibernate.cfg.xml,全部都在applicationContext.xml中配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
ClassPathResource
ac =
new

ClassPathResource(
"applicationContext.xml");
 
     XmlBeanFactory
xbf =
new

XmlBeanFactory(ac);
 
     //注意:
&sessionFactory ,一定要包含 & ,不加Spring返回的是Hibernate下的SessionFactoryImpl类
 
     LocalSessionFactoryBean
lsfb=(LocalSessionFactoryBean) xbf.getBean(
"&sessionFactory");
 
     Configuration
cfg=lsfb.getConfiguration();
 
     SchemaExport
export=
new

SchemaExport(cfg);
 
     export.create(true,
false);
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!--
配置数据源-->
 
 <bean

id
="dataSource"

class
="org.springframework.jdbc.datasource.DriverManagerDataSource">
 
    <property

name
="driverClassName"

value
="${jdbc.driverClassName}"/>
 
      <property

name
="url"

value
="${jdbc.url}"/>
 
      <property

name
="username"

value
="${jdbc.username}"/>
 
      <property

name
="password"

value
="${jdbc.password}"/>
 
 </bean>
 
 
 
 <!--
配置sessionfactory,该配置替代了hibernate.cfg.xml的配置 -->
 
 <bean

id
="sessionFactory"

class
="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
 
    <property

name
="dataSource"

ref
="dataSource"></property>
 
    <property

name
="mappingResources">
 
      <list>
 
         <value>xxx/xxx/model/User.hbm.xml</value>
 
      </list>
 
    </property>
 
    <property

name
="hibernateProperties">
 
      <props>
 
         <prop

key
="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
 
         <prop

key
="hibernate.show_sql">true</prop>
 
         <prop

key
="hibernate.format_sql">true</prop>
 
      </props>
 
    </property>
 
 </bean>

使用schemaExport自动生成表结构的更多相关文章

  1. hibernate.hbm2ddl.auto=update不能自动生成表结构

    在写上篇文章<spring整合springmvc和hibernate>的时候,曾遇到一个问题 INFO: Server startup in 8102 ms Hibernate: inse ...

  2. 利用powerDesigner15.1连接oracle数据库并自动生成表结构

    利用powerDesigner15.1连接oracle数据库并自动生成表结构 参考:http://blog.csdn.net/qq_24531461/article/details/76713802 ...

  3. Hibernate之SchemaExport+配置文件生成表结构

    首先要生成表,得先有实体类,以Person.java为例: /** * * @author Administrator * @hibernate.class table="T_Person& ...

  4. 菜鸟学SSH(十一)——Hibernate之SchemaExport+配置文件生成表结构

    今天说点基础的东西,说说怎样通过SchemaExport跟Hibernate的配置文件生成表结构.事实上方法很easy,仅仅须要两个配置文件,两个Java类就能够完毕. 首先要生成表,得先有实体类,以 ...

  5. Hibernate使用自定义脚本替换注解或者xml文件中的自动生成表结构

    本文作者:苏生米沿 本文地址:http://blog.csdn.net/sushengmiyan/article/details/50534361 我们都清楚,可以使用hibernate的metada ...

  6. Spring4整合Hibernate5时不能自动生成表结构

    © 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述: Spring4整合Hibernate5时,不再使用hibernate.cfg.xml,将其内容整合到Spring配置文件中,启动后不能 ...

  7. hibernate如何配置自动生成表

    hibernate自动生成表有两种方法: 1.直接写代码,通过方法来创建数据库表. 2.通过 hibernate.cfg.xml配置标签来创建数据表. 下面依次实现: 1.直接写代码,通过方法来创建数 ...

  8. 基于PHP和mysql的自动生成表单

    开发背景:公司要求管理系统能够由管理员在前台页面管理系统表单,能够对表单进行增删改查基本操作,表单的各个字段都可以被修改.删除,可以添加新的字段,并且不影响系统正常运行,前台表单展示要由系统自动处理, ...

  9. EF:根据实体类生成表结构SQL

    根据实体类生成表结构SQL: PM> Enable-Migrations -ProjectName Domain -StartUpProjectName Handler -Force PM> ...

随机推荐

  1. SYBASE的select into与insert into使用和区别

    对于表的部分或全部字段的复制,Sybase数据库提供了两种方式:select into和insert into. select into: 语法:select  value1, value2, val ...

  2. GCD API 记录 (三)

    本篇就不废话啦,接着上篇记录我见过或者使用过的与GCD相关的API.由于一些API使用的非常少,用过之后难免会忘记,还是记录一下比较好. 6.dispatch_group_wait 该API依然是与d ...

  3. 安卓中的消息循环机制Handler及Looper详解

    我们知道安卓中的UI线程不是线程安全的,我们不能在UI线程中进行耗时操作,通常我们的做法是开启一个子线程在子线程中处理耗时操作,但是安卓规定不允许在子线程中进行UI的更新操作,通常我们会通过Handl ...

  4. 银联在线 网关支付 (JAVA版)

    这一版本的编写是在我上一次博客的基础上写的,有不懂得童鞋可以先看下我的原先在线支付的博客,熟悉下:http://blog.csdn.net/yulei_qq/article/details/45197 ...

  5. html5学习之旅-html5的简易数据库开发(18)

    实际上是模拟实现html5的数据库功能,用键值对的方式. !!!!!!废话不多说 ,代码 index.html的代码 <!DOCTYPE html> <html lang=" ...

  6. 开源项目管理系统:ProjectForge

    ProjectForge是一个Java编写的开源的基于Web的项目管理解决方案.包括:工时表(Timesheet).费用管理.项目甘特图,控制和管理工程分解结构.集成JiRA做为问题管理系统. 使用的 ...

  7. hadoop环境配置过程中可能遇到问题的解决方案

    Failed to set setXIncludeAware(true) for parser 遇到此问题一般是jar包冲突的问题.一种情况是我们向java的lib目录添加我们自己的jar包导致had ...

  8. Linux系统的shell是什么

    shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的是Bash.本章讲述了shell的工作原理,shell的种类,shell的一般操作及Bash的特性. 什么是 ...

  9. DBUtils源码分析

    其实,在这篇文章里,我只是分析了dbutis的query的运作流程. 至于类为什么要这样设计,蕴含的设计模式等等高级知识点咱们在下节再探讨. 先看看最简单的DBUtils是如何工作的. 数据库里有一张 ...

  10. java工具类(五)之日期格式字符串与日期实现互转

    JAVA字符串转日期或日期转字符串 项目开发过程中需要实现日期格式的字符串与日期进行互转,并进行日期的加减操作. Demo如下: package weiming.lmapp.utils; import ...