`
strongant
  • 浏览: 66514 次
  • 性别: Icon_minigender_1
  • 来自: IT
社区版块
存档分类
最新评论

mybatis传递参数$和#区别

 
阅读更多

 

<select id="selectByMap" parameterType="java.util.Map" resultMap="BaseResultMap">

  select * from com_position where 1=1

  <if test="posiZw!=null and posiZw!=''">

AND posi_zw = #{posiZw,jdbcType=INTEGER}

</if>

<if test="posiShip!=null and posiShip!=''">

AND posi_ship = ${posiShip}

</if>

order by pub_time desc

  </select>

 

$:直接参数替换,如果传入参数是字符串,那么解释后的sql不会自动加上单引号‘’

#:sql中参数会被解释成?,然后参数替换,会自动加上‘’,并且会过滤掉一些敏感词,所以建议在写sql都使用这个符号#来参数替换

分享到:
评论

相关推荐

    总结--Mybatis传递参数的几种方法

    Mybatis 传递参数的几种方法 Mybatis 中传递参数有多种方法,以下是其中的四种: 1. 传递单个参数 在 Mybatis 中,传递单个参数非常简单。可以直接将参数写在方法中,参数类型可以是 String,也可以是基本类型,...

    MyBatis中使用$和#所遇到的问题及解决办法

    在MyBatis中,$和#的使用是动态SQL的关键部分,它们决定了参数如何被处理和插入到SQL语句中。下面将详细解释这两种符号的差异以及如何解决使用过程中遇到的问题。 1. #{}与${}的区别: - #{ }:这是MyBatis中的预...

    Mybatis下动态sql中##和$$的区别讲解

    在Mybatis中,使用Mapper.xml文件来定义SQL语句,并使用#{ }和${ }来传递参数。那么,在Mybatis下动态sql中##和$$的区别是什么呢? 首先,我们需要了解的是,Mybatis在对SQL语句进行预编译之前,会对SQL语句进行...

    Java Mybatis中的 ${ } 和 #{ }的区别使用详解

    Java Mybatis 中的 ${ } 和 #{ } 是两个不同的占位符,都是用于在 Mybatis 中进行动态 SQL 语句的构建和参数传递。然而,这两个占位符在使用时有着极其重要的区别。 首先,让我们来看一个简单的示例代码。假设我们...

    详解Mybatis中的 ${} 和 #{}区别与用法

    在 Mybatis 中,使用 ${} 和 #{} 两种方式来传递参数,但它们之间有着很大的区别。 ${} 和 #{} 的基本概念 在 Mybatis 中,${} 和 #{} 都是用来传递参数的,但是它们的工作方式不同: * ${}:直接将参数值替换到 ...

    ibatis中 $ 于 # 的 区别

    在ibatis(现称为MyBatis)框架中,$ 和 # 是两种不同的动态SQL元素标记,用于处理参数传递的问题。它们各自有着独特的功能和应用场景,对于理解这两者的差异是十分重要的,因为这会直接影响到查询效率以及SQL注入等...

    mybatis 动态sql及参数传递

    参数传递 单个参数传递 多个参数传递 传入单个实体(JavaBean/Map) 传入多个实体 传入集合 使用场景 在实际开发过程中,我们往往需要编写复杂的SQL语句,拼接稍有不注意就会导致错误,Mybatis给开发者提供了动态SQL,...

    关于MyBatis参数传入#{index}的问题的解决方案【源码】

    在多参数的情况下,MyBatis通常推荐使用Map或者注解@Param来传递参数。例如: ```java public User getUser(@Param("id") int id, @Param("name") String name); ``` 或者 ```java Map, Object&gt; params = new ...

    Ibatis资料ibatai sql map iBATIS使用$和#的一些理解

    在使用iBATIS(现已被MyBatis取代)进行数据库操作时,我们常常需要传递参数到SQL语句中。在iBATIS中,有两种主要的方式来处理这些参数:使用`$`和`#`。这两种方式在不同的场景下有不同的效果。 首先,让我们来看看...

    Mybatis框架 mapper.xml文件中parameterType传递参数常用的几种方式.pdf

    正确地使用parameterType传递参数对于开发高质量的应用程序至关重要。以下是几种常用的parameterType参数传递方式以及#和$在Mybatis中传参的区别。 1. 使用依次顺序传参: 在这种方式中,参数按照顺序传递,SQL...

    Mybatis参数传递1

    在MyBatis中,参数的传递方式有很多种,主要包括基本类型的参数、对象参数、多个参数以及使用注解的方式。下面将详细讲解这些方法及其注意事项。 1. 单个参数传入基本类型或直接传入类类型 当参数为基本类型如`...

    Mybatis入门到实践.pdf

    - **参数处理**:MyBatis 支持多种参数传递方式,包括简单类型、复杂类型等。 ##### 4.5 select 查询的几种情况 - **单表查询**:最简单的查询方式。 - **关联查询**:涉及到多个表的查询。 - **子查询**:查询...

    Mybatis多参数查询与列表查询不同方式实现

    总结来说,Mybatis通过多种方式支持多参数查询和列表查询,包括Map参数、注解参数、Pojo类参数、动态SQL以及集合参数。选择哪种方式取决于你的项目需求和个人偏好。灵活运用这些技巧,可以更好地实现数据库查询,...

    实现mybatis-只有一个参数传递的查询+代码+注释

    本文将详细讲解如何在MyBatis中实现一个只有一个参数传递的查询,包括配置、映射文件和Java代码,以及相关注释。 首先,搭建MyBatis环境是基础步骤。你需要在项目中添加MyBatis的依赖,如`pom.xml`文件中引入Maven...

    MyBatis传入多个参数的问题

    本文将详细介绍几种常见的多参数传递方法,并结合具体的代码示例来帮助读者更好地理解和应用这些技巧。 #### 一、单个参数 在最简单的情况下,我们只需要向SQL语句传入一个参数。例如,通过`String`类型的变量`x...

    mybatis总结

    - **动态SQL**:通过`#`和`$`两种方式动态传递参数,其中`#`能有效防止SQL注入。 - **示例**: ```xml SELECT * FROM mi_user WHERE UID = #{id} ``` #### 六、插入、更新、删除操作 MyBatis支持通过...

    深入了解MyBatis参数

    "深入了解MyBatis参数" MyBatis作为一个流行的持久层框架,对参数的处理和...参数处理是MyBatis框架中非常重要的一部分,深入了解参数处理过程和参数传递方式可以帮助我们更好地使用MyBatis框架,避免参数引起的错误。

    mybatis多条件查询处理方案(查询条件为数据库字段非传递参数).pdf

    对于某些场景,我们可能需要在不依赖传递参数的情况下,根据数据库字段的值进行查询。比如,查询定时显示的轮播图,其`fixed_time`字段可以是0或1,其中0表示不定时显示,1表示定时显示。同时,如果定时显示,还需要...

    MyBatis3.3.0中文文档

    参数映射允许开发者通过简单的方式传递参数,而结果集映射则提供了将查询结果映射到对象属性的能力。自动映射可以自动处理简单类型的映射,但开发者也可以完全控制映射过程。MyBatis提供了二级缓存和一级缓存的配置...

Global site tag (gtag.js) - Google Analytics