java三大框架之一hibernate使用入门
综述: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使用入门的更多相关文章
- Java三大框架之——Hibernate关联映射与级联操作
什么是Hibernate中的关联映射? 简单来说Hibernate是ORM映射的持久层框架,全称是(Object Relational Mapping),即对象关系映射. 它将数据库中的表映射成对应的 ...
- Java三大框架之——Hibernate
什么是Hibernate? Hibernate是基于ORM(O:对象,R:关系,M:映射)映射的持久层框架,是一个封装JDBC的轻量级框架,主要实现了对数据库的CUPD操作. 注:CRUD是指在做计算 ...
- java三大框架——Struts + Hibernate + Spring
Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作) Hibernate主要是数据持久化到数据库 再用jsp的servlet做网页开发的时候有个 w ...
- Java三大框架之——Hibernate中的三种数据持久状态和缓存机制
Hibernate中的三种状态 瞬时状态:刚创建的对象还没有被Session持久化.缓存中不存在这个对象的数据并且数据库中没有这个对象对应的数据为瞬时状态这个时候是没有OID. 持久状态:对象经过 ...
- Java三大框架 介绍
三大框架:Struts+hibernate+spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...
- java 三大框架 介绍
三大框架:Struts+Hibernate+Spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...
- [转]JAVA三大框架SSH和MVC
Java—SSH(MVC) JAVA三大框架的各自作用 hibernate是底层基于jdbc的orm(对象关系映射)持久化框架,即:表与类的映射,字段与属性的映射,记录与对象的映射 数据库模型 也就 ...
- JAVA三大框架的各自作用
http://christhb.blog.163.com/blog/static/98982492011727114936239/ 一.Spring Spring是一个解决了许多在J2EE开发中常见的 ...
- JAVA三大框架SSH的各自作用
一.Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架. Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯. Spring的 ...
随机推荐
- php大力力 [042节] 今天做了一个删除功能
php大力力 [042节] 今天做了一个删除功能 if(isset($_GET['action'])){ if($_GET['action']=="del"){ $sql = &q ...
- C++ UFunction({FLAG}) 宏 FLAG 解释笔记
1.BluePrintCallable --蓝图可调用 但不可编辑 2.BlueprintImplementableEvent --函数体必须实现与Blueprint 但函数名必须生成与C++ .h ...
- [Algorithm Basics] Sorting, LinkedList
Time complexity: Binary search O(log2 n): i=0. n elements: ------------------- i=1. n/2 ...
- Jquery和Javascript 实际项目中写法基础-闭包 (2)
一.什么是闭包? 概念性的我就不去百度了,感兴趣的可以自己去搜下,我自己的理解,闭包就是一个封装的包,相当于类的概念,把乱七八糟的的东西封装到一起,然后统一使用一个对象来调用,实现代码部分对外开放,部 ...
- 12-16php测试题
2. 以下哪个SQL语句是正确的( d )A:insert into users ('p001','张三','男'); B:create table (Code int primary key); C ...
- 如何改善magento前台图片质量
magento做的网店的 前台产品图片仔细看会发现不够清晰,质量比原图损失较大,这是因为系统在用GD2压缩图片时默认压缩 质量是80%.为了提高产品图片质量,我们可以修改代码来改变压 magento做 ...
- 客户端HTTP断点续传的原理
其实断点续传的原理很简单,就是在Http的请求上和一般的下载有所不同而已. 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下:假设服务器域名为wwww.scu.edu.cn,文件名为down. ...
- Linux TC基于CBQ队列的流量管理范例
参考了TC的很多文档,自己也整理了一篇配置记录.在实际使用过程中效果还不错,在此分享给大家以备参考.环境:局域网规模不是很大40多台机器. NAT共享上网(内网:eth0 外网:eth2)CBQ是通过 ...
- [原创] 用两个stack实现queue的功能
#include <iostream> #include <stack> using namespace std; class doubleStackToQueue { pri ...
- LintCode Binary Tree Inorder Traversal
Binary Tree Inorder Traversal Given a binary tree, return the inorder traversal of its nodes' values ...