MyEclipse怎么自动建立持久类映射.hbm.xml?

如题所述

1         åˆ›å»ºWeb项目

1.1     MyEclipse中创建Java Web项目工程。项目工程名自己定,J2EE Specification Level选择Java EE 5.0

2  æ·»åŠ é¡¹ç›®çš„Hibernate支持

  2.1  ç‚¹å‡»MyEclipse右上角的透视图切换扭,打开透视图切换窗。

选择MyEclipseHibernate透视图。

     2.2  åœ¨MyEclipse Hibernate 透视图右侧的DB Browser窗口中点击右键选择New…新建,创建一个数据库连接。弹出DataBase Driver的对话框

2.3 DataBaseDriver对话框中依次选择:

Driver Template ——数据连接的类型

Driver Name ——连接的名称(自己定)

Connection URL ——数据库连接字符串

User name —— 数据库连接用户名

Password —— 数据库连接密码

 

然后在Driver JARs中添加数据库的驱动jar文件。

点击“Test Driver”按钮测试连接是否正常。

选中Save Password可以保存密码。

设置全部正确后,点“Finish”按钮。数据库连接创建成功后可以在右侧DB Broswer窗口中看见新建的连接。

2.4  è¿žæŽ¥åˆ›å»ºæˆåŠŸåŽåˆ‡æ¢å›žMyEclipse Java Enterprise透视图


在刚刚创建的项目工程上点击右键,选择MyEclipse->Add Hibernate Capabilities...给项目工程添加Hibernate支持。

2.5  ç»™é¡¹ç›®å·¥ç¨‹æ·»åŠ Hibernate支持是通过向导的方式一步步完成的。

第一步,选择Hibernate版本。使用默认项,直接点Next

第二步,Hibernate的配置文件。新项目MyEclipse会帮助创建一个,直接Next

第三步,配置Hibernate的数据库连接。在DB Driver列表中选择刚刚创建的数据库连接。

第四步,生成Hibernate的辅助工具类HibernateSessionFactory。由于后期使用Spring框架来提供Hibernate访问支持,所以这个类在这个阶段可以创建,也可以不建。但如果创建的话,最好把它保存到自定义的util子包中。

好了!项目工程中Hibernate的支持就做好了。MyEclipse会在操作完成后自动打开hibernate.cfg.xml文件,可以用可视化的方式配置hibernate的相关设置。


2.6为项目工程添加如下这些包

2.7切换回MyEclipse Hibernate透视图。

在右侧DB Browser窗口中双击刚刚创建的数据库连接项,打开连接。成功和数据库建立连接后,找到我们在数据库连接时用户名所对应的节点,然后打开TABLE就可以看见事先创建好的数据库表了。

2.8通常情况是,在DB Browser窗口的已打开连接节点中选中用户创建的所有的表。然后点右键,选择Hibernate ReverseEngineering…,使用Hibernate反向工程。通过反向工程来帮助我们生产出和数据库表结构对应的Hibernate实体类和实体类映射文件(hbm.xml文件)。

2.9   反向工程也是需要几个步骤

第一步就是配置数据表到实体类之间的映射。

Java src folder ——指定把反向工程生成的文件放入到那个项目中(这里要指向到src文件夹才可以)

Java package ——实体类和映射文件存放到哪个包当中。(这里通常是项目中的entity包里)

Create POJO<>DB Table mapping information —— 是否生成对应的映射文件(*.hbm.xml文件)

Add Hibernate Mapping Annotations to POJO ——  ä½¿ç”¨æ³¨è§£é…ç½®å®žä½“类(注意!上述两者中选择一种即可,要么是实体类+.hbm.xml,实体类+注解)

Java Data Object (POJO <> DB Table) —— 是否生成实体类文件(注意!下面的Createabstract class不要选!因为实体类不需要抽象父类)

 

第二步是配置类型映射的细节,基本上用默认项就都可以了。直接Next 下一步

第三步是实体类及关联的细节定制。

在左侧可以看见我们需要生成实体类和映射文件的数据表。当选中某张表的时候,可以在右侧的Table details项中设置

Class name: 表所对应的实体类的名字【注意:在这里直接把包名和类名完整些出来是最合适的写法】

Id Generator: 当前这张表中主键列的生成策略

下面的两项定制就是关于实体的映射关系了。

Generate support for ListedTable(fk)->UnlistedTable:确认是否生成当前这个实体类的多对一关联映射。

Generate support for UnlistedTable(fk)->ListedTable:确认是否生成当前这个实体类的一对多关联映射。

 

注意!如果数据库表之间没有添加外键约束,映射不会生成。

 

