java小白的hibernate讨教

来源:互联网 发布:公司的网络架构 编辑:程序博客网 时间:2024/05/21 07:45

本人好久都没有上来写东西了,主要是平时学的东西太多,有很杂,消化都消化不过来更没有时间干这些,其实一个字就是懒,没时间什么的都是借口,把平时学的东西像写日记一样的回顾一遍还是对自己有很大帮助的。

争取从今天开始把之前学的Struts2jspJava,数据库都重新回顾一遍,言归正传,今天要说的就是hibernate,快要大四了才开始学这些东西确实很惭愧,主要是自学起来很没动力。正真的言归正传了。

hibernate是个什么鬼,听起来就很高大上的样子其实它也是程序猿们为了复用节省时间而总结的一套关于封装数据库中表的一个框架,使用这一套框架可以使我们的代码量大大减少,关于数据库连接操作、创建实体类等工作全部都为我们省去了。

首先我们需要在myeclipse中配置一个数据库的连接驱动,步骤如下:

1.  按照如下步骤在myeclipse的右上方视图处找到databasejava小白的hibernate讨教

2.                  在出现的如下界面中,点击myeclipse右键new一个driverjava小白的hibernate讨教

3.                  template选择MySQLdriverName填写数据库连接名,我的就叫mysqlURL一般都是固定的jdbc:mysql://127.0.0.1:3306/projectdb,注意修改一下数据库名称,账号密码就不用说了,再就是添加一个jar包,如图所示,driverclass name把默认值也要修改一下,改成com.mysql.jdbc.Driver,完了测试一下,成功之后可进入下一步,后面没什么要改的,可直接完成。java小白的hibernate讨教

环境配置好了之后就在工程中应用hibernatemyeclipse帮我们集成好了工具,直接点击自己新建的web项目,右键myeclipseprojectfacetsinstallhibernate facet》直接下一步》创建一个包存放sessionfactory

java小白的hibernate讨教

java小白的hibernate讨教

选择之前配置好的mysql

java小白的hibernate讨教

下一步可直接完成

到目前为止,你的src文件下面就有此结构

java小白的hibernate讨教

好了。下面就可以用hibernate来节省我们做数据库访问工作所花的时间了,比如说我们在创建一个实体类的时候通常都是自己写一个java类,按照数据封装的原则,此处只需要操作如下步骤:

1.    选择对应的表》右键》选择hibernate reverseengineering

2.    第一个文件夹的位置选择src,下面也同样创建一个包entity,具体的选择如下

java小白的hibernate讨教

3.         Id generator选择native

java小白的hibernate讨教

4下面的勾先不选,涉及到表与表中的级联关系,等用的时候可以勾选,可以自己先尝试一下效果

java小白的hibernate讨教

完成了之后就会出现对应的java实体类和一个对应的xml配置文件

java小白的hibernate讨教

打开类你会发现和我们之前自己写的代码效果是一样的,接下来我们可以写一个测试的类,看是否真的能够实现数据库的增删改查功能,固定的引用代码如下:具体的操作可以写在中间。

java小白的hibernate讨教

比如在歌手表中山添加一个歌手信息

Singersinger=newSinger("张杰");

    session.save(singer);

java小白的hibernate讨教

可以看到数据库中的效果已经出来了,如果想在控制台看到自己的执行语句,可以在hibernate.cfg.xml配置文件中添加一个属性

java小白的hibernate讨教

 

再次执行就会在控制台看到如下sql语句

java小白的hibernate讨教

操作到这里不难看出框架给我们的开发省去了多少事情,不仅如此,在涉及到表语表之间的级联关系时,写代码可能会漏掉的很多步骤,直接配置环境机器帮我们完成也会减少错误产生的可能性。

总之框架存在的意义就是将优秀的代码总结出来为我们所复用,就像总结出一个名词,这个名词概括了你的一系列操作,当别人问题的项目怎么做出来的时候,没有这个名词我们可能会巴拉巴拉跟别人讲第一步怎么操作、第二步怎么操作,讲完了别人可能还是一脸懵状态,而别人也不需要那么懂,而有了一个名词你只用把它说出来,至于别人懂不懂就不用管了,可能说完就各自干自己的事情去了,多节省时间,好了今天就写到这了,明天再补一篇struts的。。吃饭去了饿死java小白的hibernate讨教