MyBatis通过注解实现映射中的嵌套语句和嵌套结果
案例描述:查看订单或购物车订单信息的同时查询出该订单中所有书籍的信息。
一、嵌套语句
@Select("select* from shopcart where shopcartid = #{id}")
@Results({ @Result(id = true, column = "shopcartid", property = "shopCartId"),
@Result(column = "bookid", property = "bookId"), @Result(column = "amount", property = "amount"),
@Result(column = "price", property = "price"), @Result(column = "status", property = "status"),
@Result(column = "bookid", property = "book", one = @One(select = "com.yh.mybatis.mapper.BookMapper.findBookInfoById")) })
ShopCart findShopCartInfoById(int id);
二、嵌套结果
// 查找刚刚添加的订单信息
@Select("select orderinfo.*,book.bookname,book.imgurl,book.introduction,book.packstyle,book.sellerid,book.price bookprice from orderinfo,book where orderinfo.bookid = book.bookid and orderid like '${orderId}%'")
@Results({ @Result(id = true, column = "identityid", property = "identityId"),
@Result(column = "orderid", property = "orderId"), @Result(column = "buyerid", property = "buyerId"),
@Result(column = "bookid", property = "bookId"), @Result(column = "amount", property = "amount"),
@Result(column = "orderdate", property = "orderDate"), @Result(column = "express", property = "express"),
@Result(column = "payment", property = "payment"), @Result(column = "addressid", property = "addressId"),
@Result(column = "price", property = "price"), @Result(column = "message", property = "message"),
@Result(column = "status", property = "status"),
// 自定义类成员变量的属性
@Result(column = "bookname", property = "book.bookName"),
@Result(column = "sellerid", property = "book.sellerId"),
@Result(column = "bookprice", property = "book.price"),
@Result(column = "imgurl", property = "book.imgUrl"),
@Result(column = "introduction", property = "book.introduction"),
@Result(column = "packstyle", property = "book.packStyle") })
List<Order> findLastOrder(@Param("orderId") String orderId);
MyBatis通过注解实现映射中的嵌套语句和嵌套结果的更多相关文章
- SQL Server中INSERT EXEC语句不能嵌套使用(转载)
问: I have three stored procedures Sp1, Sp2 and Sp3.The first one (Sp1) will execute the second one ( ...
- mybatis 使用注解简化xml映射文件
目录 关于mybatis注解 初次简单使用mybatis注解示例 利用注解实现指定映射 使用注解实现表间关联(1对1) 关于mybatis注解 注解在java中特别常见,mybatis中也支持注解. ...
- 小峰mybatis(4)mybatis使用注解配置sql映射器
主流开发还是使用xml来配置:使用注解配置比较快,但是不支持所有功能:有些功能还是得用配置文件: 一.基本映射语句: @Inert @Update @Delete @Select 二.结果集映射语句 ...
- 【Mybatis架构】Mapper映射文件中的#{}与${}
前言 还记得当初从北京回来的时候,跟着倪文杰师姐做JavaITOO的一卡通模块,我亲姐贾梦洁带着我一块做,期间,我遇到了一个特别奇葩的问题,就死我要实现Mybatis的模糊查询,根据当时亲姐教给我方法 ...
- 小峰mybatis(5)mybatis使用注解配置sql映射器--动态sql
一.使用注解配置映射器 动态sql: 用的并不是很多,了解下: Student.java 实体bean: package com.cy.model; public class Student{ pri ...
- MyBatis 源码分析 - 映射文件解析过程
1.简介 在上一篇文章中,我详细分析了 MyBatis 配置文件的解析过程.由于上一篇文章的篇幅比较大,加之映射文件解析过程也比较复杂的原因.所以我将映射文件解析过程的分析内容从上一篇文章中抽取出来, ...
- mybatis学习(一)-------XML 映射配置文件详解
XML 映射配置文件 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配 ...
- Spring+Mybatis基于注解整合Redis
基于这段时间折腾redis遇到了各种问题,想着整理一下.本文主要介绍基于Spring+Mybatis以注解的形式整合Redis.废话少说,进入正题. 首先准备Redis,我下的是Windows版,下载 ...
- 【转载】Mybatis多参数查询映射
转载地址:http://www.07net01.com/zhishi/402787.html 最近在做一个Mybatis的项目,由于是接触不久,虽然看了一下资料,但在实际开发中还是暴 露了很多问题,其 ...
随机推荐
- 经过4次优化我把python代码耗时减少95%
背景交代 团队做大学英语四六级考试相关服务.业务中有一个care服务,购买了care服务考试不过可以全额退款,不过有一个前提是要完成care服务的任务,比如坚持背单词N天,完成指定的试卷. 在这个背景 ...
- SVN设置忽略文件列表以及丢失了预定增加的文件解决方法
设置svn忽略列表 Linux下svn命令行配置 1. 修改版本库的相关属性 2. svn 客户端的配置 Windows下 Tortoise SVN 设置 1. Tortoise SVN 上修改版本库 ...
- typing使用
官方文档: typing 注: typing是python3.5(PEP484)开始的 可用于: 类型检查器.集成开发环境.静态检查器等, 但是不强制使用 使用方式 两种使用方式 别名: 先定义=, ...
- [spojQTREE5]Query on a tree V
合理的正解大概是动态点分治,这里给出其实现 1 #include<bits/stdc++.h> 2 using namespace std; 3 #define N 100005 4 st ...
- javascript-初级-day08
return <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" ...
- selenium定位元素方法汇总
#打开网页前三步 from selenium import webdriver driver=webidriver.Chrome() driver.get("https://www.baid ...
- P6072 『MdOI R1』Path
考虑我们有这样操作. 我们只要维护两点在子树内和两点在子树外的异或和即可. 前者可以类似于线段树合并的trie树合并. 后者有两种做法: 一种是把dfn序翻倍:然后子树补变成了一个区间最大异或问题,可 ...
- Codeforces 526G - Spiders Evil Plan(长链剖分+直径+找性质)
Codeforces 题目传送门 & 洛谷题目传送门 %%%%% 这题也太神了吧 storz 57072 %%%%% 首先容易注意到我们选择的这 \(y\) 条路径的端点一定是叶子节点,否则我 ...
- 洛谷 P7620 - CF1431J Zero-XOR Array(状压 dp)
洛谷题面传送门 首先显然题目等价于求有多少个长度 \(n-1\) 的序列 \(b\) 满足 \(a_i\le b_i\le a_{i+1}\),满足 \(b_1\oplus b_2\oplus\cdo ...
- Codeforces 453E - Little Pony and Lord Tirek(二维线段树+ODT)
Codeforces 题目传送门 & 洛谷题目传送门 一道难度 *3100 的 DS,而且被我自己搞出来了! 不过我终究还是技不如人,因为这是一个 \(n\log^2n\) + 大常数的辣鸡做 ...