综述:Hibernate的作用就是让实体类与数据库映射,使数据持久化,用于替代JDBC,使我们不致于写那么多sql语句代码。

1. 首先在官网www.hibernate.org下载hibernate包, 关于如何下载网上也有详细的教程。下载后解压出来,其中required里面的jar包全部是必须的,可以都放在一个library中,然后再加上mysql(或其他数据库)的驱动包,就是我们需要的所有类库了。

2. 类库全部添加进来之后就是框架的配置问题了。这里主要配置两部分:hibernate.cfg.xml全局配置和每个实体类对应的映射配置Student.hbm.xml(在5中使用注解可以免去这个局部xml配置)。全局的参数包括JDBC四大参数等,而映射配置则是数据库跟实体类之间,类与表的映射,以及成员变量和属性的映射。

3. 上面两个配置在网上都可以找到。这里主要注意:hibernate官网下载的版本较高,而配置头那里还是3.多还是没问题的。然后console输出很多红色信息,其实只是警告和一些提示信息,查看数据库插入成功就可以了。

4. 可以说,控制台只要看到这句话Hibernate: insert into Student (name, age, id) values (?, ?, ?),就说明hibernate框架搭建和配置成功了。

5. 使用注解@Entity和@Id可以免去局部配置。然后在全局配置加个mapping映射即可。注解比配置文件更为方便,因此也应用更广。

6. 使用hibernate还有一个坑:java.lang.ClassNotFoundException org.hibernate.configuration, 这个异常在java project并没有报出来,而是在web project的时候报错,原因在于jar包们没有放在WEB-INF的lib目录下。不要总觉得自己不是大神没办法解决问题。冷静然后按照分析问题→锁定问题→解决问题的思路去做,在网上不断搜索你会发现,其实你解决问题的能力也挺厉害的。百度上一般有解决办法,实在不行就看英文版的,或者依靠自己的思维能力,有道理的推理。鼬也说了,任何的术都有弱点,同样的道理,任何的问题,都有解决的办法。更何况,codes never lies。计算机从不撒谎。

java三大框架之一hibernate使用入门的更多相关文章

  1. Java三大框架之——Hibernate关联映射与级联操作

    什么是Hibernate中的关联映射? 简单来说Hibernate是ORM映射的持久层框架,全称是(Object Relational Mapping),即对象关系映射. 它将数据库中的表映射成对应的 ...

  2. Java三大框架之——Hibernate

    什么是Hibernate? Hibernate是基于ORM(O:对象,R:关系,M:映射)映射的持久层框架,是一个封装JDBC的轻量级框架,主要实现了对数据库的CUPD操作. 注:CRUD是指在做计算 ...

  3. java三大框架——Struts + Hibernate + Spring

    Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作) Hibernate主要是数据持久化到数据库 再用jsp的servlet做网页开发的时候有个 w ...

  4. Java三大框架之——Hibernate中的三种数据持久状态和缓存机制

    Hibernate中的三种状态   瞬时状态:刚创建的对象还没有被Session持久化.缓存中不存在这个对象的数据并且数据库中没有这个对象对应的数据为瞬时状态这个时候是没有OID. 持久状态:对象经过 ...

  5. Java三大框架 介绍

    三大框架:Struts+hibernate+spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...

  6. java 三大框架 介绍

    三大框架:Struts+Hibernate+Spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...

  7. [转]JAVA三大框架SSH和MVC

    Java—SSH(MVC) JAVA三大框架的各自作用  hibernate是底层基于jdbc的orm(对象关系映射)持久化框架,即:表与类的映射,字段与属性的映射,记录与对象的映射 数据库模型 也就 ...

  8. JAVA三大框架的各自作用

    http://christhb.blog.163.com/blog/static/98982492011727114936239/ 一.Spring Spring是一个解决了许多在J2EE开发中常见的 ...

  9. JAVA三大框架SSH的各自作用

        一.Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架. Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯. Spring的 ...

随机推荐

  1. IOS ASIFormDataRequest使用简介(2/25)

    ASIHTTPRequest类库中的ASIFormDataRequest是实现HTTP协议中的处理POST表单的很好的类库.使用起来非常简单.下面特酷吧简要总结其用法. 在说明之前先需要了解HTTP请 ...

  2. phpstorm的快捷键

    F5复制 F6移动 Alt + Delete键安全删除 Shift + F6重命名 按Ctrl + Alt + N内联变量 按Ctrl + Alt + M提取方法(Javascript的唯一) 按Ct ...

  3. addresslist

    #include<iostream> #include<cstring> #include<cstdio> #include<cctype> #incl ...

  4. Boot loader: Grub进阶[转]

    Boot loader: Grub进阶 本文记录grub的一些进阶配置 关於核心功能当中的 vga 配置 事实上,你的 tty1~tty6 除了 80x24 的解析度外,还能够有其他解析度的支持喔!但 ...

  5. oracle审计详解-转

    http://blog.chinaunix.net/u2/66903/showart_2082884.htmlOracle使用大量不同的审计方法来监控使用何种权限,以及访问哪些对象.审计不会防止使用这 ...

  6. C语言 gets()和scanf()函数的区别

    scanf( )函数和gets( )函数都可用于输入字符串,但在功能上有区别.若想从键盘上输入字符串"hi hello",则应该使用 gets 函数. gets可以接收空格:而sc ...

  7. 一个服务器上面配置多个IP ,实现指定IP的域名请求

    //配置多个IP命名using System.Net; //********************************************************************** ...

  8. LeetCode "Design Tic-Tac-Toe"

    We don't have to keep a complete chess board.. just counters! class TicTacToe { vector<int> cn ...

  9. 使用.net的Cache框架快速实现Cache操作

    本文转载自:http://www.cnblogs.com/TianFang/p/3430169.html .NET 4.0中新增了一个System.Runtime.Caching的名字空间,它提供了一 ...

  10. log4net:保存自定义参数到数据库

    log4net:保存日志到数据库 自定义参数 新建一个类,继承于PatternLayoutConverter public class CustomerPatternConverter : Patte ...