J2EE进阶(十五)MyEclipse反向工程实现从数据库反向生成实体类之Hibernate方式
J2EE进阶(十五)MyEclipse反向工程实现从数据库反向生成实体类之Hibernate方式
反向工程又称逆向工程。
开发项目涉及到的表太多,一个一个的写JAVA实体类很是费事。MyEclipse提供简便的方法:反向数据库。
步骤大致如下:
第一步:
window–>open Perspective–>MyEclipse Java Persistence
操作后会出现一个视图DB Brower:MyEclipse Derby
左边的属性按照自己使用的数据库填就行了,左边部分是我建好以后的结果,数据库名叫guestbook。
第二步:
新建一个WEB项目
然后选中项目右键–>MyEclipse–>add Hibernate Capabilities
如果需要用到在实体类上添加注释的话那么选中紧挨着的add Hibernate Annotations Support(据说现在都用annotations了就选上吧!!)
然后下一步选中一个目录存放自动生成hibernate.cfg.xml文件,一般毫无例外的放在src根目录下,下一步选中一个DB Driver中我们第一步建立的那个(对我来说是com.mysql….反正就是自己建的那个呗),然后下一步选中一个目录存放自动生成的HibernateSessionFactory工具类 ,结果出来以后我看了一下,这个hibernateSessionFactory工具类就是一个拿Session的单例,还有一些其它关闭session之类的方法,一看便知。下图是生成的配置文件:
第三步反向生成实体类
到DB Brower中找到要反向的表选中并且点击右键—>Hibernate Reverse Enginnering
看选项:java src folder 源码包,不用多解释,java package——存放将要反转出来的实体类,选择目录(应该是提前建好的com.xxx.model之类的包);Create pojo<>db。。。这个选项选中,就是我们建立从表到简单java 对象(即pojo)的配置,把下面的add hibernate mapping annotations to pojo的选上,其它不管,这个选项用来“添加映射注解到pojo对象上”,它上面的那个选项用来创建xml的,据说不太用了,就用annotation吧! 若需要使用的话,勾选上就是了。
看图:type Mapping要选上hibernatetypes,这样这些注解都是来自 javax.persistence.*。
id generator 看下拉列表就知道是配置id生成策略的。
那两个enable 是说映射关系发现(detection)。创建好的项目目录结构如下:
J2EE进阶(十五)MyEclipse反向工程实现从数据库反向生成实体类之Hibernate方式的更多相关文章
- MyEclipse从数据库反向生成实体类之Hibernate方式 反向工程
前文: hibernate带给我们的O/RMapping思想是很正确的,即从面相对象的角度来设计工程中的实体对象,建立pojo,然后在编写hbm.xml映射文件来生成数据表.但是在实际开发中,往往我们 ...
- MyEclipse从数据库表反向生成实体类之Hibernate方式(反向工程)
一.打开Myeclipse Database Explorer 二.新建[New..] 三.选择数据库,添加驱动 四.测试连接 五.选中数据库中的表单击右键选择[Hibernate Rever..] ...
- MyEclipse从数据库反向生成实体类通过Hibernate的方式----mysql数据库实例
1.我们通过DB与数据库建立连接 2.建立web工程,构建Hibernate框架 3.通过table生成实体类
- MyEclipse数据库反向生成实体类
MyEclipse数据库反向生成实体类 “计应134(实验班) 凌豪” 当我们在开发项目涉及到的表太多时,一个一个的写JAVA实体类很是费事.然而强大的MyEclipse为我们提供简便的方法:数据库反 ...
- 使用MyEclipse生成实体类和Hibernate映射文件
1.打开MyEclipse DataBase Explorer. 如上图,点击图中2便可切换到MyEclipse DataBase Explorer,若没有该图标,则点击图中1,便可选择MyEclip ...
- (转)使用myeclipse生成实体类和hibernate映射文件
转至:http://blog.sina.com.cn/s/blog_9658bdb40100uiod.html 1.下载并安装myeclipse,如果已经安装,则忽略该步骤; 2.打开myeclips ...
- J2EE进阶(十九)FileNotFoundException: http://hibernate.org/dtd/hibernate-mapping-3.0.dtd
J2EE进阶(十九)Nested exception: java.io.FileNotFoundException: http://hibernate.org/dtd/hibernate-mappin ...
- J2EE进阶(十八)基于留言板分析SSH工作流程
J2EE进阶(十八)基于留言板分析SSH工作流程 留言板采用SSH(Struts1.2 + Spring3.0 + Hibernate3.0)架构. 工作流程(以用户登录为例): 首先是用 ...
- J2EE进阶(十六)Hibernate 中getHibernateTemplate()方法使用
J2EE进阶(十六)Hibernate 中getHibernateTemplate()方法使用 spring 中获得由spring所配置的hibernate的操作对象,然后利用此对象进行,保存,修 ...
随机推荐
- myeclipse自动添加注释
开发需要,新建类的时候,需要加自己的名字,每次都要自己写,嫌麻烦,修改一下myeclipse配置文件即可 打开window---preferences 选中 new Java files 点击edit ...
- 【swift,oc】ios开发中巧用自动布局设置自定义cell的高度
ios开发中,遇到自定义高度不定的cell的时候,我们通常的做法是抽取一个frame类,在frame类中预算好高度,再返回. 但是苹果出来自动布局之后...春天来了!!来看看怎么巧用自动布局设置自定义 ...
- linux 基本使用命令
arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI ...
- 直接插入排序算法:ArrayList实现和数组实现
直接插入排序算法思想: 排序区间R[1..n]: 在排序的过程中,整个排序区间被分为两个子区间: 有序区R[ 1 ... i-1 ]和无序区R[ i ... n ]: 共进行n-1趟排序,每趟排序都是 ...
- BZOJ4711 小奇挖矿
Description [题目背景] 小奇在喵星系使用了无限非概率驱动的采矿机,以至于在所有星球上都采出了一些矿石,现在它准备建一些矿石仓 库并把矿石运到各个仓库里. [问题描述] 喵星系有n个星球, ...
- ●CodeForces 518D Ilya and Escalator
题链: http://codeforces.com/problemset/problem/518/D题解: 期望dp. 定义dp[t][i]表示在第t秒开始之前,已经有了i个人在电梯上,之后期望能有多 ...
- 2015 多校联赛 ——HDU5414()
Problem Description CRB has two strings s and t. In each step, CRB can select arbitrary character c ...
- java的泛型
泛型概述 先看下面的代码: ArrayList al1 = new ArrayList(); ArrayList al2 = new ArrayList(); al1.add("hello& ...
- Python中模块之collections系列
collection系列功能介绍 1. 常用的集中类 1. Counter(计数器) 计数器的常用方法如下: 创建一个字典计数器 格式:collections.Counter(obj) 例如:prin ...
- 使用JdbcTemplate 操作PostgreSQL,当where条件中有timestamp类型时,报错operator does not exist: timestamp w/out timezone
今天遇到一个问题,找了还半天,Google一下,官网显示是一个bug. 思考一番肯定是类型出了问题. Controller: Service:转化时间戳 Dao: 一波转换搞定!