在开发过程中,我们可以先设计数据库,然后由MyEclipse自带的功能生成pojo和hbm。也可以先编写pojo,通过xdoclet来生成hbm,在使用hbm2dll来生成数据库。
由于前一种方法的对前期数据库的设计要求较高,一旦对数据库进行更改,那么对整个系统的修改将是噩梦般的修改。
而后一种方式便是一种必须灵活的设计方式。可是随时对数据库进行必要的修改,整个流程都比较简单清晰。
当你使用hbm2dll的时候,你就一定加入了hibernate。该产品是通过hbm文件的内容去产生相应的数据库的。本功能是必须得到hibernat的支持。
第一步:
编写pojo文件。如:
package com.babasport.VO.product;
import org.hibernate.mapping.Column;
/**
* @hibernate.class
* table="babasport"
* @author sunqitang
*
*/
public class ProductType {
private Integer productTypeId;
private String productTypeName;
/**
* @hibernate.id
* column="productTypeId"
* generator-class="native"
* @return
*/
public Integer getProductTypeId() {
return productTypeId;
}
public void setProductTypeId(Integer productTypeId) {
this.productTypeId = productTypeId;
}
/**
* @hibernate.property
* @return
*/
public String getProductTypeName() {
return productTypeName;
}
public void setProductTypeName(String productTypeName) {
this.productTypeName = productTypeName;
}
}
参考文章:http://sunqitang.iteye.com/admin/blogs/326893
第2部,由xdoclet来产生相应的hbm文件:
<?xml version="1.0" encoding="UTF-8"?>
<project name="OA系统构建脚本" default="生成hibernate映射文件" basedir=".">
<property name="src.dir" value="${basedir}/src"/>
<property name="build.dir" value="${basedir}/bin"/>
<property name="webapp.dir" value="${basedir}/src/webapp"/>
<property name="xdoclet.home" value="D:\\JAVA电子资源\\组件\\Xdoclet\\xdoclet-plugins-1.0.3\\xdoclet-plugins-1.0.3"/>
<!-- Build classpath -->
<path id="xdoclet.task.classpath">
<fileset dir="${xdoclet.home}/lib">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${xdoclet.home}/plugins">
<include name="**/*.jar"/>
</fileset>
</path>
<taskdef
name="xdoclet"
classname="org.xdoclet.ant.XDocletTask"
classpathref="xdoclet.task.classpath"
/>
<target name="生成hibernate映射文件">
<xdoclet>
<fileset dir="${src.dir}/com/babasport/VO">
<include name="**/*.java"/>
</fileset>
<component
classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin"
version="3.0"
destdir="${src.dir}"
/>
</xdoclet>
</target>
</project>
特别注意产生的hbm文件的版本一定要是3.0版本。
上面的文件由ant来运行。
第3部
在spring的配置文件中加入:
<prop key="hibernate.hbm2ddl.auto">create</prop>
和对配置文件的支持
<property name="mappingResources">
<list>
<value>com/babasport/VO/product/ProductType.hbm.xml</value>
</list>
</property>
hibernate.hbm2dll.auto的属性由四个:
validate 加载hibernate时,验证创建数据库表结构
create 每次加载hibernate,重新创建数据库表结构,这就是导致数据库表数据丢失的原因。
create-drop 加载hibernate时创建,退出是删除表结构
update 加载hibernate自动更新数据库结构
特别建议:当对数据库创建或修改完毕后,最好关闭该属性。因为该属性还不是特别问题。经常出现丢失数据表的现象
第4部
对配置文件进行加载。
数据库便开始进行改动了。
分享到:
相关推荐
NULL 博文链接:https://ddcz.iteye.com/blog/570166
hbm2ddl属性hbm2ddl属性hbm2ddl属性hbm2ddl属性hbm2ddl属性hbm2ddl属性
JEDEC---HBM2(High Bandwidth Memory DRAM)
hibernate3 配置hbm2ddl和hbm2java所需jar,里面包含了所有的jar,如:hibernate3的相关jar、hibernate-tools.jar等。
HBM2JAVA 小工具 支撑DB2,ORACLE,MYSQL 等数据库
详解hibernate.hbm2ddl.atuo 属性的配置
Hbm2java Hbm2java用于基于HBM文件生成源。
Haier海尔洗衣机XQG130-HBM14186LU1使用说明书手册参数图解图示pdf电子版下载
完整版 HBM3官方协议
使用MyEclipse工具生成POJO类和映射文件.hbm.xml
Haier海尔洗衣机XQG130-HBM14176LU1使用说明书手册参数图解图示pdf电子版下载
JESD235C-HBM.pdf
对hibernate.hbm.xml解释很详细~ 开发的时候很有用的哦~!
LCD协议 驱动 HBM 详细文档RGB, LVDS, MIPI, SPI都有介绍
德国HBM MVD2555 manulpdf,德国HBM MVD2555 manul
JESD238 2022 High Bandwidth Memory DRAM (HBM3).pdf
Intel发布全球首款集成HBM2显存的FPGA,10倍于独立DDR2显存.docx
详细描述hibernate 下hbm文件的内容
hibrenate hbm.xml 表映射
实例代码,详细描述了三种hbm.xml加载方式,包含NHibernate的基础操作,内附测试数据库。辅加数据库后可直接运行。