Mybatis多表联查

这篇博客详细介绍了如何使用Mybatis进行多表联查,包括一对一、一对多和多对多关系的配置与实现。通过创建实体类、数据库表、接口和映射文件,然后进行数据插入和测试,展示了Mybatis在处理关联关系时的具体步骤。
摘要由CSDN通过智能技术生成

pom.xml

<!-- 统一版本管理 -->
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.junit>4.12</project.junit>
		<project.mybatis>3.4.6</project.mybatis>
		<project.jdbc.connector>8.0.11</project.jdbc.connector>
	</properties>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>${project.junit}</scope>
		</dependency>
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>${project.mybatis}</version>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>${project.jdbc.connector}</version>
		</dependency>
	</dependencies>

mybatis_config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
    
<configuration>   
          
<!-- 为java类型起别名,在配置文件中就可以使用别名 目的:书写简单方便-->
 <typeAliases>
	<typeAlias type="com.xalo.model.Student" alias="Student"/>
</typeAliases>
	 
<!--调用log4j 打印sql语句 --> 
<settings>
     <setting name="logImpl" value="STDOUT_LOGGING"/>     
</settings> 
      
<!-- 数据库环境配置,一个环境对应一个数据库,将来和spring整合之后,就不在配置-->  
<environments default="development">
  <environment id="development">
    <!-- 事物类型配置	  JDBC:使用JDBC的事物管理 -->
  	<transactionManager type="JDBC"></transactionManager>
  	<!-- 数据源的配置 POOLED:使用mybatis默认的数据源-->
  	<dataSource type="POOLED">
  	    <property name="driver" value="com.mysql.cj.jdbc.Driver"/>          <!-- useSSL=false: 是否使用加密 -->
  	    <property name="url" value="jdbc:mysql://localhost:3306/mb?useUnicode=true&amp;characterEncoding=UTF8&amp;useSSL=false"/>
  	   <property name="username" value="root"/>
  	   <property name="password" value="12345678"/>
  	</dataSource>
   </environment>
</environments>
  		
  		
  		<!-- 映射文件的导入 -->
  		<mappers>
  		  <!-- 1.接口必须和映射文件必须在同一个包下
  		       2.接口名和映射文件名必须一致
  		   -->
  			    <package name="com/xalo/dao"/>   			  
  		</mappers>
  		 		
  </configuration>

  (1)一对多

创建一张老师表(一方)和一张学生表(多方).

<1>老师实体类:

         1.定义变量: 

         2.和学生关联的属性: List<Student> student;

         3.提供无参有参的构造方法,setter和getter方法,重写toString()方法

<2>学生实体类:

         1.定义变量: 

         2.和老师关联的属性: private Teacher teacher;

         3.提供无参有参的构造方法,setter和getter方法,重写toString()方法

<3>在Mysql中建库建表,以及插入数据

(1)建库:

create database if not exists mb character s
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值