5dJava笔记之HibernateWord文档格式.docx
- 文档编号:15704632
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:64
- 大小:49.11KB
5dJava笔记之HibernateWord文档格式.docx
《5dJava笔记之HibernateWord文档格式.docx》由会员分享,可在线阅读,更多相关《5dJava笔记之HibernateWord文档格式.docx(64页珍藏版)》请在冰豆网上搜索。
JDBC优点:
在一定条件下,从理论上效率高,功能完备,是最底层的API。
缺点:
代码量大,比较复杂。
3.EJB:
封装了JDBC,但API复杂,开发周期长,难于测试。
4.ORM:
来于民间,来源实践,纯面向对象,封装了JDBC,适宜的API轻量级(可选的服务)利用数据库做企业级对象持久化,一定用Hibernate。
开发环境
1.建立JAVA普通项目
2.创建userlibrary引用JAR包
1
Hibernate_home/lib/*.jarHibernate_home/hibernate3.jarMysql或者JDBC驱动
3.给项目引用userlibrary库,把配置文件hibernate.cfg.xml放src下。
定义映射文件实体类名.hbm.xml配置映射关系。
在myeclipse中配置DTD对xml校验:
1,导入hibernate库文件
(1)在eclipse中建立一个java工程,如:
hbn
(2)在工程hbn的属性--BuildPath中选择AddLibraries
(3)在AddLibraries窗口中选择UserLibrary点next按钮
(4)在UserLibrary窗口中点UserLibraries...按钮
(5)在UserLibraries窗口中,点new按钮
(6)在Newuserlibrary窗口中,填写一个Userlibaryname(如:
hbnlib,注意不要选择System
libary复选框),点OK按钮回到UserLiberies窗口
(7)在UserLiberaries窗口中选择刚刚创建的
hbnlib,点Addjars按钮
(8)在打开的文件选择窗口中找到解压好的hibernate的库文件,全部选中,点"
打开"
按钮,返回UserLibraries窗口
(9)在UserLibraries窗口中点OK按钮,返回
UserLibrary窗口;
再点Finish按钮,结束操作
2,导入2个hibernateDTD文件hibernate-configuration-3.0.dtdhibernate-mapping-3.0.dtd
(1)在eclipse中选择Window菜单中的Preferences
选项
(2)在Preferences窗口中,选择FilesandEditors的XML节点中的XMLCatalog子节点
(3)在XMLcatalog子节点选中状态下,选择右侧窗口中的UserSpecifiedEntries选项,然后点窗口下方的Add按钮
(4)在AddXMLCatalogEntry窗口中,填写URI文本框(点文本框右端的按钮,选择filesystem,在弹出的文件选择窗口中选择
hibernate-3.2\src\org\hibernate\hibernate-configuration-3.0.dtd
(5)用文本编辑器打开该DTD文件,选择文件头部,
<
!
DOCTYPE>
标签中PUBLIC后状如:
-//Hibernate/HibernateConfigurationDTD3.0//EN
的字符串,然后将该字符串拷贝到
AddXMLCatalogEntry窗口中Key文本框中
(6)对hibernate-mapping-3.0.dtd重复4、5两步
2
OR/M对象关系映射
objectrelationmapping
POJO类,就是标准的JavaBean。
Hibernate的工作原理:
封装了JDBC,Java只能用JDBC访问数据库。
Hibernate就是一个可以自动的根据xml完成对象关系映射,并持久化到数据库的开源组件。
Hibernate的底层也是有JDBC实现的。
接口:
session线程不安全的,轻量级的,一个线程一个session。
sessionFactory线程安全的,重量级的比较耗资源。
类:
configuration读取配置文件数据库信息,正确连接数据库。
单一实体映射:
单个PO-单个表,类-表,对象-记录,属性-字段。
用不含业务关系的做主键。
Oid(唯一性)
hilo算法,高低位算法。
(每个应用程序一个计数器,从数据库里取出的数作为高位,应用程序的作为低位,可以保证得到的Oid不重复,并且不用多次访问数据库。
hibernate是通过xml文件的配置,对数据库的底层的方言,以及数据库连接所需的信息,以及连接数据库的驱动。
hibernate的系统配置文件的名字一般叫做hibernate.cfg.xml,一般是映射类名加.hbm.xml。
一般将映射类的xml文件和实体类放在一起。
hibernate.cfg.xml中会设置数据库的连接信息,以及引用的其他文件的文件名,和一些其他的设置。
这个文件一般放在项目的根目录下。
映射关系配置
在hibernate中其他类型可以自动识别只有Date类型必须指定。
propertyname="
namecolumn="
name"
type="
string"
/>
brithday"
column="
date"
在hibernate.cfg.xml的写法:
?
xmlversion="
1.0"
>
DOCTYPEhibernate-configurationPUBLIC
"
-//Hibernate/HibernateConfigurationDTD3.0//EN"
3
hibernate-configuration>
session-factory>
--显示sql语句-->
show_sql"
true<
/property>
--使显示的sql语句格式化-->
format_sql"
--使用的数据库的驱动-->
connection.driver_class"
org.gjt.mm.mysql.Driver
--连接数据库使用的url-->
connection.url"
jdbc:
mysql:
//127.0.0.1:
3306/zhaoqp
--连接数据库的用户名-->
connection.username"
root<
--连接数据库的密码-->
connection.password"
zhaoqp<
connection.isolation"
2<
—自动建表/create/none先删除后创建-->
hbm2ddl.auto"
none<
--使用的数据库方言信息-->
4
--<
dialect"
org.hibernate.dialect.Oracle9Dialect
-->
org.hibernate.dialect.MySQLDialect
--引入的映射对象的xml文件的全路径及文件名-->
mappingresource="
com/zhaoqp/entity/Product.hbm.xml"
/>
com/zhaoqp/entity/Item.hbm.xml"
com/zhaoqp/entity/Order.hbm.xml"
com/zhaoqp/entity/User.hbm.xml"
/session-factory>
/hibernate-configuration>
hibernate的映射类的XXXX.hbm.xml的写法:
1.Product.hbm.xml
DOCTYPEhibernate-mappingPUBLIC
-//Hibernate/HibernateMappingDTD3.0//EN"
--映射类所在的包-->
hibernate-mappingpackage="
com.zhaoqp.entity"
--将类和数据库的表联系起来-->
classname="
Product"
table="
cart_product"
5
--主键生成策略-->
idname="
id"
generatorclass="
native"
/generator>
/id>
--类中的属性和字段之间建立联系-->
not-null="
true"
unique="
description"
price"
>
/class>
/hibernate-mapping>
2.User.hbm.xml
DOCTYPEhibernate-mappi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- dJava 笔记 Hibernate