Hibernate笔记1

133 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第9天,点击查看活动详情

MyEclipse自动生成hibernate实体类和配置文件

  1. 找到导航栏里面的window--showView然后输入db brower,打开数据库浏览窗口

  2. 在数据库浏览窗口里只有一个Myeclipse自带的数据库,该数据没有用,我们在空白的地方右键新建一个数据库

    填写数据库信息,包括连接方式,用户名,密码,和jdbc的配置一样,注意将oracle的jar包导进来

  3. 数据库连接已经出现,我们可以连接上数据库了

  4. 这时候我们回过头,新建一个java或javaEE项目,名字随便取,然后右键该项目,选择Myeclipse---add hibernate capliability,进入加载hibernate支持界面,首先选择hibernate版本,这个随便,然后next

  5. 选择hibernate配置文件的存放位置,这个最好放在在项目的根目录下

  6. 配置hibernate数据库连接,在dbdriver选项下,选择我们刚才配的那个数据库连接,这样的话用户名和密码会自动出现

  7. 下一步是否新建一个sessionfactory类,我们可以选择不新建,即将那个复选框的勾给去掉

  8. 这样的话hibernate配置文件(xml)就自动写好了

  9. 我们可以根据自己需求往配置文件里面写点属性,比如说我们常用的show_sql属性,这样的话该工程的hibernate配置就完成了,且所有hibernate的jar包也添加完成

  10. 重新回到数据库浏览器界面,打开连接,选择用户,选择所需要生成事体和配置文件的表,然后右键,选择hibernate reverse engineeing

  11. 该步骤就是开始自动生成实体类的工作了,先选择需要目标项目和文件夹,我选择刚才新建的项目(只有加载了hibernate支持的项目才能自动生成)

  12. 选择实体类和配置文件存放的位置,及pojo的生成策略,跟图上的一摸一样的选,然后next

  13. 选择一些配置信息,其他不用管,只需要在主键生成策略上选择你希望的策略就行了,我是选择increment的

  14. 点击finish,那么刚才那张表的实体类和配置文件皆以生成

  15. 打开实体类,我们会发现主键consumerId是Long型的,我们可以改成int,记住全部都要改(当然也可以不该,不过到时候查询或插入会比较麻烦)

  16. 同样将配置文件中的主键类型也改成int

  17. 再回过头看,hibernate全局配置文件,刚才我们生成的实体类配置文件已经自动加载到了mapping中

Hibernate简介

应用程序的分层体系结构

未命名图片.png

未命名图片1.png

ORM的作用

image.png

常用ORM的产品

  • Hibernate
  • TopLink----Oracle
  • Apache OJB

Hibernate的环境搭建

官网地址: hibernate.org/orm

未命名图片2.png

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目录中

image.png

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>
 ​