Hibernate笔记文档格式.docx
《Hibernate笔记文档格式.docx》由会员分享,可在线阅读,更多相关《Hibernate笔记文档格式.docx(94页珍藏版)》请在冰豆网上搜索。
对象关系映射。
对象:
java程序中类
关系:
关系型数据库中的表
O;
publicclassGoodsimplementsjava.io.Serializable{
//Fields
privateIntegergoodsId;
privateStringgoodsName;
privateDoublegoodsPrice;
privateIntegergoodsNum;
R:
CREATETABLEgoods(
goods_idint(11)NOTNULLauto_increment,
goods_namevarchar(200)defaultNULL,
goods_pricedoubledefaultNULL,
goods_numint(11)defaultNULL,
PRIMARYKEY('
goods_id'
)
M:
Goods.hbm.xml文件,ORM文件
<
hibernate-mapping>
<
classname="
com.no8.domain.Goods"
table="
goods"
catalog="
hibernate"
>
idname="
goodsId"
type="
java.lang.Integer"
columnname="
goods_id"
/>
generatorclass="
identity"
/generator>
/id>
propertyname="
goodsName"
java.lang.String"
goods_name"
length="
200"
/property>
goodsPrice"
java.lang.Double"
goods_price"
precision="
22"
scale="
0"
goodsNum"
goods_num"
/class>
/hibernate-mapping>
4手动实现Hibernate的第一个案例(基于hibernate4.3.5版本)
4.1创建工程并导入hibernate的jar文件
4.2编写实体类和数据库关系表
4.3编写ORM文件
?
xmlversion="
1.0"
!
DOCTYPEhibernate-mappingPUBLIC
"
-//Hibernate/HibernateMappingDTD3.0//EN"
http:
//www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"
<
column="
<
4.4编写Hibernate的配置文件-hibernate.cfg.xml
在工程的src目录下创建一个名称为hibernate.cfg.xml的XML文件
xmlversion='
1.0'
encoding='
utf-8'
DOCTYPEhibernate-configurationPUBLIC
-//Hibernate/HibernateConfigurationDTD3.0//EN"
//www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"
hibernate-configuration>
session-factory>
--Databaseconnectionsettings-->
connection.driver_class"
com.mysql.jdbc.Driver<
connection.url"
jdbc:
mysql:
//127.0.0.1:
3306/no8?
useUnicode=true&
amp;
characterEncoding=utf8<
connection.username"
root<
connection.password"
--方言-->
dialect"
org.hibernate.dialect.MySQLDialect<
--显示Hibernian生成的SQL语句-->
show_sql"
true<
--加载ORM映射文件-->
mappingresource="
com/no8/domain/Goods.hbm.xml"
/>
/session-factory>
/hibernate-configuration>
4.5编写工具类加载Hibernate配置文件创建sessionFactory
基于hibernate4版本。
在hiberante3版本中不要修改
Configurationconfiguration=newConfiguration().configure();
ServiceRegistryserviceRegistry=newStandardServiceRegistryBuilder()
.applySettings(configuration.getProperties()).build();
SessionFactorysessionFactory=configuration.buildSessionFactory(serviceRegistry);
4.6从SessionFactory中创建Session对象
Sessionsession=HibernateUtil.getSessionFactory().openSession();
4.7通过调用session对象的方法实现数据库的CURD操作
publicclassSaveTest{
publicstaticvoidmain(String[]args){
Goodsgoods=newGoods();
goods.setGoodsName("
索爱"
);
goods.setGoodsNum
(1);
goods.setGoodsPrice(35D);
Sessionsession=HibernateUtil.getSessionFactory().openSession();
Transactiontran=session.getTransaction();
tran.begin();
session.save(goods);
mit();
session.close();
HibernateUtil.getSessionFactory().close();
System.out.println("
end"
}
}
publicclassFindById{
Goodsgoods=(Goods)session.get(Goods.class,3);
System.out.println(goods.getGoodsName());
System.out.println(goods.getGoodsPrice());
publicclassUpdate{
goods.setGoodsNum(100);
session.update(goods);