hibernate:多对多关系查询

这篇博客探讨了数据库中的多对多关系及其处理方式,即通过创建桥接表转换为一对多关系。在Hibernate中,多对多关系可以直接映射,并强调了必须定义一个主控方。通过具体的书本表、书本类型表和关联表的案例,介绍了如何在Hibernate中配置多对多关系,包括实体类和hbm.xml文件的设置,以及DAO方法和测试类的实现。
摘要由CSDN通过智能技术生成

数据库的多对多:

      数据库中不能直接映射多对多
      处理:创建一个桥接表(中间表),将一个多对多关系转换成两个一对多

      注:数据库多表联接查询,永远就是二个表的联接查询

hibernate的多对多:

       hibernate可以直接映射多对多关联关系(看作两个一对多) 

多对多关系注意事项:一定要定义一个主控方     

 

案例:

书本表:t_hibernate_book

书本类型表:t_hibernate_category

关联表:t_hibernate_book_category

表结构:

book表:

 

category表:

关联表:

 

1.书本:Book.java

package com.crud.five.entity;

import java.util.HashSet;
import java.util.Set;

public class Book {
	private Integer bookId;
	private String bookName;
	private Float price;
	
	private Set<Category> categorys=new HashSet<Category>();
	
	private Integer initCagetorys=0;
	
	public Integer getInitCagetorys() {
		return initCagetorys;
	}
	public void setInitCagetorys(Integer initCagetorys) {
		this.initCagetorys = initCagetorys;
	}
	public Set<Category> getCategorys() {
		return categorys;
	}
	public void setCategorys(Set<Category> categorys) {
		this.categorys = categor
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值