Hibernate的七种映射关系之基本映射
来源:互联网 发布:数控编程员招聘 编辑:程序博客网 时间:2024/06/15 10:19
说到关系,在这个世界无处不在,我们必须以某个关系的节点存在在这个世界网中。比如父子关系,师生关系,上下属关系甚至是危险关系。数据也是一样的,它的存在必为某其他节点做准备。
Hibernate有七种映射关联,方向分为单向或双向,主要根据需求分析多和一的关联,分别为:
1、单向1-12、单向N-13、单向1-N4、单向N-N5、双向1-N6、双向N-N7、双向1-1 在学习这七种映射关联之前,首先要了解基本映射的一些知识和必备条件。 一、必备实体类,以*.java命名。 如Student.java文件
1 public class Student { 2 private int id; 3 private String name; 4 public int getId() { 5 return id; 6 } 7 public void setId(int id) { 8 this.id = id; 9 }10 public String getName() {11 return name;12 }13 public void setName(String name) {14 this.name = name;15 }16 17 }
二、必备配置文件,以*.hbm.xml命名。 了解hibernate.cfg.xml配置文件: 1、文档开头引入dtd文件,用来约束xml的命名为其制定了一套标准(提供了一套标签,好吧我承认这种理解有点土)。
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
2、配置数据库以及映射类的地址映射信息。
1 <hibernate-configuration> 2 <session-factory> 3 <!-- 数据库配置 --> 4 <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> 5 <property name="hibernate.connection.url">jdbc:mysql://localhost:3307/hibernate_one2many</property> 6 <property name="hibernate.connection.username">root</property> 7 <property name="hibernate.connection.password">123456</property> 8 <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 9 <property name="hibernate.show_sql">true</property>10 11 <!-- 映射类的地址映射信息 -->12 <mapping resource="com/juyahong/hibernate/Student.hbm.xml"/>13 <mapping resource="com/juyahong/hibernate/Classes.hbm.xml"/>14 </session-factory>15 </hibernate-configuration>
三、映射文件,以*.hbm.xml命名。 如:Student.hbm.xml 通常我们的实体类可以映射成表,采用<class>标签映射。比如:
1 <hibernate-mapping package="com.juyahong.hibernate">2 <class name="Student" table="t_student">3 <id name="id">4 <generator class="native"/>5 </id>6 <property name="name" length="30"/>7 </class>8 </hibernate-mapping>
如上面代码可知,实体类中的普通属性即不包括集合、自定义类和数组的属性,映射成了表字段,采用<property>标签映射。需要注意的是实体类的命名或属性不能和数据库的关键字重复,否则会出错,之前做高校平台-基础系统的时候就出现了这个问题。可以通过table="**" 或 column="**"来重命名。 有了以上的必备条件后,之后的博客就开始以学生管理系统为例分析七种的映射关联。
0 0
- Hibernate的七种映射关系之基本映射
- Hibernate的七种映射关系之基本映射
- Hibernate的七种映射关系之七种关联映射(一)
- Hibernate的七种映射关系之七种关联映射(二)
- Hibernate的七种映射关系之七种关联映射
- Hibernate的七种映射关系之七种关联映射
- Hibernate的七种映射关系之七种关联映射(二)
- Hibernate 的七种映射关系
- hibernate七种对应关系映射
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- Hibernate映射解析——七种映射关系
- error: Program received signal SIGSEGV, Segmentation fault. (Codeblocks, C++)
- 历届试题 打印十字图
- android基础知识---浅谈 MVP
- CF#398(Div.2) 解题报告
- java interrupt理解
- Hibernate的七种映射关系之基本映射
- learnR_datastructure_2
- Hibernate的七种映射关系之七种关联映射(二)
- 如何理解RESTful的幂等性
- Android-使用GET、POST、AsyncHttpClient向服务器提交数据
- 430的复位及复位电路
- poj1149(*网络流建模方法,paper题)
- 读书笔记 effective c++ Item 8 不要让异常(exceptions)离开析构函数
- [Android新手学习笔记25]-RecylerView简单应用