Mybatis中Mapper.xml文件sql中动态获取---->#{}和${}区别

1.  #{}

    获取参数的内容,支持索引获取,param1获取指定位置参数,并且sql使用?占位符

2.  ${}

    纯字符串拼接,不使用?,默认找${内容}内容的get/set方法,如果写数字,就是一个数字

原文地址:https://www.cnblogs.com/yikuan-919/p/9691702.html

时间: 2024-11-07 09:45:04

Mybatis中Mapper.xml文件sql中动态获取---->#{}和${}区别的相关文章

【MyBatis】Mapper XML 文件

Mapper XML文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码.MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更好. SQL 映射文件有很少的几个顶级元素(按照它们应该被定义的顺序): cache – 给定命名空间的缓存配置. cache-ref – 其他命名空间缓存配置的引用. resultMap – 是最复杂

【转】Mybatis 3.1中 Mapper XML 文件 的学习详解

MyBatis 真正的力量是在映射语句中.这里是奇迹发生的地方.对于所有的力量,SQL 映射的 XML 文件是相当的简单.当然如果你将它们和对等功能的 JDBC 代码来比较,你会发现映射文件节省了大约 95%的代码量.MyBatis 的构建就是聚焦于 SQL 的,使其远离于普通的方式. SQL 映射文件有很少的几个顶级元素(按照它们应该被定义的顺序): cache – 配置给定命名空间的缓存. cache-ref – 从其他命名空间引用缓存配置. resultMap – 最复杂,也是最有力量的元

Mybatis 3.1中 Mapper XML 文件 的学习详解

转:http://blog.csdn.net/zhll3377/article/details/8203440 MyBatis 真正的力量是在映射语句中.这里是奇迹发生的地方.对于所有的力量,SQL 映射的 XML 文件是相当的简单.当然如果你将它们和对等功能的 JDBC 代码来比较,你会发现映射文件节省了大约 95%的代码量.MyBatis 的构建就是聚焦于 SQL 的,使其远离于普通的方式. SQL 映射文件有很少的几个顶级元素(按照它们应该被定义的顺序): cache – 配置给定命名空间

Mybatis学习--Mapper XML文件

学习笔记,选自Mybatis官方中文文档:http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#insert_update_and_delete MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码.MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更好. SQL 映射文件有很少的几

MyBatis之Mapper XML 文件详解(四)-JDBC 类型和嵌套查询

支持的 JDBC 类型为了未来的参考,MyBatis 通过包含的 jdbcType 枚举型,支持下面的 JDBC 类型. BITFLOATCHARTIMESTAMPOTHERUNDEFINEDTINYINTREALVARCHARBINARYBLOBNVARCHARSMALLINTDOUBLELONGVARCHARVARBINARYCLOBNCHARINTEGERNUMERICDATELONGVARBINARYBOOLEANNCLOBBIGINTDECIMALTIMENULLCURSORARRAY

MyBatis之Mapper XML 文件详解(二)-sql和入参

sql 这个元素可以被用来定义可重用的 SQL 代码段,可以包含在其他语句中.它可以被静态地(在加载参数) 参数化. 不同的属性值通过包含的实例变化. 比如: <sql id="userColumns"> ${alias}.id,${alias}.username,${alias}.password </sql> 这个 SQL 片段可以被包含在其他语句中,例如: <select id="selectUsers" resultType=&

MyBatis之Mapper XML 文件详解(三)-Result Maps

resultMap 元素是 MyBatis 中最重要最强大的元素.它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情. 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码. ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系. 你已经看到简单映射语句的示例了,但没有明确的 resultMap.比如: <select id="sel

MyBatis之Mapper XML 文件详解(五)-自动映射查询结果

正如你在前面一节看到的,在简单的场景下,MyBatis可以替你自动映射查询结果. 如果遇到复杂的场景,你需要构建一个result map. 但是在本节你将看到,你也可以混合使用这两种策略. 让我们到深一点的层面上看看自动映射是怎样工作的. 当自动映射查询结果时,MyBatis会获取sql返回的列名并在java类中查找相同名字的属性(忽略大小写). 这意味着如果Mybatis发现了ID列和id属性,Mybatis会将ID的值赋给id. 通常数据库列使用大写单词命名,单词间用下划线分隔:而java属

Mybatis的mapper.xml文件也是要加文件头的

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- 写Sql语句 --><mapper namespace="com.itheima