开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第9天,点击查看活动详情
MyEclipse自动生成hibernate实体类和配置文件
-
找到导航栏里面的window--showView然后输入db brower,打开数据库浏览窗口
-
在数据库浏览窗口里只有一个Myeclipse自带的数据库,该数据没有用,我们在空白的地方右键新建一个数据库
填写数据库信息,包括连接方式,用户名,密码,和jdbc的配置一样,注意将oracle的jar包导进来
-
数据库连接已经出现,我们可以连接上数据库了
-
这时候我们回过头,新建一个java或javaEE项目,名字随便取,然后右键该项目,选择Myeclipse---add hibernate capliability,进入加载hibernate支持界面,首先选择hibernate版本,这个随便,然后next
-
选择hibernate配置文件的存放位置,这个最好放在在项目的根目录下
-
配置hibernate数据库连接,在dbdriver选项下,选择我们刚才配的那个数据库连接,这样的话用户名和密码会自动出现
-
下一步是否新建一个sessionfactory类,我们可以选择不新建,即将那个复选框的勾给去掉
-
这样的话hibernate配置文件(xml)就自动写好了
-
我们可以根据自己需求往配置文件里面写点属性,比如说我们常用的show_sql属性,这样的话该工程的hibernate配置就完成了,且所有hibernate的jar包也添加完成
-
重新回到数据库浏览器界面,打开连接,选择用户,选择所需要生成事体和配置文件的表,然后右键,选择hibernate reverse engineeing
-
该步骤就是开始自动生成实体类的工作了,先选择需要目标项目和文件夹,我选择刚才新建的项目(只有加载了hibernate支持的项目才能自动生成)
-
选择实体类和配置文件存放的位置,及pojo的生成策略,跟图上的一摸一样的选,然后next
-
选择一些配置信息,其他不用管,只需要在主键生成策略上选择你希望的策略就行了,我是选择increment的
-
点击finish,那么刚才那张表的实体类和配置文件皆以生成
-
打开实体类,我们会发现主键consumerId是Long型的,我们可以改成int,记住全部都要改(当然也可以不该,不过到时候查询或插入会比较麻烦)
-
同样将配置文件中的主键类型也改成int
-
再回过头看,hibernate全局配置文件,刚才我们生成的实体类配置文件已经自动加载到了mapping中
Hibernate简介
应用程序的分层体系结构
ORM的作用
常用ORM的产品
- Hibernate
- TopLink----Oracle
- Apache OJB
Hibernate的环境搭建
官网地址: hibernate.org/orm
hibernate.cfg.xml 的作用
- 是Hibernate中的核心配置文件
- 配置连接数据库的各种属性
- 注册对象关系映射文件
环境搭建
- 建立项目
- 在项目下创建libs
- 将hibernate的Jar,(hibernate.zip中lib/required目录中所有文件拷贝到libs中
- 拷贝junit.jar ,还是mysql-connector-java-5.1.38-bin.jar拷贝到libs中
- 选择所有拷贝进入的文件,鼠标左键build path
- 将hibernate.zip的文件中目录project/ect目录中的hibernate.cfg.xml和log4j.propertie两个文件拷贝到项目的src目录中
hibernate.cfg.xml:
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
-->
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="foo">
<property name="show_sql">true</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.1:3306/zjdb</property>
<property name="hibernate.connection.user">root</property>
<property name="hibernate.connection.password">root</property>
<mapping resource="com/zj/entity/Student.hbm.xml" />
</session-factory>
</hibernate-configuration>