一,引言在学习一门新技术之前,还是需要下先看一下官网的https://mybatis.org/mybatis-3/zh/dynamic-sql.html 在学spring的时候可能大家已经学了mybatis了,也许大家也学完了他的mybatis-plus,也或许在springboot整合mybatis中也写了大量的动态sql语句查询,但是今天还是总结了一下他的使用,以为这是成为java程序员的一门
这里列出最常见的5种用途: 1、数据交换 用XML在应用程序和公司之间作数据交换已不是什么秘密了,毫无疑问应被列为第一位。 那么为什么XML在这个领域里的地位这么重要呢?原因就是XML使用元素和属性来描述数 据。在数据传送过程中,XML始终保留了诸如父/子关系这样的数据结构。几个应用程序 可以共享和解析同一个XML文件,不必使用传统
1 配置result
result的目的就是告诉Struts2框架,在执行完一个Action后,需要系统做什么?是把一个视图资源呈现给用户还是执行另外一个Action,result配置起到了一个“路标”的作用。
result按照作用域范围可以分为局部result和全局result。
&nbs
转载
2024-03-26 20:25:09
32阅读
接下来看看MappedStatement这个对象是怎么来的,一个mappedStatement对象代表的就是mapperxml内的一个select/insert/update/delete标签,也就是一条sql语句1 private String resource;//mapper配置文件名,如:UserMapper.xml
2 private Configuration configu
转载
2024-10-08 09:47:50
41阅读
resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题。比如:列名和对象属性名不一致时可以使用resultMap来配置;还有查询的对象中包含其他的对象等。 Xml配置文件:MyBatis-Configuration.xml 1 <?xml
转载
2024-05-02 16:37:27
132阅读
动态SQL介绍动态SQL指的是根据不同的查询条件,生成不同的sql语句 官网描述: MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你 就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意 去掉列表最后一个列名的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。 虽然在以前使用动态 SQL 并非一件易
mybatis映射文件属性详解和动态SQL笔记<SELECT>id = "" 唯一标识
parameterType = "" 表示传入SQL语句的参数类的全限定名或者别名,它是一个可选属性,因为
mybatis可以根据TypeHandler 推断出具体传入的参数.默认值为unset(依赖于驱动)
resultType = "" 从SQL中返回的参数类型的全限定名或者别名.如果
转载
2024-04-18 14:52:04
627阅读
XmlAttribute类用于描述XML 数据中的元素属性。因为属性的编辑和设置一般使用XmlElement类提供的方法来实现,所以,XmlAttribute类设计的主要目的是为了描述元素属性这样一种XML数据结构。XMLAttribute类和其他的XmlNode派生类相比,具有一些特殊的地方:该类虽然也是继承于XmlNode ,但是由于该类从属于XmlElement类,不是单独存在的
转载
2024-03-21 09:53:50
65阅读
首先动态sql简单来讲就是可以根据传入参数的不同来动态的生成sql语句,拼接where语句,这样你就不用写很多个sql语句了,并且它里面有一些特性也可以帮助你避免sql语句的拼接错误,主要分为4个:if,chooose,trim,foreachIF:对参数进行判断,拼接不同的sql语句,看一个例子<select id="selectByIf" parameterType="person" r
本节内容MyBatis动态SQL的基本使用MyBatis动态SQL的基本元素:if、set、where、bind、foreach等元素MyBatis的动态SQL的条件判断方法前言如果使用JDBC或者类似于Hibernate的其他框架,很多时候要根据需要去拼装SQL,这是一个麻烦的事情。因为某些查询需要许多条件,比如查询角色,可以根据角色名称或者备注等信息查询,当不输入名称时使用名称作条件就不合适了
转载
2024-10-16 13:12:39
70阅读
一、添加1.遇到能添加但是在在数据库中并没有显示出来:是因为在以下代码中,会开启事物,要想在数据库中添加到数据,要手动提交事务,SqlSession sqlSession = sqlSessionFactory.openSession();手动提交事务:sqlSession.commit();还有一种方法就是可以设置自动提交事务,就是将语句写成这个样子,就不需要手动提交事务了。(关闭事务)SqlS
一、XML/JSON的作用 为了解决不同语言之间信息交流方式不同的问题,引入了XML和JSON两种语言,这两种语言的作用是使不同语言能够通过XML或JSON文件进行数据的交流,达到解决语言之间交流困难的问题。 二、XML 1、XML简介 xml的特点有两点,其一,它具有平台无关系,是一门独立的标记语言;其二,它具有自我描述性。 xml文件是保存xml数据的一种方式,且xml数据不仅可以以文件形式存
转载
2024-04-06 10:39:19
124阅读
# Java 给 XML 文件动态赋值
在 Java 开发过程中,处理 XML 文件是一项常见的任务。XML 文件不仅可以存储数据,还可以定义数据结构,方便数据交互。本文将探讨如何使用 Java 动态给 XML 文件赋值。
## 1. XML 文件结构
首先,让我们来看一个简单的 XML 文件结构。假设我们有一个名为 `data.xml` 的文件,格式如下:
```xml
原创
2024-08-14 03:12:56
246阅读
1.selectKey标签:插入数据时候返回主键
<!-- 插入学生 自动主键-->
<insert id="createStudentAutoKey" parameterType="liming.student.manager.data.model.StudentEntity" keyProperty="studentId">
<selectKey
动态SQLmybatis 的动态sql语句是基于OGNL表达式的。可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类:1. if 语句 (简单的条件判断)2. choose (when,otherwize) ,相当于java 语言中的 switch ,与 jstl 中的choose 很类似.3. trim (对包含的内容加上 prefix,或者 su
动态SQL:mybatis提供的各种标签方法实现动态拼接sql。 <!--if标签:符合条件会自动把if中的内容拼接到sql之后-->这样写不太好,如果name为空 ,就会报错。一般要配合where使用<!--where标签:会自动生成和删除 where 还能删除where后第1个and --><select id
转载
2024-10-18 12:20:45
43阅读
水晶报表动态控制图片显示 Changing pictures dynamically in Crystal Report 项目需要在报表中根据条件动态显示不同的签名查找了好多解决方案,一个比较简单的方案:本人试验是可以用的,但是正如作者所讲,基于CR XI 独立版本实现。CR9和CR10都无此功能。就是说,用独立CR XI 完整版本做,可以实现效果,但是一旦在VS2005 项目中使用,这个效果是出
转载
2024-10-28 19:13:49
59阅读
动态1.动态:使用SqlSession.getMapper(dao接口.class)获取这个dao接口的对象2.传入参数:从java代码中把数据传入到mapper文件的sql语句中1)parameterType:写在mapper文件中的一个属性,表示dao接口中方法的参数的数据类型 例如StudentDao接口 public Student selectStudentById(Intege
转载
2024-08-11 10:10:47
211阅读
XML1,概念 Extensible Markup Language 可扩展标记语言 标记语言:不用多说了嘛,<>这种就叫标记 可扩展:标签都是自定义的! 功能 存储数据: 1,配置文件 2,在网络中传输 xml 和 html 的区别 1,xml 标签都是自定义的,html 标签是预定义的 2,xml 的语法严格,html 语法
输入(parameterType)与输出(resultType、resultMap)映射的区别 输出映射: resultType: 主要针对于从数据库中提取相应的数据出来 使用resultType时我们应该注意:sql查询的列名要和resultType指定pojo的属性名相同,指定相同属性方可映射成功,如果sql查询的列名要和resultType