Hibernate之开发环境搭建

Hibernate 学习

*学习思路:
(1)Hibernate运行环境需要的最少jar包
(2)Hibernate.cfg.xml/Bean.hbm.xml/web.xml 基础配置方法
(3)创建SessionFactory,获得Session当前会话的方法
(4)get/load/save/update/delete基本HQL查询
(5)Hibernate高级配置(id、关联配置、继承配置)
(6)HQL高级查询以及复杂查询

*笔记:
1.基本概念了解:
ORM 对象关系映射

2.Hibernate必须的jar包:

  • antlr-*.jar//其他工具辅助包
  • commons-collection-*.jar//必须的集合类工具包
  • dom4j-*.jar//hibernate靠其读写xml配置文件
  • hibernate*.jar//核心包
  • jta-*.jar//jta规范包
  • db-connection-java-*.jar//数据库连接包

       //以下的包hibernate版本不一样,存在差异

  • javassist-*.jar//字节码增强包(更高版本已经换成[cglib.jar]+[asm.jar]+[asm-attrs.jar])
  • slf4j-api-*.jar//
  • slf4j-nop-*.jar//

3.实现Hibernate运行
1>.在src中新建hibernate.cfg.xml配置文件 //配置数据库连接参数,其可以在hibernate.properties中寻找
        //hibernate.connection.url --- 访问数据库的url地址
        //hibernate.connection.username --- 访问数据库的用户名
        //hibernate.connection.password --- 访问数据库的密码
        //hibernate.connection.driver_calss --- 访问数据库所需的驱动包
        //hibernate.dialect --- 访问数据库的方言 

<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> 

<hibernate-configuration> 
<session-factory> 
    <property name="show_sql">true</property> 
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="hibernate.connection.url">jdbc:mysql://192.168.101.248/xcz</property> 
    <property name="hibernate.connection.username">root</property> 
    <property name="hibernate.connection.password">root</property> 
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 

  <mapping resource="com/xcz/domain/Student.hbm.xml"/>

</session-factory> 

</hibernate-configuration> 

 
2>.Xxxx.hbm.xml 映射文件(例如com.xcz.domain.User)
        将该文件以需要映射的类的类名.hbm.xml命名放在跟映射类同包中
        加入映射配置
        Class ---- table
        属性(Attribute)  ---- 列
        对象 ---- 一条数据
        hibernate中要求每个对象都应该有一个唯一性的标用作对应数据库中的主键
        使用<id>映射主键,generator为主键生成策略(由hibernate已经写好)
            <id name="id" column="id">
        <generator class="uuid.hex" />
            </id>
        使用<property>来映射属性
            <property name="username" length="20" />
        配置写好后将该映射文件加入到hibernate的主配置中:
            <mapping resource="com/chinasofti/domain/User.hbm.xml"/>


 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="Calendar" table="t_calendar" catalog="db_personalkit">
        <id name="id" type="java.lang.String">
            <column name="id" length="36" />
            <generator class="uuid.hex"></generator>
        </id>
        <many-to-one name="user" class="User" fetch="select">
            <column name="planowner" length="36" />
        </many-to-one>
        
        <property name="planStartTm" type="java.util.Date">
            <column name="planstarttm" length="19" />
        </property>
        <property name="planEndTm" type="java.util.Date">
            <column name="planendtm" length="19" />
        </property>
        <property name="planTitle" type="java.lang.String">
            <column name="plantitle" length="100" />
        </property>
        <property name="planContent" type="java.lang.String">
            <column name="plancontent" length="500" />
        </property>
        <property name="planStatue" type="java.lang.Integer">
            <column name="planstatue" />
        </property>
        
    </class>
</hibernate-mapping>

 

猜你喜欢

转载自toreking.iteye.com/blog/1663803