《Java从入门到放弃》框架入门篇:hibernate基本配置

hibernate是个什么玩意呢?简单点说,就是别人写好的一套访问数据库的东东,底层其实就是JDBC。

使用JDBC就像以前没有电饭煲,我们要自己根据经验,多少人煮多少米,放多少水,用多大的火,煮多长时间,整个过程都需要自己来把控,如果把控得不好,运气好只是把饭煮成粥,运气不好就是一锅炭了。

而使用hibernate就跟使用电饭煲一样,根据刻度放水和米,然后按煮饭还是煮粥,接下来等它“叮~”的一声后,就可以吃了,不说煮得有多好,起码煮出来的是饭,而且是熟的!!!

前者没有多年煮饭经验肯定没法煮出口感十足,粒粒饱满的米饭,而后煮就算是像我一样的厨房小白也能煮出香喷可口的米饭!

到这儿,hibernate的基本特征已经很清楚了

第一:好用!!!

第二:简单!!!

第三:简单又好用!!!

好吧,牛B吹了半天了,开始上干货。具体使用步骤如下:

  1. 使用myeclipse中自带的DBBrowser先创建好一个数据库连接
  2. 右键点击项目,安装hibernate框架
  3. 在DBBrowser中找到对应的表,点击右键,生成实体类。
  4. 编写测试代码

一、在DBBrowser中创建数据库连接

二、在项目上点右键,安装hibernate框架

安装完后,在项目中会多出三个文件:

HibernateSessionFactory.java,这个是用来得到Hibernate中的Session对象的,Hibernate中的数据库操作都是由Session对象来完成(注意是Hibernate中的Session)。

hibernate.cfg.xml,这个是用来进行Hibernate相关配置的,比如连接数据库的四要素,要在控制台显示SQL语句等。

lib中的mysql-connector-java-5.1.34-bin.jar是Java用来访问mysql的驱动包。

三、在DBBrowser中对应表上点右键,生成实体类。

向导上的解释都在图上,自己看看哈。

生成完后,把*.hbm.xml文件拖到dao层包,然后修改hibernate.cfg.xml文件中的mapping中的对应路径后的项目结构如下:

四、重写实体类的toString方法,再编写测试代码(因为在这儿还没有讲Junit,所以直接使用带main方法的类来测试)

public class Test {
    public static void main(String[] args) {
        //注意Session是org.hibernate.Session
        Session session = HibernateSessionFactory.getSession();
        //load方法:根据主键得到实体类对象
        Author author = (Author)session.load(Author.class, 1);
        
        System.out.println(author);
        
        HibernateSessionFactory.closeSession();
    }
}

最终结果如下:

好了,到这儿hibernate的基本配置就OK了!具体几个配置文件里面的内容表示什么意思,如何来配置,我们下期再见!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Kirito的技术分享

使用Spring Cloud Sleuth实现链路监控

在服务比较少的年代,一个系统的接口响应缓慢通常能够迅速被发现,但如今的微服务模块,大多具有规模大,依赖关系复杂等特性,错综复杂的网状结构使得我们不容易定位到某一...

4208
来自专栏杂烩

spring安全框架Security(一) 转

    现在很多企业和开发团队都使用了SSH2(Struts 2 +Spring 2.5 +Hibernate)框架来进行开发,  我们或许已经习惯了强大的Sp...

823
来自专栏Web项目聚集地

RESTful 接口实现简明指南

在我所见过的 RESTful 接口的实现中,以 GitHub 最让人惊叹。我第一次如此强烈得感受到 REST 接口的美妙,完全满足了我所期待的「接口的形式美感」...

731
来自专栏IT米粉

IntelliJ IDEA插件——冷门神器分享

IntelliJ IDEA就不必介绍了,至今还能保持IDE前三的神器,如今java程序员的首选,今天介绍几款冷门但绝对是神器的IDEA插件。 前言 IDEA自不...

4656
来自专栏美团技术团队

Java NIO浅析

NIO(Non-blocking I/O,在Java领域,也称为New I/O),是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到...

3929
来自专栏FreeBuf

登录框的另类思考:来自客户端的欺骗

前几天刚见人发了《一个登录框引发的血案》,而常规的爆破有风控和各种变态验证码,或者大型的电商都会用SSO实现登录,密码找回逻辑看似天衣无缝,又或者采用第三方的O...

1220
来自专栏Linyb极客之路

使用lazyInit缩短Spring Boot启动时间

Spring Boot可以进行有助于相关针对项目的设置,包括最常见的默认设置和随时可用的配置,这无疑是很棒的,因为它节省了宝贵的时间 然而,对于框架的新手来说,...

5097
来自专栏小狼的世界

使用PHP脚本来写Daemon程序

这又是一个有趣的概念,daemon在英语中是"精灵"的意思,就像我们经常在迪斯尼动画里见到的那些,有些会飞,有些不会,经常围着动画片的主人公转来转去,啰里啰唆地...

1192
来自专栏我是攻城师

关于Java的BIO,NIO和AIO的演进

Java里面的IO模型种类较多,主要包括BIO,NIO和AIO,每个IO模型都有不一样的地方,那么这些IO模型是如何演变呢,底层的原理又是怎样的呢? 本文我们就...

901
来自专栏c#开发者

企业库推广

企业库推广  阿新 1. 概述 可重用的程序块库,用于解决共性的企业级开发过程中所面临的挑战 l 较低风险(经过实践验证的、精准的) l 降低成本(可充用) ...

35813

扫码关注云+社区