20170318_系统管理_设计实体_映射实体1
设计实体
|-第一步:设计实体
|-第一段:有几个实体,三个实体
|-第二段:实体之间的关系
|-第三段:添加实体属性(主键id---->关联关系---->一般的属性---->特殊属性)
|-第二步:生成JavaBean
|-手写
|-工具生成
映射实体
|-第一步:写映射文件
|-第一段:写注释
|-第二段:拷贝模板
|-第三段:填空
|-第二步:通过工具自动生成表
=====================================================
实现一组功能的步骤:
===================================================================
设计实体/表:
第一步:设计实体
第一段:有几个实体,三个实体
第二段:实体之间的关系
第三段:添加实体属性
步骤:主键id---->关联关系---->一般的属性---->特殊属性
1、岗位管理添加属性:
2、用户管理添加属性:
步骤:主键id---->关联关系---->一般的属性---->特殊属性
3、部门管理添加属性:
步骤:主键id---->关联关系---->一般的属性---->特殊属性
第二步:生成javavBean:
方式一:手写
方式二:工具生成
===========================================================
映射实体:
第一步:写映射文件
1 多对一 2 <many-to-one name=“” class=“” column=“”/> 3 4 5 一对多(Set) 6 <set name=""> 7 <key column=""></key> 8 <one-to-many class=""/> 9 </set> 10 11 12 多对多(Set) 13 <set name="" table=""> 14 <key column=""></key> 15 <many-to-many class="" column=""/> 16 </set>
第一段:写注释
第二段:拷贝模板
第三段:填空
多对多等一下在弄。
Role.hbm.xml:
1 <?xml version="1.0"?> 2 <!DOCTYPE hibernate-mapping PUBLIC 3 "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 4 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 5 6 <hibernate-mapping package="cn.itcast.oa.domain"> 7 8 <class name="Role" table="itcast_role"> 9 <id name="id"> 10 <generator class="native"/> 11 </id> 12 <property name="name"/> 13 <property name="description"/> 14 15 <!-- users属性,本类与User的多对多 --> 16 <set name="users" table="itcast_user_role"> 17 <key column="roleId"></key> 18 <many-to-many class="User" column="userId"></many-to-many> 19 </set> 20 21 </class> 22 23 </hibernate-mapping>
User.hbm.xml
1 <?xml version="1.0"?> 2 <!DOCTYPE hibernate-mapping PUBLIC 3 "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 4 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 5 6 <hibernate-mapping package="cn.itcast.oa.domain"> 7 8 <class name="User" table="itcast_user"> 9 <id name="id"> 10 <generator class="native"/> 11 </id> 12 <property name="loginName"/> 13 <property name="password"/> 14 <property name="name"/> 15 <property name="gender" /> 16 <property name="phoneNumber"/> 17 <property name="email"/> 18 <property name="description"/> 19 20 <!-- department属性,本类与Department的多对一 --> 21 <many-to-one name="department" class="Department" column="departmentId"></many-to-one> 22 23 <!-- roles属性,本类与Role的多对多 --> 24 <set name="roles" table="itcast_user_role"> 25 <key column="userId"></key> 26 <many-to-many class="Role" column="roleId"></many-to-many> 27 </set> 28 29 </class> 30 31 </hibernate-mapping>
Department.hbm.xml
1 <?xml version="1.0"?> 2 <!DOCTYPE hibernate-mapping PUBLIC 3 "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 4 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 5 6 <hibernate-mapping package="cn.itcast.oa.domain"> 7 8 <class name="Department" table="itcast_department"> 9 <id name="id"> 10 <generator class="native" /> 11 </id> 12 <property name="name" /> 13 <property name="description" /> 14 15 <!-- users属性,本类与User的一对多 --> 16 <set name="users"> 17 <key column="departmentId"></key> 18 <one-to-many class="User" /> 19 </set> 20 21 <!-- parent属性,本类与Department(上级)的多对一 --> 22 <many-to-one name="parent" class="Department" column="parentId"></many-to-one> 23 24 <!-- children属性,本类与Department(下级)的一对多 --> 25 <set name="children"> 26 <key column="parentId"></key> 27 <one-to-many class="Department" /> 28 </set> 29 30 </class> 31 32 </hibernate-mapping>
第二步:通过工具自动生成表
多对多:
实体映射 END!!!