Atitis mybatis的功能api扩展总结

目录

1. MybatisAdvUtil 1

1.1. 根据session得到所有配置 1

1.2. Configuration1.getMappedStatement(sttID) 1

1.3. 根据语句id得到sql 1

1.4. 得到解析后的sql 2

1.5. getXmlPath 2

  1. MybatisAdvUtil
  1. 根据session得到所有配置

SqlSession conn = MybatisUtil.getConn();

// Configuration Configuration1 = checkSqlValds(conn);

Configuration Configuration1=conn.getConfiguration();

  1. Configuration1.getMappedStatement(sttID)
  2. 根据语句id得到sql

private static String getSqlBoundDefine(SqlSession conn, String sttID)  {

Configuration Configuration1 = conn.getConfiguration();

// Configuration1.addLoadedResource(resource);

// Configuration1.

MappedStatement MappedStaement1 = Configuration1.getMappedStatement(sttID);

DynamicSqlSource DynamicSqlSource1 = (DynamicSqlSource) MappedStaement1.getSqlSource();

// DynamicSqlSource1.

String fldname = "rootSqlNode";

SqlNode SqlNode1 = (SqlNode) getFldValRE(DynamicSqlSource1, "rootSqlNode");

MixedSqlNode MixedSqlNode1 = (MixedSqlNode) SqlNode1;

List li = (List) getFldValRE(MixedSqlNode1, "contents");

// StaticTextSqlNode <String,TextSqlNode> <TextSqlNode>

Object r = li.stream().reduce("", (s, o) -> {

String string = "";

try {

string = getFldVal(o, "text").toString();

} catch (NoSuchFieldException | IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return s + string;

});

return r.toString();

}

  1. 得到解析后的sql

private static String getSqlBound(SqlSession conn,String sttID) {

Configuration Configuration1=conn.getConfiguration();

MappedStatement MappedStaement1= Configuration1.getMappedStatement(sttID);

String sqlBound = MappedStaement1.getSqlSource().getBoundSql(null).getSql();

return sqlBound;

}

  1. getXmlPath

// mapper/ veDao.xml

private static String getXmlPath(SqlSession conn, String sttID) throws Exception {

Configuration Configuration1 = conn.getConfiguration();

// Configuration1.addLoadedResource(resource);

// Configuration1.

MappedStatement MappedStaement1 = Configuration1.getMappedStatement(sttID);

// DynamicSqlSource1

return MappedStaement1.getResource();

// String sqlBound = MappedStaement1.getSqlSource().getBoundSql(null).getSql();

// return sqlBound;

}

Atitis mybatis的功能api扩展总结 目录 1. MybatisAdvUtil 1 1.1. 根据session得到所有配置 1 1.2. Configuration1.getMappe相关推荐

  1. 【Groovy】Gradle 构建工具 ( 自动下载并配置构建环境 | 提供 API 扩展与开发工具集成 | 内置 Maven 和 Ivy 依赖管理 | 使用 Groovy 编写构建脚本 )

    文章目录 一.Gradle 自动下载并配置构建环境 二.Gradle 提供 API 扩展与开发工具集成 三.Gradle 内置 Maven 和 Ivy 依赖管理 四.Gradle 使用 Groovy ...

  2. MyBatis的功能架构是怎样的

    我们把Mybatis的功能架构分为三层: API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库.接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理. 数据处理层: ...

  3. Ubuntu无损扩展分区(目录)容量的方法

    用了一段时间Ubuntu,碰到了UBuntu磁盘空间不足的问题, 最初我只给Ubuntu分配了30个G的空间, 昨天试用了一下VirtualBox安装了一个xp虚拟系统,用以解决Ubuntu下的pay ...

  4. YUIDoc example代码高亮错误、生成API文档目录不按源文件注释顺序

    1.如果发现yuidoc命令用不了,那就重装nodejs吧 昨天不知道是清扫电脑的原因,yuidoc命令用不了(命令不存在),也没有找到好的解决方法,怒重装YUIDoc也不行.最后想了想,怒重装了no ...

  5. Atitit.java swing打印功能 api  attilax总结

    Atitit.java swing打印功能 api  attilax总结 1. 打印方式有三种:2 1.1. 一是不经过任何修改,直接调用javascript中的window.print()打印.2 ...

  6. vue 多个api请求_Vue+Django REST framework实战3.RESTful API和VUE目录结构

    内容提要: RESTful API和VUE基础概念. <Python前后端分离开发Vue+Django REST framework实战>作者bobby --学习来源 第四章 RESTfu ...

  7. css中国社科,2019-2020中国CSSCI 来源期刊及扩展版目录正式公布

    原标题:2019-2020中国CSSCI 来源期刊及扩展版目录正式公布 2019年3月25日,南京大学中国人文社会科学综合评价研究院发布最新版(2019-2020版)CSSCI 扩展版来源期刊目录,即 ...

  8. Mybatis分页功能 pagehelper插件

    Mybatis分页功能 pagehelper插件 创建数据数据 use ssm; create table student (id int auto_incrementprimary key,name ...

  9. ipadpro分屏怎么操作_Amazing~你知道iPad Pro +优越者多功能TypeC扩展坞=?

    自2010年第一代iPad发布之后,iPad一度成为了现代年轻人的爱宠,最新苹果新款iPad Pro的出世,更是又引起了一波热潮,可正在使用iPad Pro的你,是不是总避免不了以下情况呢? 面对老板 ...

  10. Mybatis完整功能实现CRUD

    Mybatis完整功能实现CRUD Mybatis完整功能实现CRUD 对于刚使用的新手提供了完整的增删改查并附带测试,首先我们介绍下ORM 对象关系映射的框架 (3)JDBC有优缺点 (4)JPA的 ...

最新文章

  1. VS2010 CUDA 5.5 VA_X Win7 64位配置
  2. 2.1/2.2 系统目录结构, 2.3 ls命令, 2.4 文件类型, 2.5 alias命令
  3. [转]让你提升命令行效率的 Bash 快捷键
  4. java实现qq抢红包_微信抢红包到底是怎么抢到的?
  5. python经典案例-Python3经典100例(①)
  6. CoderForces Round54 (A~E)
  7. php判断 二维数组中 是否 存在某个一维数组
  8. Luogu P3731 [HAOI2017]新型城市化
  9. 搭建内网yum服务器
  10. 一起来玩树莓派--解决复制文件时出现error opening file... permission denied问题
  11. poj3278 CatchThatCow bfs
  12. bzoj 3930: [CQOI2015]选数
  13. java实现中缀表达式转后缀表达式
  14. Docker 镜像基本命令操作
  15. 【USACO 2.2】Subset Sums (DP)
  16. centos mysql 二进制_CentOS 7.6 安装二进制Mysql
  17. 对外汉语偏误语料库_BCC语料库
  18. 马化腾每天刷 Leetcode?代码你打算写到几岁?看看这些业务大佬程序人生【云图智联】
  19. 二级计算机vf里的sql,计算机二级考试vf常用sql语句
  20. 交换游戏 (记忆化搜索 状压)

热门文章

  1. C++调用其他语言(C#、java、python)
  2. 大华摄像头解码 ffmpeg_解码矩阵配套液晶拼接屏系统解决安防行业设备过于复杂的问题...
  3. python pandas series想赋予新的值_Python-pandas根据其他列的值创建新列/逐行应用多列的功能...
  4. arcgis水文分析_值得收藏!用DEM做水文分析前,你还需要储备的知识
  5. 接口接收数据_你知道RS232与RS485接口的区别吗?
  6. 2. MFC编程——各函数作用
  7. 5. COM编程——IDispatch介绍
  8. Linux Socket 网络编程
  9. Kotlin详尽语法分析(未完待续)
  10. ERROR 2002 (HY000): mysql