eclipse 逆向工程生成hibernate实体类(注解或配置文件)
来源:互联网 发布:php报名系统 编辑:程序博客网 时间:2024/06/04 20:08
1.安装hibernate tools
在 help --> Eclipse Marketplace 中搜索 hibernate, 找到 jboss tools , 点击 install, 选择 hibernate tools , 其他的不装, 按照步骤安装即可
2.使用 Database Development 创建数据库连接
这个应该很简单, 选择要连接的数据库类型, 输入url,用户名和密码即可
3.在hibernate视图窗口中创建配置文件
点击 + 号, 或者右键空白区域, 点击 Add Configuration
如果后面生成时报错, 可能是 hibernate version 太高, 选个低的就可以了
点击 OK 后
选择 HIbernate Code Generation,
注意: 上图右边的 Catalog 表示的是对应的数据库名, 最好设置为空, 因为有可能换环境之后数据库名称不一样, hibernate.reveng.xml 是可以修改的, 可以添加或删除表, 重新生成对应实体
如果表设计的时候带有前缀比如Tbl_Entity, 可以自己写一个策略类, 来生成类名
可以选择生成策略类来格式化要生成的类的名字字段。可能会遇到:
It is indirectly referenced from required .class file
原因:你正要使用的类调用了另一个类,而这个类又调用了其他类,这种关系可能会有好多层。而在这个调用的过程中,某个类所在的包的缺失就会造成以上那个错误。
解决方法:导入缺失的包
browse选择你写的策略类就可以了。
期间可能要下载jar包
hibernate-tools包和hibernate-core包因为这个类用到了hibernate的东西。
- import org.hibernate.cfg.reveng.DefaultReverseEngineeringStrategy;
- import org.hibernate.cfg.reveng.ReverseEngineeringSettings;
- import org.hibernate.cfg.reveng.ReverseEngineeringStrategy;
- import org.hibernate.cfg.reveng.TableIdentifier;
- import org.hibernate.util.StringHelper;
- public class CustomReverseEngineeringStrategy extends
- DefaultReverseEngineeringStrategy {
- public CustomReverseEngineeringStrategy(ReverseEngineeringStrategy delegate) {
- super();
- }
- public CustomReverseEngineeringStrategy(){
- }
- private ReverseEngineeringSettings settings;
- @Override
- public String tableToClassName(TableIdentifier table) {
- String tableName = table.getName();
- if (tableName != null && tableName.toUpperCase().startsWith("TBL_")) {
- String pkgName = settings.getDefaultPackageName();
- int lastIndex = tableName.indexOf("_");
- tableName = tableName.substring(lastIndex + 1);
- String className = toUpperCamelCase(tableName);
- // if (pkgName.length() > 0)
- // return StringHelper.qualify(pkgName, className);
- return className;
- } else {
- return super.tableToClassName(table);
- }
- };
- public void setSettings(ReverseEngineeringSettings settings) {
- super.setSettings(settings);
- this.settings = settings;
- }
- }
下载hibernate-tools的源码, 修改DefaultReverseEngineeringStrategy类中相关的方法,类似上面, 然后将该类编译后的class文件打包到eclipse的hibernate-tools插件的jar包中
一般的位置为:
plugins\org.jboss.tools.hibernate.runtime.v_4_0_5.0.1.Final-v20160331-1852-B88\lib, 也可以直接在 eclipse 中搜索 hibernate-toos
0 0
- eclipse 逆向工程生成hibernate实体类(注解或配置文件)
- eclipse从数据库逆向生成Hibernate注解实体类
- 逆向工程生成待注解的hibernate实体
- 逆向工程生成待注解的hibernate实体
- hibernate逆向工程生成实体
- Eclipse使用Hibernate逆向生成实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse从数据库逆向生成Hibernate带注解的实体类
- Eclipse实现hibernate反向工程:从数据库逆向生成实体类和hbm文件
- Eclipse通过HibernateTools实现逆向生成Hibernate实体类或映射
- eclipse 逆向生成hibernate配置文件
- eclipse从数据库逆向生成Hibernate实体类
- eclipse从数据库逆向生成Hibernate实体类
- eclipse从数据库逆向生成Hibernate实体类
- iOS 数据库SQLite
- 记一次线上应用连接池满的处理
- c语言文件操作
- android图片压缩质量参数Bitmap.Config RGB_565 ARGB_8888
- ionic react-native和native开发移动app
- eclipse 逆向工程生成hibernate实体类(注解或配置文件)
- iOS UITextField控件
- centos、linux安装vpn
- C++中new和delete的用法
- 将Oracle分区表的定义导到文件中
- 创建一个非超级管理员用户,并增加 sudo 权限
- JAVA RMI远程方法调用简单实例
- 读取配置文件
- mysql相关 timestamp遇到的小问题