您的位置:首页 > 编程语言 > Java开发

java三大框架之Hibernate的个人学习

2016-07-03 01:48 357 查看
java框架的学习

java的三大框架之一:hibernate

1、获取hibernate的发布包

美国的某个程序员不满足但当前的开发的框架,然后就通过一个多月的努力开发出hibernate。

gitHud(李纳斯  linux的创始人)同时也是gitHub的创始人

gitHub的开源的托管器。

svn(绝大多数的公司都用该代码的托管器,因为它不能看到源码)。

springmvc spring jdbc 例子

struts2

spring

sublime

代码的保存和封装是很重要的(方便自己的回忆与复习,以免自己以后忘记了)。

hibernate的开发可能需要依赖其他的框架(jar包)。所以配置它可能还要引进其他的jar包

maven---项目管理工具:

管理所有的jar(以后项目就不用手动的导jar包了,但我们还是需要学会手动导包,因为可能以后

导的包不够,就需要手动导包)---》它导包的原理---只要在“xml”文件中配置你需要导入什么包

就可以了-----如:这里要导入“hibernate3”的依赖包,---那么就在“xml”文件中配置“hibernate3”

就可以了

hibernate的而配置的开始

右击项目--》floder---》新建“jar”文件---》将jdbc的驱动包(jar)拷贝到jar文件夹中

----》然后将hibernate依赖的(.jar)包拷贝到“jar”文件夹下----》选中所有的jar包----》右击---Add to path。

除了上面 的方法可以导入hibernate的依赖包---还可以“右击项目----build path----configure build path

---Add External jar(添加外部的jar包)----然后找到hibernate依赖的jar包,直接导进来就可以了。”

将hibernate的依赖的配置文件加入到项目中

hibernate.cfg.xml   配置文件(主要的配置文件)

***.hbm.xml       映射文件(映射文件就是约束,设一个类(对象对应的一条表中的记录)对应那张表,类里面的属性对应那一列)

所以这里有两个文件

xml    dtd(文件是约束xml的输入,也就是对xml文件的一种限制,1,限制xml文件中标签的写入,2、给我们程序员一个提示,就

是有xml文件中可以写入哪些标签。)

没有dtd文件那么xml文件中标签的写入是没有限制的,

一般来说没一个xml文件都对应这一个dtd文件。xml主要用来输入配置信息的,

找到“hibernate3.jar”---解压出来---打开解压出来的文件(hibernate3)---org---hibernate下就可以找到(dtd文件了)

----将这两个dtd文件复制出来-----右击项目----floder----新建 dtd文件夹---将拷贝出来的dtd文件粘贴到dtd文件夹中
-----双击打开dtd文件----拷贝"<!DOCTYPE />"的全部内容。

在项目中:“右击src--- new xml文件----名字为“hibernate.cfg.xml" ------将拷贝"<!DOCTYPE />"的全部内容

粘贴到"hibernate.cfg.xml文件中"----输入"<"按atl+/看有没有提示”--有提示配置成功。

如果没有提示----需要手动去关联----将“http:.....dtd拷贝”-----点击Windows----

---找到首选项(Perferences)---输入“xml”-----xml Catalog---User Specified

Entries----Add---key“粘贴刚才拷贝的“http:....dtd”-----key type---选中URI

-----Workspace----从项目中选中刚才配置的“hibernate.cfg.xml”文件----点击ok就

可以了。

然后看老师的笔记(看帮助文档):

到hibernate的发布包----documentation---manual---zh-CN---index.html--

看---hibernate的配置----然后就可以配置hibernate的xml等配置文件了。

----然后就可以将hibernate的配置文件拷贝粘贴到刚才创建好的对应的配置文件中。---
然后修改里面的配置信息

<property></property>//标签需要配置如下:

<property name="connection.driver_class"

>org.hsqldb.jdbcDriver</property>//配置jdbc的加载驱动

        <property name="connection.url"

