hibernate反向生成数据库表.doc

上传人:M****1 文档编号:543269018 上传时间:2022-10-05 格式:DOC 页数:8 大小:37.51KB
返回 下载 相关 举报
hibernate反向生成数据库表.doc_第1页
第1页 / 共8页
hibernate反向生成数据库表.doc_第2页
第2页 / 共8页
hibernate反向生成数据库表.doc_第3页
第3页 / 共8页
hibernate反向生成数据库表.doc_第4页
第4页 / 共8页
hibernate反向生成数据库表.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《hibernate反向生成数据库表.doc》由会员分享,可在线阅读,更多相关《hibernate反向生成数据库表.doc(8页珍藏版)》请在金锄头文库上搜索。

1、hibernate反向生成数据库表第一步:添加Hibernate jar包,hibernate.cfg.xml写好数据源.hibernate.cfg.xml:jdbc:mysql:/localhost/testcom.mysql.jdbc.Driverrootrootorg.hibernate.dialect.MySQLDialecttrue第二步:编写实体类;package com.bc.bean;import java.util.Date;public class Business private Integer uId;private String uName;private Date

2、hirDate;private int zStoreNum;private int zBranchNum;private int zTradNum;private int sStoreNum;private int sBranchNum;private int sTradNum;private int bStoreNum;private int bBranchNum;private int bTradNum;private int totalNum;private String home;public Business() super();public Integer getuId() ret

3、urn uId;public void setuId(Integer uId) this.uId = uId;public String getuName() return uName;public void setuName(String uName) this.uName = uName;public Date getHirDate() return hirDate;public void setHirDate(Date hirDate) this.hirDate = hirDate;public int getzStoreNum() return zStoreNum;public voi

4、d setzStoreNum(int zStoreNum) this.zStoreNum = zStoreNum;public int getzBranchNum() return zBranchNum;public void setzBranchNum(int zBranchNum) this.zBranchNum = zBranchNum;public int getzTradNum() return zTradNum;public void setzTradNum(int zTradNum) this.zTradNum = zTradNum;public int getsStoreNum

5、() return sStoreNum;public void setsStoreNum(int sStoreNum) this.sStoreNum = sStoreNum;public int getsBranchNum() return sBranchNum;public void setsBranchNum(int sBranchNum) this.sBranchNum = sBranchNum;public int getsTradNum() return sTradNum;public void setsTradNum(int sTradNum) this.sTradNum = sT

6、radNum;public int getbStoreNum() return bStoreNum;public void setbStoreNum(int bStoreNum) this.bStoreNum = bStoreNum;public int getbBranchNum() return bBranchNum;public void setbBranchNum(int bBranchNum) this.bBranchNum = bBranchNum;public int getbTradNum() return bTradNum;public void setbTradNum(in

7、t bTradNum) this.bTradNum = bTradNum;public int getTotalNum() return totalNum;public void setTotalNum(int totalNum) this.totalNum = totalNum;public String getHome() return home;public void setHome(String home) this.home = home;第三步:编写实体类映射文件;HomeBusiness.hbm.xml第四步:Main执行创建ExportDB.javapackage com.te

8、st.bean.test;import org.hibernate.cfg.Configuration;import org.hibernate.tool.hbm2ddl.SchemaExport;public class ExportDB public static void main(String args) /读取hibernate.cfg.xml文件Configuration cfg = new Configuration().configure();SchemaExport export = new SchemaExport(cfg);export.create(true, true

9、);按照以上步骤,即可反向生成!使用Hibernate生成或还原数据库表利用MyEclipse可以很容易的根据数据库表生成Hibernate mapping file和实体类。同时反过来,利用生成的Hibernate mapping file和实体类也可以生成数据库表,这样就可以免去部署项目时建立数据库表的过程,也可以利用这种方法从一种数据库导入到另一种数据库。在使用前一定要确保Hibernate在应用中可以正常访问数据库。自动生成只适用于数据库的表,数据库没有的话,需要自已手工建立。方法有两种:1.hibernate.cfg.xml配置文件中添加属性:create这种方式可以在启动web服务

10、后首次调用Hibernate时自动建立数据库表,建立表后再把这个属性去掉,防止以后自动重新建立表,丢失数据。2.以代码的形式实现:Configuration cfg = new Configuration().configure();SchemaExport schemaExport= new SchemaExport(cfg);schemaExport.create(false, true);我在测试不同数据库之间导入数据时出现错误,从SQLServer建立的映射无法还原到MySQL数据库,对比了一下,发现SQLServer在Hibernate mapping file里多了一个schema=dbo,把每个mapping file里的schema=dbo去掉,就可以成功还原了。使用Hibernate在多种数据库之间切换时,也会出现这种问题,解决办法就是在mapping file里不要指定schema,如果像SQLSer

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号