首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Hibernate课程 初探一对多映射3-2 单向多对一的配置
】的更多相关文章
Hibernate课程 初探一对多映射3-4 双向多对一的测试
1 单向多对一和单向多对一的区别 比如部门和员工,一个部门下有很多员工,如果只查一个员工属于哪个部门,就用单向的,如果还要查一个部门下的所有员工,就用双向的. 2 双向多对一的配置 除了单向xml和双向xml都配置关联关系之外,java类也要都写一对多和多对一的关联 xml一方: <set name="students" table="student" inverse="true"> <key column="gid&…
Hibernate课程 初探一对多映射3-2 单向多对一的配置
1 多方实体类中加入,一方类和getset方法 //多方定义一个一方的引用 private Grade grade; public Grade getGrade() { return grade; } public void setGrade(Grade grade) { this.grade = grade; } 2 多方xml中引入:一对多映射关系 <many-to-one name="grade" class="com.ddwei.entity.Grade&quo…
Hibernate课程 初探一对多映射3-1 单向多对一简介
多对一的关系和关系数据库中的外键参照关系最匹配,即在己方的表中的一个外键参照另一个表中的主键! 通过在多方持有一方的引用来实现,需要在多的一方使用<many-to-one>来配置…
Hibernate课程 初探一对多映射3-3 单向多对一的测试
public static void testManyToOne(){ Student stu1 = new Student("小明","男"); Student stu2 = new Student("小红","女"); Grade grad1 = new Grade("java三班","java三班"); stu1.setGrade(grad1); stu2.setGrade(gra…
hibernate课程 初探一对多映射2-5 创建持久化类并配置映射文件
学习点: 1 一对多映射,一方 Grade.hbm.xml的写法: <hibernate-mapping> <class name="com.ddwei.entity.Grade" table="grade"> <id name="gid" type="java.lang.Integer"> <column name="GID" /> <generato…
Hibernate课程 初探一对多映射5-1 课程总结
1 单方一对多 xml one-to-many 配置 实体类 一方添加保存多方集合 2 单方多对一 xml many-to-one 配置 实体类 多方添加保存一方引用 3 常用属性 inverse:设置哪一方维护关联关系 cascade:设置级联关系…
Hibernate课程 初探一对多映射4-2 cascade级联属性
1 级联属性:hibernate一方和多方设置关联关系,当一方发生相应修改时(见下表),多方不用进行显式修改,也能进行相应修改. 级联在一方和多方xml中都可以设置 属性值 含义和作用 all 对所有操作进行级联操作 save-update 执行保存和更新操作时进行级联操作 delete 执行删除操作时进行级联操作 none 对所有操作不进行级联操作 2 demo xml <set name="students" table="student" inver…
Hibernate课程 初探一对多映射2-7 测试-修改和删除学生信息
package com.ddwei.entity; import java.util.Set; import org.hibernate.Session; import org.hibernate.Transaction; import com.ddwei.util.HibernateUtil; /** * 建立关联关系后, * 可以方便的从一个导航对象,关联到另一个导航对象! * 注意关联方向:一对多 * @author weijingli * */ public class Test { p…
hibernate课程 初探一对多映射2-6 测试-添加和查询学生信息
package com.ddwei.entity; import java.util.Set; import org.hibernate.Session; import org.hibernate.Transaction; import com.ddwei.util.HibernateUtil; /** * 建立关联关系后, * 可以方便的从一个导航对象,关联到另一个导航对象! * 注意关联方向:一对多 * @author weijingli * */ public class Test { p…
hibernate课程 初探一对多映射2-3 创建hibernateUtil工具类
本节主要内容:创建hibernateUtil工具类:demo demo: HibernateUtil.java package hibernate_001; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hiberna…
hibernate课程 初探一对多映射2-2 Myeclipse进行hibernate基本配置
本节主要内容: 1 myeclipse 中hibernate jar包,mysql连接jar包 导入 2 hibernate.cfg.xml的配置 1 一对一映射已经配置过 2 hibernate.cfg.xml的配置如下: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Conf…
hibernate课程 初探一对多映射2-1 一对多映射简介
1 在数据库中用主外键的形式实现一对多的映射关系 2 hibernate 在一方设置集合set,表示多方…
hibernate课程 初探一对多映射1-1 课程简介
hibernate 常见映射类型 one-to-many many-to-one one-to-one many-to-many…
Hibernate课程 初探一对多映射5-3 Eclipse根据表反向生成实体类
1 配置 项目右击==>properties==>project facets==>convert to faceted form...复选框选中java 和 jpa==>further configuration available ==>eclipse link 2.5x==>user librarys==>下载eclipselink2.5.2jar包并选中==>add connection ==>选中上一节自己建的mysql数据库==>选中…
Hibernate课程 初探一对多映射5-2 Eclipse添加数据库连接
1 Eclipse新建java项目 2 Windows ==> show view == >other ==>Data source Explorer 3 左侧视图 database Connections ==>右键==>new==>mysql ==>next==>填好数据库相关连接,并引用mysql jar包即可 4 测试通过后,右键表 editdata 可以查看…
Hibernate课程 初探一对多映射4-3 测试--信息查询
建立双向一对多关系,既可以由一方查询多方信息,同样可以由多方查询一方信息 demo: //查询学生所在班级 public static void showGidByStudent(){ Session sess1 = HibernateUtil.getSession(); Student stu1 = (Student) sess1.get(Student.class, 1); System.out.println("学生姓名为:"+stu1.getSname()); Grade gr…
Hibernate课程 初探一对多映射4-1 inverse属性
1 <Set>节点的inverse属性默认由one方来维护(默认值为false).将inverse属性修改为true则由多方来维护.…
hibernate课程 初探一对多映射2-4 Mysql创建数据库表
1 本节内容: mysql 数据库建表(班级表和学生表) Create table grade(gid varchar(32) primary key, gname varchar(32) not null, gdescribe varchar(300) ); Create table Student( sid varchar(32) primary key, sname varchar(80) not null, gid varchar(32), sex char(2) ); alter ta…
Hibernate课程 初探多对多映射1-1 多对多应用场景
1 用途: 员工和项目之间的多对多关系 2 实现: 员工表和项目表之外,建立员工和项目关联表来实现: 3 hibernate应用: set元素和many-to-many来实现…
Hibernate课程 初探多对多映射2-4 测试
package com.ddwei.test; import org.hibernate.Session; import org.hibernate.Transaction; import com.ddwei.entity.Employee2; import com.ddwei.entity.Project; import com.ddwei.util.HibernateUtil; /** * * @author weijingli * */ public class Test { /** *…
Hibernate课程 初探多对多映射3-1 课程总结
如何通过添加中间表实现多对多? 1 在双方实体中添加一个保存对方的集合. 2 在双方映射文件中 使用<set>和<many-to-many>元素进行关联关系配置(注意此处)…
Hibernate课程 初探多对多映射2-3 配置映射文件
本节主要内容:配置映射文件 Project.hbm.xml <hibernate-mapping> <class name="com.ddwei.entity.Project" table="Project"> <id name="proid" column="proid" type="java.lang.Integer"> <!--主键生成方式为手动 -->…
Hibernate课程 初探多对多映射2-2 创建持久化类和映射文件
生成实体类 和 cfg.xml配置 cfg.xml 参照一对多映射 实体类如下: Project 类 package com.ddwei.entity; import java.util.HashSet; import java.util.Set; /** * 创建项目实体类 * * add by author ddwei * * 2018/07/30 * */ public class Project { private int proid; private String proname; p…
Hibernate课程 初探多对多映射2-1 创建数据库表
--创建表 -- 创建项目表 create table project( proid int(10) not null comment '项目Id', proname varchar(30) comment '项目名称' ); -- 创建员工表 create table employee2( empid int(10) comment '员工id', empname varchar(20) comment '员工姓名' ); -- 创建项目员工关联 中间表 create table…
hibernate课程 初探单表映射2-3 session简介
hibernate流程: 1 配置对象Configurateion 读取 hibernate.cfg.xml 2 会话工厂SessionFactory 读取 user.hbm.xml(创建销毁相当耗费资源,一个数据库只创建一个) 3 会话Session 相当于 jdbc的connect 4 添加事务 Session与jdbc 多对一的关系.jdbc可以在不同时刻为session 提供连接.通过session操作数据库 Session的增删改查的方法 save() update() insert(…
hibernate课程 初探单表映射3-5 hibernate增删改查
本节简介: 1 增删改查写法 2 查询load和查询get方法的区别 3 demo 1 增删改查写法 增加 session.save() 修改 session.update() 删除 session.delete() 查询 session.get()/session.load() 2 查询load和查询get方法的区别 a get 不考虑缓存情况下,get会在调用之后立即向数据库发送sql语句,返回持久化对象.load 是调用后返回代理对象,该代理对象只保存实体对象id,只有使用对象非主键属性才…
hibernate课程 初探单表映射3-4 组件属性
本节内容: 1 简介组件属性 2 demo 1 简介组件属性: <component name = "address" class = "Address"> <property name = "postcard" column = "POSTCARD"></property> <property name = "address" column = "AD…
hibernate课程 初探单表映射3-3 对象类型
本节简介: 1 简介对象类型(重点是音视频blob类型) 2 demo(对图片的写入数据库与读取) 1 简介对象类型 映射类型 java类型 标准sql类型 mysql类型 oracle类型 binary byte[] varchar blob blob text(大文本类型) java.lang.String clob text clob clob(大文本类型) java.sql.Clob clob text clob blob(二进制数据类型) java.sql.Blob blo…
hibernate课程 初探单表映射3-2 基本类型
本节内容:(介绍基本类型) 1 数据类型 简介 2 时间类型 简介 3 时间类型 demo 1 hibernate类型 java类型 integer/int java.lang.Integer/int string java.lang.String 2 hibernate类型 java类型 date java.util.Date或java.sql.Date 年月日 time java.util.Date或java.sql.Time 时分秒 timestamp java.ut…
hibernate课程 初探单表映射3-1 单一主键
本节简介: 1 单一主键的两种赋值方式:手动赋值(assigned)和自动赋值(native) 2 mysql和oracle赋值的不同形式 3 demo 2 native由底层数据库生成标识符,如果是MySQL,就是increment,如果是oracle就是sequence. 注意:mysql的increment生成主键的形式不能用于集群. 3 demo: hibernate.cft.xml <?xml version="1.0" encoding="UTF-8&quo…