全部设置完成后,点击“Finish”按钮。我们需要的实体类,实体类映射文件,以及Hibernate配置文件中的映射添加就全部自动完成了。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-07
进入Database development视图。连接数据库,找到需要生成的表,右键,选择Hibernate reverse engerning。找到对应工程的src,然后选择前两个对钩,注意把第二个对勾里的abstractClass的勾给去掉。然后下一步,再下一步,对映射的表生成的classname修改。注意加包名。完成就OK了追问

Database development视图,怎么进入?

追答

右上角有个它,选择other里面

本回答被提问者采纳
第2个回答  2012-04-28

对下面进行补充:

对你的项目名 点击右键——》myeclipse——》add hibernate Capabilities——》生成 hibernate.cfg.xml

这时候就可以进行一下它们那样操作了:

本回答被网友采纳
第3个回答  2012-04-28

不知道你是否看懂了

[转载]用MyEclipse如何自动生成hibernate的.hbm.xml文件
1启动并进入到MyEclipse主界面 2新建Web Project项目 3点击MyEclipse右上角的视图按钮,进入数据库视图MyEclipse Database Explorer 4在DB Browser右键---New 新建数据库连接 5添加连接驱动 6测试连接 7使项目支持Hibernate:在项目名称上有件---MyEclipse---Add Hibernate capabilities... 进行选项勾选 ...

怎么在MyEclipse中创建对象关系映射文件
方法1:在Hibernate的资源包中的例子找*.hbm.xml的模板 方法2:通过Myeclipse的逆向工程办法来生成*.hbm.xml 方法3:通过Ant+XDoclet生成*.hbm.xml

MyEclipse Persistence Tools 怎么生成pojo类
第四步,生成Hibernate的辅助工具类HibernateSessionFactory。由于后期使用Spring框架来提供Hibernate访问支持,所以这个类在这个阶段可以创建,也可以不建。但如果创建的话,最好把它保存到自定义的util子包中。好了!项目工程中Hibernate的支持就做好了。MyEclipse会在操作完成后自动打开hibernate.cfg.xml文件,...

在Myeclipse里启动tomcat服务器报这个错Error creating bean with...
把WEB-INF\/applicationContext.xml 换成WEB-INF\/classes\/applicationContext.xml 也就是说在web.xml文件中这样写:<!-- 指定spring的配置文件 --> <context-param> contextConfigLocation \/WEB-INF\/classes\/applicationContext.xml <\/context-param> 在路径中加一个classes ...

mysql 外键约束,使用hibernate映射表,主键采用uuid-hex方式
uuid-hex 是自动生成的16位不可能重复。你想 一对一?一对一的话就要用int auto-increment 如果你是oracle数据库的话要用sequence 建议你用myeclipse的反向工程创建表结构 你去搜索一下吧 不需要你自己写hbm.xml文件的

myeclipse 自动将 oracle中的number类型设置成了long,如何改成int_百度...
呃,这个是myeclipse设定好的,只能手动改,如果有object.hbm.xml就要改其中对应的属性,对象也要改了。

...hibernate和mysql数据库怎么整合到一起啊? 在structs里…?_百度...
首先hibernate和struts是独立的 导入不同的包并在web.xml还有几个properties简单配置就好 不用hibernate插入数据需要你手动在代码中写sql语句 这样你把你的数据库的表建个类 字段建成属性就好 然后类似set属性后用insertObj 类似这种方法就好 具体看你struts和hibernate的版本(比如是否建立实体映射hbm.xml文件)...

Login.hbm.xml
这个异常的意思是:不能读取您的数据库映射文件,您可以检查下映射文件是否存在,或者路径是否正确

hibernate 在表名映射时如何保持大小写区分呢?
hibernate配置时每个<class>对映一对“java类——数据库表”映射,name属性写完整类名,table属性写表名。按你要求,设<class name="xxx.xxx.xxx.T_XXX" table="T_XXX" ">这样就保持原样了。实际上不必强求名字一致,所谓映射就是“画条线连接两个现成的东西”,你随便选个类、再选个数据结构...

在myeclipse10.0中 hibernate3.2和hibernate3.3他们有什么区别吗?还有...
1.在搭建SSH开发平台的时候,由MyEclipse自动导入的包存在一些冲突,主要有(1) asm.jar与asm-2.2.3.jarasm-2.2.3是spring所依赖,而asm.jar是hibernate依赖的,应该删除asm-2.2.3.jar这个包 (2). commons-logging-1.0.4.jar与commons-logging-api-1.1.jar这两个包中commons-logging-1.0.4.jar是spring和...

相似回答