>jdbc:hsqldb:hsql://localhost</property>//配置jdbc的加载的连接

        <property name="connection.username"

>sa</property>//设置数据库连接的用户户名

        <property name="connection.password"

></property>//设置数据库连接的密码

<property name="connection.pool_size"

>1</property>//数据库(jdbc)的连接池(可用可不用)//这里注释掉

        <!-- SQL dialect -->

        <property name="dialect"

>org.hibernate.dialect.MySQLDialect</property>//数据库的方言(SQL),这里设置的是

MySQL数据库的方言。

 <property name="show_sql"

>true</property>/就是说hibernate会帮我们封装SQL,但在我们学习的调试的阶段,

需要将执行的SQL的语句显示出来----所以它里面的参数设为“true”。设为“false”

则不会显示。

<property name="hbm2ddl.auto"

>update</property>//它的主要是将映射文件转化成数据库的定义语言。好处:可以自动

建表。根据“映射文件--自动建表”

1、“hbm:叫数据库修改语言(update、insert,delete,query)”----

2、“ddL”---"ddL就是数据库定义语言(主要是:create table 

、delete table 、drop table等)"

<mapping resource="org/hibernate/tutorial/domain/Event.hbm.xml"/>//该标签

可以有多个,一个标签对应着一个映射文件(“.xml”文件)---也就是一个数据库中的一个

表。他的功能:主要用于将映射文件导入进来

每一个pojo(bean)类对应着一个映射文件(....hbm.xml)。一个工程对应一个配置

文件(hibernate.cfg.xml)。

实现序列化的接口有什么好处----因为我们的对象保存到文件需要序列化才能保存进去

---还有网络的数据的传输也需要序列化。

下面进行映射文件的配置:

1、新建一个pojo类

 如下:

 package org.hibernate.tutorial.domain;

public class Person {

    private Long id;

    private int age;

    private String firstname;

    private String lastname;

    public Person() {}

    // Accessor methods for all properties, private setter for 'id'

}

//2、在与pojo类同包下新建一个“person.hbm.xml”映射文件

如下:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC 

    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> 

<hibernate-mapping package="org.hibernate.tutorial.domain">

    <class name="Person" table="PERSON">//class标签中,name:表示的是pojo类的类名

    //table:表示的是数据库中数据表的表名

        <id name="id" column="PERSON_ID">//id标签,就是一个key(主键)所对应的标签
//name:表示的是pojo类中的属性名,column:表示的是数据表中的列名(字段名)

            <generator class="native"/>//设置key(主键)主键的生成机制。
   //如自动增长模式

        </id>

        <property name="age"/>//该标签中的name代表的是pojo类中的属性名,如果没有标
//明列名的话,默认pojo类的属性名就是数据表中的列名(字段名)

        <property name="firstname"/>

        <property name="lastname"/>

    </class>

</hibernate-mapping>

在与pojo类的包下中:“右击src--- new xml文件----名字为“hibernate.cfg.xml" ------

将拷贝"<!DOCTY
a2e9
PE />"的全部内容粘贴到"person.cfg.xml文件中"----输入"<"按atl+/看

有没有提示”--有提示配置成功。

如果没有提示----需要手动去关联----将“http:.....dtd拷贝”-----点击Windows----

---找到首选项(Perferences)---输入“xml”-----xml Catalog---User Specified

Entries----Add---key“粘贴刚才拷贝的“http:....dtd”-----key type---选中URI

-----Workspace----从项目中选中刚才配置的“person.cfg.xml”文件----点击ok就
可以了。

最后将“”person.hbm.xml“的映射文件加到配置文件“”person.hbm.xml“中(将映射文件“”hibernate.cfg.xml“集成到配置文件中)

<mapping resource="org/hibernate/tutorial/domain/Persion.hbm.xml"/>

写完后就按住ctrl键,将光标移到resource属性的内容中,如果显示的是连接的形式,那么表示配置成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hibernate java