java_菜鸟,hibernate学习
一、hibernate数据持久化组件
对象持久化,把数据保存在永久的存储介质中(数据库)
OR/M(objectrelationmapping)对象关系映射。
POJO类,就是标准的JavaBean。
Hibernate就是一个可以自动的根据xml完成对象关系映射,并持久化到数据库的开源组件。
Hibernate的底层也是有JDBC实现的。
hibernate是通过xml文件的配置,对数据库的底层的方言,以及数据库连接所需的信息,以及连接数据库的驱动。
hibernate的系统配置文件的名字一般叫做hibernate.cfg.xml,一般是映射类名加.hbm.xml。一般将映射类的xml文件和实体类放在一起。
对象映射文件
hibernate的映射类的XXXX.hbm.xml的写法
<?xmlversion="1.0"encoding="gbk"?>
<!DOCTYPEhibernate-mappingPUBLIC
"-//Hibernate/HibernateMappingDTD3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mappingpackage="XXX.XXX.XXX"><!--映射类所在的包-->
<classname="Xxxxxx"table="Xxxxx"><!--将类和数据库的表联系起来-->
<idname="studentId"column="studentId"><!--主键生成策略-->
<generatorclass="assigned"/>
<!--指定主键生成策略为用户指定-->
</id>
<propertyname="XXX"column="XXXX"type="string"/>
<!--类中的书性和字段之间建立联系-->
<propertyname="homeAddress"column="homeAddress"/>
<propertyname="schoolAddress"column="schoolAddress"/>
<propertyname="brithday"column="brithday"type="date"/>
<!--在hibernate中其他类型可以自动识别只有Date类型必须指名-->
</class>
</hibernate-mapping>
hibernate.cfg.xml中会设置数据库的连接信息,以及引用的其他文件的文件名,和一些其他的摄制。这个文件一般放在项目的根目录下。
在hibernate.cfg.xml的写法
<!DOCTYPEhibernate-configurationPUBLIC
"-//Hibernate/HibernateConfigurationDTD3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<propertyname="show_sql">true</property><!--显示sql语句-->
<propertyname="format_sql">true</property><!--使显示的sql语句格式化-->
<propertyname="dialect">....</property><!--使用的数据库方言信息-->
<propertyname="connection.driver_class">....</property>
<!--使用的数据库的驱动-->
<propertyname="connection.url">....</property><!--连接数据库使用的url-->
<propertyname="connection.username">...</property>
<!--连接数据库的用户名-->
<propertyname="connection.password">...</property>
<!--连接数据库的密码-->
<mappingresource="xxx/xxxx/Xxxxxx.hbm.xml"/>
<!--引入的映射对象的xml文件的全路径及文件名-->
</session-factory>
</hibernate-configuration>
使用hibernate编程步骤
1,配置环境,加载hibernate的jar文件,以及连接数据库连接使用的jar文件,并配置CLASSPATH环境变量。
2,写hibernate所需的配置文件,hibernate.cfg.xml,Xxxxx.hbm.xml
3,写POJO类
4,调用hibernateAPI。
1)使用Configuration对象的buildSessionFactory()方法创建SessionFactory对象
2)使用SessionFactory对象openSession()方法创建Session对象。
3)使用Session的相应方法来操作数据库,将对象信息持久化到数据库。