Mybatis基础核心类说明
1: org.apache.ibatis.mapping.ParameterMapping
为Mybatis参数的抽象表示,包括Java类型与数据库类型以及类型处理器属性名字等等!!

例如:

其中id真是参数类型为Long,在mybatis中统一使用Object表示!
2:org.apache.ibatis.mapping.BoundSql 是XML中配置的某一个方法的SQL的抽象表示,而MappedStatement则是整个Mapper.xml的抽象表示!!!!

该类封装了SQL以及参数信息,其中 parameterObject成员是一个Map数据结构,key/value为参数名字,例如:

MappedStatement是整个Mapper.xml的抽象表示:

3:org.apache.ibatis.executor.statement.StatementHandler 负责设置SQL中的参数的类 ,在具体子类中完成操作!

其中org.apache.ibatis.executor.statement.PreparedStatementHandler#parameterize方法负责参数的填充,StatementHandler持有一个ParameterHandler成员,底层实现使用的是org.apache.ibatis.executor.parameter.ParameterHandler工具类完成到Statement参数的填充!!!!
4:org.apache.ibatis.executor.parameter.ParameterHandler 一个参数Handler设置所有的参数到PreparedStatement中!!!源码说明:
/**
* A parameter handler sets the parameters of the {@code PreparedStatement}
*
* @author Clinton Begin
*/
public interface ParameterHandler { Object getParameterObject(); void setParameters(PreparedStatement ps)
throws SQLException; }
Mybatis基础核心类说明的更多相关文章
- mybatis基础系列(一)——mybatis入门
好久不发博客了,写博文的一个好处是能让心静下来,整理下之前学习过的一些知识一起分享,大神路过~ mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射. ...
- MyBatis基础入门《五》核心配置文件
MyBatis基础入门<五>核心配置文件 描述: 在前面的章节中,简单的学习使用了一下mybatis,对于配置文件没有过多详细说明. 这里先描述项目中的一个核心配置文件:mybatis-c ...
- Mybatis基础:Mybatis映射配置文件,Mybatis核心配置文件,Mybatis传统方式开发
一.Mybatis快速入门 1.1 框架介绍 框架是一款半成品软件,我们可以基于这个半成品软件继续开发,来完成我们个性化的需求! 框架:大工具,我们利用工具,可以快速开发项目 (mybatis也是一个 ...
- Mybatis核心类生命周期和管理
Mybatis核心类生命周期和管理 原文链接:https://blog.csdn.net/qq1134550437/article/details/51960480 1.SqlSessionFacto ...
- MyBatis基础-1
1.Mybatis简介 2.Mybatis环境搭建 3.Mybatis的开发方式 一.什么框架 框架其本质是半成品程序,提供相关规范,并且提供大量可重用的组件. 目的:让开发者开发出结构比较良好,可读 ...
- Mybatis基础及入门案例
这几天正在对SSM框架的知识进行一个回顾加深,有很多东西学的囫囵吞枣,所以利用一些时间进一步的学习.首先大概了解一下mybatis的使用,再通过一个案例来学习它. 什么是MyBatis Mybatis ...
- Mybatis基础进阶学习2
Mybatis基础进阶学习2 1.测试基本结构 2.三个POJO package com.pojo; import java.io.Serializable; import java.util.Dat ...
- Mybatis基础入门学习
Mybatis基础入门学习 mybatis架构分析 搭建测试mybatis架构 )下载并导入mybatis3.2.7.jar(架构),mysql-connector-java-5.1.7-bin.ja ...
- MyBatis 基础搭建及架构概述
目录 MyBatis 是什么? MyBatis 项目构建 MyBatis 整体架构 接口层 数据处理层 基础支持层 MyBatis 是什么? MyBatis是第一个支持自定义SQL.存储过程和高级映射 ...
随机推荐
- JavaAndroid项目结构
使用Java的Android项目的结构 src: 源码文件夹 gen: 自动生成的源码文件夹 assets: 资产目录 bin: 编译生成的文件目录(apk等) libs: jar包 res: 资源文 ...
- bootstrap网站后台从设计到开发
前言 毕业后在一家小公司找的工作是做前端,小公司必须要身兼多职,会多门技术,所以为了工作需要自学ps,做过微信运营,后来为了做erp管理系统,又开始学习c# ,之后公司有新项目要用wpf ,我又开始学 ...
- CSS使用position:sticky 实现粘性布局
简介 前面写了一篇文章讲解了position常用的几个属性:<CSS 属性之 position讲解>一般都知道下面几个常用的: { position: static; position: ...
- JS之表单提交时编码类型enctype详解
简介 form的enctype属性为编码方式,常用有两种:application/x-www-form-urlencoded和multipart/form-data,默认为application/x- ...
- 【20190219】CSS-知识点整理:float、em、浏览器的渲染过程
一.float与absolute 昨天看到一篇博客总结CSS中的一些关键知识点,里面对float元素进行了比较深入的解析,才发现我之前对float的理解不到位.float实际上最初的目的是为了实现图片 ...
- leetcode-53.最大子序和
leetcode-53.最大子序和 题意 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,- ...
- 安卓程序中手机后退键与标题栏后退键是不同的,前者回出发onBackPressed()函数,后者需要重重写temclick函数
安卓程序中手机后退键与标题栏后退键是不同的,前者回出发onBackPressed()函数,后者需要重重写temclick函数
- 洗礼灵魂,修炼python(67)--爬虫篇—cookielib之爬取需要账户登录验证的网站
学完前面的教程,相信你已经能爬取大部分的网站信息了,但是当你爬的网站多了,你应该会发现一个新问题,有的网站需要登录账户才能看到更多的信息对吧?那么这种网站怎么爬取呢?这些登录数据就是今天要说的——co ...
- ajax调用WebService实现数据库操作
首先说下测试环境和思路: 前端收集数据转换成json格式传输到后端,处理并存入数据库 1.数据库操作: [WebMethod] public string InsertPoint(string dat ...
- win10监听剪切板变化
一.第一步导入api #region [DllImport("user32.dll")] public static extern bool AddClipboardFormatL ...