mybatis foreach insert

MyBatis简介和入门

......
MyBatis 简介

mybatis 中 if-test 判断详解

1、字符串判断,两种写法都可以 (1)将双引号和单引号的位置互换 <if test='testString != null and testString == "A"'> </if> (2)加上.toString() <if test="testString != null and testStri ......
mybatis if-test test if

mybatis xml 中 大于、小于、等于 写法

在 *.xml 中使用常规的 < > = <= >= 会与xml的语法存在冲突 使用xml 原生转义的方式进行转义 | 字符名称 | 字符串符号 | 转义字符 | |: :|: :|: | | 大于号 | > | &gt; | | 小于号 | < | &lt; | | 大于等于号 | >= | &g ......
写法 mybatis xml

常用mybatis语法

接口名与SQL格式 List<String> selectByService(@Param("serviceCode") stringCode,@Param("serviceName") stringName); <select id="selectByService" resultType="ja ......
语法 常用 mybatis

SQL Inject漏洞手工测试:基于报错的信息获取(select/delete/update/insert)

技巧思路:在MYSQL中使用一些指定的函数来制造报错,从而从报错信息中获取设定的信息。select/insert/update/delete都可以使用报错来获取信息。背景条件:后台没有屏蔽数据库报错信息,在语法发生错误时会输出在前端。 重点:基于报错的信息获取 三个常用的用来报错的函数updatex ......
漏洞 手工 Inject select delete

mybatis-plus只查询部分字段的两种方法

方法1:只需要查询出name和phone两个字段:使用queryWrapper的select()方法指定要查询的字段 public List selectByWrapper1(){ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrap ......
字段 mybatis-plus mybatis 部分 方法

MyBatis-Plus 常用记录

1. or查询 简单or查询,拼装条件用or()方法连接 // mybatis-plus List<Student> list = studentService.list( new QueryWrapper<Student>() .eq("sex", "男") .or() .eq("name", " ......
MyBatis-Plus 常用 MyBatis Plus

springboot整合mybatis踩过的坑

版本问题 版本太高 (springboot-2.7.11 + mybatis-3.0.1) 解决办法:mybatis更换为2.3.0 java.lang.IllegalArgumentException: Unable to instantiate org.mybatis.spring.boot.a ......
springboot mybatis

第6章 初识MyBatis

学习目标 ● 了解MyBatis的基础知识 ● 熟悉MyBatis的工作原理 ● 掌握MyBatis入门程序的编写 6.1 什么是MyBatis MyBatis(前身是iBatis)是一个支持普通SQL查询、存储过程以及高级映射的持久层框架,它消除了几乎所有的JDBC代码和参数的手动设置以及对结果集 ......
MyBatis

第7章 MyBatis的核心配置

学习目标 ● 了解MyBatis核心对象的作用 ● 熟悉MyBatis配置文件中各个元素的作用 ● 掌握MyBatis映射文件中常用元素的使用 7.1 MyBatis的核心对象 SqlSessionFactory 它是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建SqlSession Sq ......
核心 MyBatis

第9章 MyBatis的关联映射

学习目标 ● 了解数据表之间以及对象之间的三种关联关系 ● 熟悉关联关系中的嵌套查询和嵌套结果 ● 掌握一对一、一对多和多对多关联映射的使用 9.1 关联关系概述 · 一对一:在任意一方引入对方主键作为外键。 · 一对多:在“多”的一方,添加“一”的一方的主键作为外键。 · 多对多:产生中间关系表, ......
MyBatis

第10章 MyBatis与Spring的整合

学习目标 ● 掌握传统DAO方式的开发整合 ● 掌握Mapper接口方式的开发整合 10.1 整合环境搭建 10.1.1 准备所需JAR包 1.Spring框架所需的JAR包 Spring框架所需要准备的JAR包共10个,其中包括:4个核心模块JAR, AOP开发使用的JAR, JDBC和事务的JA ......
MyBatis Spring

springboot mybatis 动态调用oracle存储过程,通过存储过程名称,就能动态调用存储过程、java动态调用oracle存储过程

由于在开发业务时,可能同时调用的存储过程不知道参数,但是参数从界面、或已经存储在数据库的获取,所以就不希望手动写存储过程的参数,通过简化的调用。 能不能写个动态的业务,只输入存储过程名称,自动获取存储过程参数,并且参数的数据从前台传递过来,这个就通用了。只写一个通用方法,就可以调用所有的存储过程。只 ......
过程 动态 oracle springboot 名称

Mybatis框架原理概览

好久没有写博客了。最近工作中封装了一个类似ORM框架的东西。大概的原理就是将Excel数据初始化到本地sqlite数据库后,通过json配置文件,对数据库的数据做增删改查等操作。 其实大概的思考了下,就是半ORM框架mybatis的逻辑,只是我们自己封装的简陋蛮多。想想有现成的轮子没用,反而是自己写 ......
概览 框架 原理 Mybatis

Java面试基础知识-MyBatis-Plus生成ID策略

MyBatisPlus默认实现5种主键生成策略,分别是: AUTO,配合数据库设置自增主键,可以实现主键的自动增长,类型为number; INPUT,由用户输入; NONE,不设置,等同于INPUT; ASSIGN_ID,只有当用户未输入时,采用雪花算法生成一个适用于分布式环境的全局唯一主键,类型可 ......

Java开发笔记之List删除元素foreach删除元素

错误的循环删除 ArrayList<Integer> list = new ArrayList<>(); for (int i = 0; i < 5; i++) { list.add(i); } for (Integer integer : list) { System.out.println(in ......
元素 foreach 笔记 Java List

MyBatis学习

MyBatis 1、简介 1.1什么是MyBatis GitHub:https://github.com/mybatis/mybatis-3/releases 中文文档:https://mybatis.org/mybatis-3/zh/index.html 1.2、持久化 数据持久化,持久化就是将程 ......
MyBatis

Mybatis中的<![CDATA[]]>标签在判断日期场景中的使用

背景 在使用mybatis 时我们sql是写在xml 映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义。 如大于号>会被转义为&gt;转义后的可读性不是很直观,如果想让其看起来更加直观可读性更强的话,则需要使用<![CDATA[ ]]>来圈起来不被转义的符号以此来解决 ......
场景 日期 Mybatis 标签 CDATA

springboot使用mybatis应用clickhouse

一、clickhouse,说白了还是数据库,不一样的是clickhouse是列式存储,和传统的MySQL行式存储不同的地方在于,查询和所储。 1)查询,行式和列式的区别,图形说明 说明:理解上来说,行式对于一条数据的完整性索引会更快。而列式对于统计和查询指定数据会更加块。 2)数据存储方式 从数据上 ......
springboot clickhouse mybatis

mybatis-plus没有将XML配置文件放到classpath路径下的解决办法

1.需求:我将mapper接口对应的xml文件没有放到resources路径下,而是放到了如下图中,导致无法识别 1.1 默认可以放mapper对应配置文件的位置 1.2 本人实际放置的mapper对应的xml文件位置 2.解决: 2.1 第一步:在pom文件中添加如下配置 <build> <res ......
mybatis-plus 路径 classpath mybatis 办法

MyBatis运行找不到xml资源文件

MyBatis运行找不到xml资源文件 运行报错: 报错原因:程序运行后,没有将 src/main/java 目录下的资源文件(xml、properties等等)导出到 target工作目录下,所以程序找不到 java目录: 运行后的target目录: 可以看到并没有 MonsterMapper.x ......
MyBatis 文件 资源 xml

spring boot配置mybatis出现Invalid bound statement (not found)报错的解决办法

背景: spring-boot-starter-parent 2.5.6 mybatis-spring-boot-starter 2.2.0我遇到这个报错,是因为使用idea创建xml文件是没有后缀,举个例子,比如你创建的是AccountMapper.xml,结果使用idea创建的是AccountM ......
statement Invalid mybatis 办法 spring

Mybatis-plus批量操作

前言 使用Mybatis-plus可以很方便的实现批量新增和批量修改,不仅比自己写foreach遍历方便很多,而且性能也更加优秀。但是Mybatis-plus官方提供的批量修改和批量新增都是根据id来修改的,有时候我们需求其他字段,所以就需要我们自己修改一下。 一、批量修改 在Mybatis-plu ......
Mybatis-plus Mybatis plus

Mysql Mybatis 批量修改数据

Mysql Mybatis 批量修改数据 Mapper Integer updateListPO(List<ProjectQuotationItemPO> upateList); 方法一: <update id="updateListPO"> <foreach collection="list" s ......
Mybatis 数据 Mysql

mybatis总结

mybatis总结 https://blog.csdn.net/qq_47540091/article/details/123446973 Mybatis in 逗号分隔字符串 <update id="softDel" parameterType="String">SELECT * FROM stu ......
mybatis

mybatis-plus使用聚合函数报错---------net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "**" "**"

错误日志: Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "with" "WITH" at line 62, column 20. Was expecting one of: "&" ......

mybatisplus中update用法 update多个字段 mybatis-plus指定实体类字段不查询 mybatis-plus中selectList用法

@Override public boolean updateRiskverificationFlag(String acptracctName) { BmsBillRiskverification bbr = new BmsBillRiskverification(); bbr.setWarnfl ......
字段 mybatis-plus mybatis update plus

SpringBoot+Mybatis-Plus+EasyExcel

首先建立一个springboot项目,导入依赖 <!-- MyBatisPlus依赖 --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <versio ......

MyBatis删除

删除单个 Integer deleteOne(@Param("id") String id); <delete id="deleteOne"> delete from tb_user where id=#{id}; </delete> @Test public void deleteOne(){ D ......
MyBatis

如果你项目使用了MyBatis-Plus你一定要用它

还是先举个例子,魂斗罗小游戏应该很多90后都玩过,那个时代没有Iphone,没有各种电子产品(小学初中时代),这种小游戏应该就是很多90后的青春,反正那个时候只要放假就白天黑夜得玩。它就是那种2个好基友边玩边捡各种装备的游戏,越玩的远捡的装备越好,玩得越高兴。而MyBatis-Plus就类似Myba ......
MyBatis-Plus MyBatis 项目 Plus