SSH(二)Hibernate

---------****

Hibernate自动模式

使用插件帮助我们生成映射文件和实体类

第一步:配置DB视图

SSH进阶(二)Hibernate---------****

配置账户,需要关联MySql驱动类:

SSH进阶(二)Hibernate---------****

完成:

SSH进阶(二)Hibernate---------****

 链接成功如下图:

SSH进阶(二)Hibernate---------****

第二步:创建项目,导入依赖

Hibernate,MySQL,log4j

SSH进阶(二)Hibernate---------****

第三步:给项目添加Hibernate插件支持

添加hibernate的支持:首先选中项目,鼠标右键项目(Maven项目已添加Hibernate和DB依赖),选择Add Frameworks Support 

SSH进阶(二)Hibernate---------****

选中Hibernate

SSH进阶(二)Hibernate---------****

SSH进阶(二)Hibernate---------****

 

第四步:生成对应表的实体类和映射文件

跳出下一个视图:选择相应的数据库,及需要生成的实体

SSH进阶(二)Hibernate---------****

SSH进阶(二)Hibernate---------****

生成内容:主要看映射文件

 

<?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>

 

 <class name="com.qf.pojo.UserinfoEntity"

table="userinfo" schema="qf">

   <id name="uid">

      <column name="uid" sql-type="bigint(20)"/>

   </id>

  <property name="userName">

   <column name="user_name" sql-type="varchar(200)" length="200" not-null="true"/>

  </property>

   <property name="userPass">

     <column name="user_pass" sql-type="varchar(50)" length="50" not-null="true"/>

  </property>

 </class>

</hibernate-mapping>

 

 

生成的内容,缺少主键策略。

添加主键策略:(Eclipse插件可以自动生成)

SSH进阶(二)Hibernate---------****

映射类的属性和表的字段,属性和字段名不一致的映射,此时会自动的去处理;

添加hibernate支持后,以后可能还需要多次生成时,

项目显示持久层视图。再次调出生成视图:

SSH进阶(二)Hibernate---------****

这样会再次弹出如下窗口:

SSH进阶(二)Hibernate---------****

第五步:创建Hibernate的核心配置文件

<!DOCTYPE hibernate-configuration PUBLIC

 "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

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

<hibernate-configuration>

    <session-factory>

        <!-- 数据源 -->

   <property name="hibernate.connection.driver_class">

com.mysql.jdbc.Driver

</property>

   <property name="hibernate.connection.url">j

dbc:mysql://localhost:3306/qf?characterEncoding=utf-8

</property>

   <property name="hibernate.connection.username">root</property>

    <property name="hibernate.connection.password">root2</property>

  <!-- 扩展属性 必须指向数据库的方言-->

  <property name="hibernate.dialect">org.hibernate.dialect.MySQL55Dialect

</property>

     <!-- 自动创建表:一般不需要 -->

    <!-- <property name="hbm2ddl.auto">update</property>-->

     <!-- 显示SQL -->

  <property name="hibernate.show_sql">true</property>

  <property name="hibernate.format_sql">true</property>

  <!-- 注册实体 注意这个地方实在生成之后才注册=de-->

        <mapping resource="com/ww/pojo/UserinfoEntity.hbm.xml"></mapping>

 

    </session-factory>

</hibernate-configuration>

 

 

以上就是逆向工厂生成;生成的实体如下图:

SSH进阶(二)Hibernate---------****

然后就可以编写相应的Daoq去测试了。

这就是逆向生成,

下篇会为大家讲解关联关系以及HQL语句,敬请期待!

版权声明:本文为博主原创文章,未经博主允许不得转载

相关文章: