mybatis的拓展-----mybatis的内置参数和OGNL表达式的使用

news/2025/2/21 3:54:41/文章来源:https://www.cnblogs.com/123-hh/p/18567564

mybatis的两个内置参数

1,_parameter 代表整个参数

单个参数,_parameter 就是这个参数
多个参数 会被封装成一个map,_parameter就是代表这个map

例如接口中有一个方法  public List<Employee> getEmpsTestInnerParameter(Employee employee);

_parameter就代表employee对象
2,_databaseId 如果配置了databaseIdProvider标签, _databaseId就是代表当前数据库的别名,mysql或者oracle等等。
在mybatis配置文件中配置

OGNL在mybatis中的使用

参照:一文全解:OGNL表达式以及Mybatis中的OGNL表达式-CSDN博客

案例:

   在使用Mybatis时,由于该sql存在两个实体类对象,我只对一个实体类添加了属性,没对另一个实体类添加属性,如果案例之前的写法

 则会运行错误,报实体类没有该属性。

  通过使用OGNL表达式和mybatis的内置参数_parameter 进行了修改完善

  

 上述中先将_parameter 转变为JSON字符串,再判断是否含有对应字段名称,有就进行后续判断,没有就直接跳过该if标签。

这样就先判断了该实体类是否有字段,再判断该字段是否为空。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/840861.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你的活动策划效率低?试试这个方法!

营销人的日常痛点:活动策划究竟有多难?任务繁杂,难以理清优先级一场成功的活动通常包含数十甚至上百个任务。活动前期要筹备物料、协调场地,中期要执行推广方案,后期还要跟进数据复盘。任务堆积如山,往往让人无从下手。协作难度大,信息容易丢失活动策划需要跨部门、跨团…

打开电脑后一直弹出“交互式检测服务”窗口

既然也mysql有关,服务中找到上图exe所对应的服务,右键=》属性 原来选中了“允许服务与桌面交互”,取消上图的勾,重启MYSQL82服务。在停止服务时,就发现弹出的交互式服务检测提示窗自己消失了。至此第一张图的消息就不再弹出。

41、自动化作业、Resource Manager(JOB、并行度)

自动化作业 job 主要体现下面两点: 1、做什么 program 1、可以是现写的一个PL/SQL语句块 2、提前编译好的存储过程 3、操作系统层面的shell脚本,或者程序 2、什么时候做 schedule 周期性的执行(每周三,晚上十点) 自动化作业就是job,有两个东西组成: 1、program 2、sched…

40、安全_2(审计、钱包加密)

查看建立的函数: select * from dba_objects f where f.OBJECT_NAME like FUN%;策略1和策略2同时建立之后,查询结果: SQL> select name from car; NAME -------------------- toyota volvo hondaSQL> select name,cost from car; NAME COST --------------------…

如何开通向量检索服务?

本文主要介绍如何开通向量检索服务。本文主要介绍如何开通向量检索服务。 **前提条件 **完成注册阿里云账号,如未注册,请单击注册阿里云账号注册阿里云账号进行注册。完成个人或企业实名认证,如未认证,请单击实名认证账号认证进行认证。操作步骤登录阿里云官网阿里云官网。…

vxe-table 实现打印出货单、自定义单据打印

vxe-table 内置非常强大 H5 打印,只需要传入 html 代码和 css 样式,就可以实现任何复杂的打印 官网:https://vxeui.com<template><div><vxe-button @click="printEvent">点击打印</vxe-button><div style="border: 1px solid #40…

39、安全_1(权限、用户profile文件、密码文件、VPD对行级访问的控制)

oracle 用户和安全 基本概念 1、认证:说的是认证通过之后,才能登陆进入数据库 2、授权:是登陆进入数据库以后,能做什么 3、审计:进入数据库以后,授权以后,做事情被记录做事过程 这就是传说中的:3A(authentication认证、authorization授权、audit审计) 建立一个用户,…

向量检索服务产品规格

本文介绍向量检索服务DashVector的产品规格,以帮助用户选择贴合自身业务场景的实例规格。本文介绍向量检索服务DashVector的产品规格,以帮助用户选择贴合自身业务场景的实例规格。 实例类型 向量检索服务DashVector当前支持三种四种实例(Cluster)类型,以支持不同的业务场景…

记录一个Linux代码移植到Windows平台下的Visual Studio 2022的代码编码格式的问题

一、前言 工作上与公司的前辈对接,他给了我一份在linux下面编写的代码压缩包,按照道理来说使用条件宏编译不同的windows和linux的API即可实现代码的通用。但是我在Visual Studio 2022下面编译的时候缺发生了非常奇怪的事情。随便编译就出现很多报错,但实际上这些报错并不是真…

CPU使用率和负载区别及分析

当我们使用top命令查看系统的资源使用情况时会看到 load average,如下图所示。它表示系统在1、5、15分钟的平均工作负载。那么什么是负载(load)呢?它和CPU的利用率又有什么关系呢?load average:系统平均负载是CPU的Load,它所包含的信息不是CPU的使用率状况,而是在一段时间…

高并发下单例模式的线程安全探索

单例模式是常用的软件设计模式之一,同时也是设计模式中最简单的形式之一,在单例模式中对象只有一个实例存在。 单例模式的实现方式有两种,分别是懒汉式和饿汉式。1、饿汉式 饿汉式在类加载时已经创建好实例对象,在程序调用时直接返回该单例对象即可,即在编码时就已经指…

分组向量检索

本文介绍如何在向量检索时将结果按照字段值进行分组返回。本文介绍如何在向量检索时将结果按照字段值进行分组返回。 背景介绍 在向量检索的实际应用中,有些场景需要将向量检索的结果分组返回。例如:在RAG中,一篇文档往往需要拆分为多个段落,每个段落生成一个向量存入DashV…