Mybatis入门(四)------联表查询】的更多相关文章

1.嵌套结果查询(部分代码如下) sql语句接上: 注释:class表(c别名),student表teacher(t别名)teacher_id为class表的字段t_id为teacher表的字段,因为两者有主键关联的原因,c_id为class表的字段.根据c_id查询._classes为classes实体类(既是表class对应的实体类)前两个property为class表对应实体类的属性,column对应class表的字段,association中teacher为classes实体类属性,co…
Mybatis联表查询 一.1对1查询 1.数据库建表 假设一个老师带一个学生 CREATE TABLE teacher( t_id INT PRIMARY KEY, t_name VARCHAR(30) ); CREATE TABLE student( s_id INT PRIMARY KEY, s_name VARCHAR(30), t_id INT , FOREIGN KEY(t_id) REFERENCES teacher(t_id) ); INSERT INTO teacher VAL…
MyBatis逆向工程主要用于单表操作,那么需要进行联表操作时,往往需要我们自己去写sql语句. 写sql语句之前,我们先修改一下实体类 Course.java: public class Course { private Integer id; private String cNum; private String cName; private String remark; private Integer status; public Integer getId() { return id;…
一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关系. 1 CREATE TABLE teacher( 2 t_id INT PRIMARY KEY AUTO_INCREMENT, 3 t_name VARCHAR(20) 4 ); 5 CREATE TABLE class( 6 c_id INT PRIMARY KEY AUTO_INCREMEN…
之前的数据库操作都是基于一张表进行操作的,若一次查询涉及到多张表,那该如何进行操作呢? 首先明确联表查询的几个关系,大体可以分为一对一和一对多这两种情况,接下来对这两种情况进行分析: 一.建立表.添加数据.反向生成 建立teacher.classes.student三张表,并添加几条数据用于后续操作 进行反向生成 二.一对一联表查询 一个班级(classes)只有一个班主任(teacher),即一对一的关系 仅仅通过反向生成的文件是无法进行联表查询的,因此需要进行一些改动 package com…
今天碰到了一个问题,就是要在三张表里面各取一部分数据然后组成一个list传到前台页面显示.但是并不想在后台做太多判断,(因为涉及到for循环)会拉慢运行速度.正好用的框架是spring+springMVC+mybatis,所以很自然的就想到了联表查询. 一开始认为mybatis编写语句很简单,但是在编写的时候遇到了一些细节问题,所以发文记录一下. 先说一下背景: 框架:spring+springMVC+mybatis 表结构: 1.主表 2.从表 从表的uid对应主表的id,并将主表的id设为主…
需求:查询结果要求显示用户名,用户密码,用户的角色 因为在用户表中只有用户角色码值,没有对应的名称,角色名称是在码表smbms_role表中,这时我们就需要联表查询了. 这里需要在User实体类中添加一个字段-userRoleName并添加相应的set  get方法 User.java UserMapper.xml 注意:据库中的字段名和User实体类中的属性名是不一致的,必须进行手动映射 <!--查询结果要显示用户名,密码和用户的角色名称,需要连表查询 注意:roleName最后运行程序的结果…
今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的? 是.如果hibernate认为jpa的注解够用,就直接用.否则会弄一个自己的出来作为补充. 2)jpa和hibernate都提供了Entity,我们应该用哪个,还是说可以两个一起用? Hibernate的Entity是继承了jpa的,所以如果觉得jpa的不够用,直接使用hibernate的即可 正文: 一.Hibernate VS Mybatis 1.简介 Hibernate对数据库结构提供了较为完整的封装,Hi…
今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的? 是.如果hibernate认为jpa的注解够用,就直接用.否则会弄一个自己的出来作为补充. 2)jpa和hibernate都提供了Entity,我们应该用哪个,还是说可以两个一起用? Hibernate的Entity是继承了jpa的,所以如果觉得jpa的不够用,直接使用hibernate的即可 正文: 一.Hibernate VS Mybatis 1.简介 Hibernate对数据库结构提供了较为完整的封装,Hi…
FreeSql在查询数据下足了功能,链式查询语法.多表查询.表达式函数支持得非常到位. IFreeSql fsql = new FreeSql.FreeSqlBuilder() .UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max poo…