Hibernate反向工程步骤及DAO Type无法选择Spring DAO解决方法

土豆的小秘密 2017-06-08

1 先来看看hibernate反向工程的详细步骤及配置:

①在MyEclipse Database Explorer perspective下,右键需要操作的数据表,选择Hibernate Reverse Engineering

②在弹出的Hibernate Reverse Engineering窗口中做如下配置:

    Java src folder:/login/src

    Java package:com.coridc.login.model.domain

    选中Hibernate mapping file for each database table

    选中Update hibernate configuation with mapping file location

    选中Java Data Object

    不选Create abstract class并留空Base president class

    选中Java Data Access Object

    选中Generate precise findBy methods

    DAO Type 选择spring DAO

    此时Spring config file会自动填写WebRoot/WEB-INF/applicationContext.xml

    此时SessionFactory id会自动填写mySessionFactory – (WebRoot/WEB-INF/applicationContext.xml)

    不选Use custom templates

    Next;

③在这个窗口中,只需更改ID Generator类型为native即可 -> Finish。

2 但是在上述2中的红色配置中,可能会存在Basic DAO及JNDI DAO可选而Spring DAO不可选的情况,

其解决方法如下:

转到MyEclipse Java Enterprise Perspective,选择项目右键 -> Properties -> MyEclipse -> Spring,在Config file extensions处填写xml,然后点击Add,根据目录选择Spring的总配置文件applicationContext.xml,OK,OK。

然后再回到1中的步骤,一步,一步,一步,一步,搞定,The End。

注:此方法有更新版本,具体内容可参照本站博文:关于Hibernate在反向工程时无法选择Spring DAO Type的解决方法【更新版】

3 Hibernate反向工程生成的三个半文件

    ①com.coridc.login.model.domain.Student.java(MyEclipse生成的使用面向对象的Java语言对数据库表格进行的抽象)

    ②com.coridc.login.model.domain.StudentDAO.java(封装了一些MyEclipse自动生成的对数据库的操作)

    ③com.coridc.login.model.domain.Student.hbm.xml(将数据库表格中的字段和POJO类的属性进行映射的定义)

    ④在Spring总配置文件applicationContext.xml中生成一段id为StudentDAO的bean代码

相关推荐