加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Hibernate逆向工程原理_java版本

发布时间:2020-12-14 06:29:38 所属栏目:Java 来源:网络整理
导读:之前在一篇""文章中,一位朋友提出了这样的问题: 源地址: 这几天闲着没事儿,就想了一下hibernate的逆向工程的实现原理。 这是我个人构思的想法: 我们在数据库中建立一个我们自己的表; 如: `id` ( ) `name` ( ) COLLATE utf8_bin `age` ( ) `sex` ( ) C

之前在一篇""文章中,一位朋友提出了这样的问题:

源地址:

这几天闲着没事儿,就想了一下hibernate的逆向工程的实现原理。

这是我个人构思的想法:

我们在数据库中建立一个我们自己的表;

如:

`id` () `name` () COLLATE utf8_bin `age` () `sex` () COLLATE utf8_bin ) ENGINEInnoDB AUTO_INCREMENT CHARSETutf8 COLLATEutf8_bin;

我们在数据库控制台用“desc person”可以查看person表的结构:

我们用代码实现这样的查询功能:

代码如下:

String driver = "com.mysql.jdbc.Driver" String dbName = "spring" String passwrod = "root" String userName = "root" String url = "jdbc:mysql://localhost:3308/" + String sql = "desc person" Connection conn = PreparedStatement ps = ResultSet rs = System.out.println(" Field Type Null Key Default Extra" System.out.println("--------------------------------------------" System.out.println(" "+rs.getString(1) +" "+ rs.getString(2) +" "+ rs.getString(3) +" "+ rs.getString(4) +" "+ rs.getString(5) +" "+ rs.getString(6 (rs != } (ps != } (conn != } } }

可以发现,运行出来的效果和我们在控制台运行的效果是一样的。所以我们可以用代码实现获取表结构,这一步尤为关键!!!

.我们可以用代码获取表的结构,那么我们就可以知道一个表的所有信息,如:

表里面的所有字段,字段的类型,长度,是否为空,是否为主键....很多信息,我们可以提取其中有用的信息,我们只要在freemarker

或velocity模板引擎中创建好我们的模板这样打工就可以告成...

5.使用freemaker或者velocity模板引擎制作模板的时候,我想在生成表对应的实体类和xml配置文件的时候需要注意的是表与表的关联关系....

上面的观点都是Hongten个人的观点以及见解,如果有说的不好,或说错的地方,欢迎大家拍砖....

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读