使用schemaExport自动生成表结构

简介: 一.Hibernate原生状态   ? 1 2 3 4 5 Configuration cfg = new Configuration().configure();   SchemaExport export = new SchemaExport(cfg);  

一.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 >
目录
相关文章
|
3月前
|
SQL 存储 数据库连接
自动生成测试数据—数据库篇
自动生成测试数据—数据库篇
|
1月前
|
C# Python
如何让 StyleCop 忽略 refit 自动生成的代码
创建自定义规则:我们需要创建一个自定义规则,该规则将用于排除特定类型的代码,我们可以创建一个自定义规则,用于检查类名是否以大写字母开头,然后忽略符合此规则的代码。
|
3月前
|
数据库
自动生成测试数据—接口
自动生成测试数据—接口
|
9月前
|
SQL 数据可视化 搜索推荐
自动生成HQL代码的工具
本文介绍了一个可视化工具,可以通过界面增删指标并快速选择指标类型,实现快速指标更改增删,将原本1小时的工作量缩减到1分钟,提高开发效率。同时,工具可以保存配置信息快照,方便复用,并且不依赖于第三方编程语言的运行环境,降低了用户使用难度。主界面包括表的基本信息、执行按钮、代码显示窗口和表配置标签,支持一次性生成多个不同表的代码。
110 0
|
12月前
|
SQL HIVE
附模板和代码 | Excel数据模型自动生成Hive建表语句
在日常数据开发过程中,会经常需要根据数据模型编写建表语句,每次写建表语句都会用几分钟的时间,而且还容易出一些低级的错误,于是打算做个 Excel 模板,把表字段、表分区、表名写在里面,通过程序自动生成建表语句
|
SQL 数据库
使用Navicat导出数据库表中特定的数据
使用Navicat导出数据库表中特定的数据 以导出字典表数据为例 在自己开发库添加好的字典,每次交版还需要再客户的环境上再操作一遍,自己手动添加或修改费事费力 ,还容易出错
410 0
|
SQL 数据库 数据库管理
Sqlite升级时向已有表中增加字段
Sqlite数据库升级时,我们经常会遇到给已有表中增加字段的操作。一般来说,**给已有表中增加字段**是数据库操作中的基操,没必要再专门写篇blog记录的,但是sqlite对SQL语句支持的不够彻底,比方说这次我们用到的"ALTER TABLE"命令。
|
SQL 关系型数据库 MySQL
将mysql数据库表结构导出excel文档
将mysql数据库表结构导出excel文档
164 0
将mysql数据库表结构导出excel文档