Mybatis學習第2節 -- 模糊查詢之#和$的區別
阿新 • • 發佈:2019-03-16
url %s amp 參數 interface containe 模糊查詢 res ssi 先說結論, #是占位符,而$的行為是字符串拼接, 在參數是java的基本類型且只有一個參數的情況下,使用$時,只能用value作為參數傳遞
需求決定設計, 先在interface裏面添加相應方法
然後編寫mapper文件對應的查詢語句
在測試類中進行測試
$方式拼接字符串
public interface ShopMapper {
|
<select id="getShopByTitleContainSharp" resultMap="simpleResultMap" >
|
@Test
|
==> Preparing: select * from tb_shop where `shop_name` LIKE ? ==> Parameters: %黃人%(String) <== Columns: shop_id, owner_id, area_id, shop_category_id, shop_name, shop_desc, shop_addr, phone, shop_img, priority, create_time, last_edit_time, enable_status, advice <== Row: 28, 1, 2, 22, 小黃人主題奶茶店, 不接受預訂,請直接來店裏進行消費, 位於東苑2號, 13810524086, /upload/images/item/shop/28/2017092601041469991.png, 50, 2017-09-26 01:04:13, 2017-09-26 01:04:13, 1, null <== Total: 1 |
#方式特點
==> Preparing: select * from tb_shop where `shop_name` LIKE ? ==> Parameters: %黃人%(String) <== Columns: shop_id, owner_id, area_id, shop_category_id, shop_name, shop_desc, shop_addr, phone, shop_img, priority, create_time, last_edit_time, enable_status, advice <== Row: 28, 1, 2, 22, 小黃人主題奶茶店, 不接受預訂,請直接來店裏進行消費, 位於東苑2號, 13810524086, /upload/images/item/shop/28/2017092601041469991.png, 50, 2017-09-26 01:04:13, 2017-09-26 01:04:13, 1, null <== Total: 1 |
如果面對中文內容有錯誤謹記在連接url裏面設置參數
jdbc:mysql://localhost:3306/oto?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
|
Mybatis學習第2節 -- 模糊查詢之#和$的區別