1. 程式人生 > >Mybatis中模糊查詢時相關的引數傳遞及xml配置

Mybatis中模糊查詢時相關的引數傳遞及xml配置

本文對使用Mybatis框架進行模糊查詢時出現問題的地方進行一下總結:

1.當查詢引數存在Map中時,可將查詢引數通過map.put("name","%"+dto.getName().trim()+"%")配置,

   xml中 name LIKE #{name}配置即可.

2.此外,一般情況下xml中還有兩種模糊查詢的配置方式:    

   方式一: 

<if test="name != null and name!='' ">
     AND name LIKE '%' #{name,jdbcType=VARCHAR} '%'
</if>

   方式二:

<if test="name != null and name!='' "> 
      AND name LIKE CONCAT(CONCAT('%',#{name,jdbcType=VARCHAR}),'%')
</if>





相關推薦

Mybatis模糊查詢相關引數傳遞xml配置

本文對使用Mybatis框架進行模糊查詢時出現問題的地方進行一下總結: 1.當查詢引數存在Map中時,可將查詢引數通過map.put("name","%"+dto.getName().trim()+"

Mybatis模糊查詢

一 concat()函式 1、功能:將多個字串連線成一個字串。 2、語法:concat(str1,str2…) 返回結果為連線引數產生的字串,如果有任何一個引數為null,則返回值為null。 3、語法:concat(str1,seperator,str2,se

mybatis模糊查詢的方式

<!--Mapper.xml中如何進行模糊查詢--> <sql id="brand_columns"> id, name, firstChar,brandName </sql> <select id

mybatis模糊查詢like拼接問題

<!-- ******************** 模糊查詢的常用的3種方式:********************* --> <select id="getUsersByFuzzyQuery" parameterType="User" resul

Mybatis模糊查詢的各種寫法

工作中用到,寫三種用法吧,第四種為大小寫匹配查詢 1. sql中字串拼接    SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%'); 2. 使用 ${...} 代替

使用MyBatis進行模糊查詢%到底寫哪兒的解決辦法

介紹 這種解決辦法。。。感覺非常Nice!! 解決辦法 在我們以前寫sql語句的時候,我們通常是這樣寫的。 SELECT * FROM user WHERE username LIKE #{likeUser} 我們在Java程式碼中我們是這樣傳

關於Mybatis的select 查詢 傳遞多個引數的4種方式

下面給大家總結了以下幾種多引數傳遞的方法。 方法1:順序傳參法 public User selectUser(String name, int deptId); <select id="selectUser" resultMap="UserResultMap"> sel

MyBatis只傳一個String引數要注意的事項

引數名為_parameter,不需要指定成傳入的引數名,參考程式碼如下: <select id="getLoop" resultMap="AAA" parameterType="String"> SELECT *, ROWNUM RN from tablename

MyBatisxml檔案模糊查詢的寫法

資料庫中某表的一個欄位為name,我需要對它進行模糊查詢的時候使用了下面的方法,解決了這個問題。 <select id="findList" resultType="DwfxGzysxl"> SELECT <include refid="d

mybatis 在name 模糊查詢出現問題以及解決方法

今天出現一個詭異的事情在name進行模糊查詢過程中mybatis中寫sql內容為:   <![CDATA[ and `name` like CONCAT('%','${name}','%' )

mysql使用like模糊查詢如何轉義%

我們經常使用like語句配合%%萬用字元來進行模糊查詢,那麼如果欄位內容本身含有%,而你要查詢包含有%的記錄怎麼辦呢怎麼辦呢。假設欄位是title,那麼下面的語句可以嗎? select * from table where title like “%%%”; 如果你試過就知

Mybatis使用註解@多個引數查詢

    @Select("SELECT * FROM wc_homework WHERE organization_id=#{classId} ORDER BY createtime DESC LIMIT #{start},#{count}")     @Results({

mysql模糊查詢的四種用法介紹

包含 如果 正則 搜索 name 模糊查詢 長度 use mysql 下面介紹mysql中模糊查詢的四種用法: 1,%:表示任意0個或多個字符。可匹配任意類型和長度的字符,有些情況下若是中文,請使用兩個百分號(%%)表示。 比如 SELECT * FROM [user] W

Hibernate使用createSqlQuery進行模糊查詢找不到數據

hql slist org 結果 reat nbsp ring 模糊查詢 div 1. 首先明確一點,使用createSqlQuery如下兩種方式的占位符都可以使用,這個在官方的文檔可以查到。 註意使用模糊查詢時,賦值兩邊不可以添加單引號。 Query query

mybatis模糊查詢格式

res spa span base myba col where identity ide mybatis的模糊查詢格式; <select id="xxx" parameterType="com.model.xxx" resultMap="BaseResu

mybatis進行模糊查詢的幾種方式

單個 ase nco ash face myba select from rda mapper文件: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org

模糊查詢用到prepareStatement在SQL語句裏的問號怎麽寫

stat alt 分享 裏的 image prepare ima sql語句 技術 模糊查詢時用到prepareStatement在SQL語句裏的問號怎麽寫

Mybatis實現模糊查詢

con concat 框架 color SSM框架 數據庫 sql ble table 在使用SSM框架實現後臺功能的過程中,有可能需要對數據庫中的某一個字段實現模糊搜索,使用sql語句就是: SELECT * FROM [TABLE NAME] WHERE u_name

Mybatisint insertSelective()的相關問題

語句 use val 但是 tis mar key ive name 1、selective的意思是:選擇性2、insertSelective--選擇性保存數據;比如User裏面有三個字段:id,name,age,password但是我只設置了一個字段;User u=new

MyBatis的@Param註解和引數

Mybatis 作為一個輕量級的資料持久化框架,目前應用非常廣泛,基本可以取代Hibernate。 關於Mybatis中的@Param 註解,官方文件:http://www.mybatis.org/mybatis-3/zh/java-api.html 其中關於 @param部分的說明是: