当前位置: 首页 > article >正文

Hibernate—(搭建、简单使用)


 一、Hibernate的简介

         1.什么是Hibernate?

         Hibernate是持久化(和数据库有关的操作)框架,也是ROM框架(Object/Relation/Mapping  对象关系映射),Hibernate核心内容是ORM(关系对象模型)。可以将对象自动的生成数据库中的信息,使得开发更加的面向对象。这样作为程序员就可以使用面向对象的思想来操作数据库,而不用关心繁琐的JDBC。所以,Hibernate处于三层架构中的D层(持久层)。



二、为什么Hibernate?

    1、Hibernate可以使用在Java的任何项目中,不一定非要使用在Java web项目中

2、与JDBC相比较,代码更简介,开发效率更高。

3、与MyBatis想比较而言; Hibernate是成熟稳定的优秀框架,全封装式,运行速度慢,开发效率高。MyBatis没有Hibernate

那么稳定,处于半封装式,运行速度快,但是开发效率慢。




三、在哪里用Hibernate?

     任何和数据库操作有关的都可以使用Hibernate

   

      二、在Eclipse搭建Hibernate框架

    1、安装Hibernate插件(推荐使用在线安装插件的方式(原因:快,不容易出错))

   第一步:去市场下载

   第二步:搜索hibernate

                           

   第三步: 寻找Jboos 下载安装

                             

第四步:测试(ctrl+n  输入hibernate关键字,如果出现以下图片中的信息就成功了,默认没有插件是没有的。)

                         


二、使用maven创建项目并导入hibernate核心jar包

 ①pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>Hibernate01</groupId><artifactId>Hibernate01</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>Hibernate01 Maven Webapp</name><url>http://maven.apache.org</url><properties>  <argLine>-Dfile.encoding=UTF-8</argLine></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><!-- servelet --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><!-- 加入hibernate依赖 --><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>5.2.10.Final</version></dependency><!-- Mysql依赖 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.43</version></dependency> </dependencies><build><finalName>Hibernate01</finalName></build>
</project>


②数据库

                    

③核心配置

                        

④实体类:

package com.sun.entity;public class Student {private int sid;private String sname;private int sage;public Student() {}public Student(int sid, String sname, int sage) {super();this.sid = sid;this.sname = sname;this.sage = sage;}public Student(int sid) {super();this.sid = sid;}public Student(String sname, int sage) {super();this.sname = sname;this.sage = sage;}public int getSid() {return sid;}public void setSid(int sid) {this.sid = sid;}public String getSname() {return sname;}public void setSname(String sname) {this.sname = sname;}public int getSage() {return sage;}public void setSage(int sage) {this.sage = sage;}}
⑤实体类映射文件(Student.hbm.xml)  导入插件后可以在点击一下包。然后Ctrl+n 输入hibernate 选择第四个映射文件,选择你要映射的实体类,然后会自动将你映射好。没有插件的必须自己手写,或者copy。

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2017-8-21 20:09:40 by Hibernate Tools 3.5.0.Final -->
<hibernate-mapping><class name="com.sun.entity.Student" table="STUDENT"><id name="sid" type="int"><column name="SID" /><generator class="assigned" />  <!--主键--></id><property name="sname" type="java.lang.String"><column name="SNAME" /></property><property name="sage" type="int"><column name="SAGE" /></property></class>
</hibernate-mapping>

⑥核心配置hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!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><!-- 配置数据库的连接信息 -->  <property name="connection.username">root</property> <property name="connection.password">tiger</property> <property name="connection.url">jdbc:mysql://localhost:3306/mysql</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property>      <!-- 显示SQL语句 --><!-- <property name="show_sql">true</property> --><!--配置映射信息--><mapping resource="com/sun/entity/Student.hbm.xml"/></session-factory>
</hibernate-configuration>


三、测试Hibernate的增删改查 使用hibernate八步骤

 ① 加载Hibernate配置文件

 Configuration configuration=new Configuration().configure();

 ②创建SessionFactory

SessionFactory sessionFactory = configuration.buildSessionFactory();

 ③创建Session

Session session = sessionFactory.openSession();

 ④开启事务

Transaction transaction = session.beginTransaction();

 ⑤执行数据库操作

  增

Student student=new Student("雷一鸟", 18);
session.save(student);

  删

Student stu=new Student(1);  //id=1
session.delete(stu);

  改

Student student=new Student(1,"雷一鸟", 18);

session.update(stu);

  查(查询全部)

List<Student> list=session.createCriteria(Student.class).list();

//遍历

for (Student student : list) {
System.out.println(student.getSid()+" "+student.getSname()+" "+student.getSage());
}

 ⑥提交事务

  transaction.commit();

 ⑦关闭Session

  session.close();

 ⑧关闭SessionFactory

   sessionFactory.close();

http://www.lryc.cn/news/2420127.html

相关文章:

  • DNS的原理与搭建
  • FIFO存储器概念介绍
  • ORACLE 可插拔式pdb
  • Tensorflow,pytorch,Caffe,MXNet,PaddlePaddle,THeano算法框架哪家强?
  • 【ruoyi-vue】yml文件解析
  • 元数据简析:定义及管理
  • 安装配置 | 用同济邮箱账户下载matlab
  • 支持向量机(SVM)通俗版讲解
  • Python123
  • font字体的一些常用代码
  • Linux命令之nc
  • 【GAN】基础原理讲解及代码实践
  • 黎曼猜想?
  • Iperf3详解+实战教程
  • OLAP实践 —— OLAP基本概念理解总计小记
  • 微服务(概念篇):什么是微服务?一篇文章让你彻底搞明白
  • 黑苹果安装教程(史上最简单、最新)
  • CTF是什么?一文带你读懂网络安全大赛
  • Sonar介绍及使用
  • Thymeleaf学习
  • 回车与换行符号\n,\r\n,^M符号
  • Dart从入门到入土【持续更新】
  • BREW 转自百科
  • 一篇文章教你玩转,入门级 SQL 注入实战!
  • App自动化测试 —— Appium的使用
  • 【每日英语】identical
  • 仿宋-GB2312字体
  • localStorage、sessionStorage、cookie分别是什么以及区别+浏览器存储方法
  • MySQL主从- slave跳过错误
  • 冒泡排序--详细讲解