#{}表示一個占位符號,通過#{}可以實現(xiàn)preparedStatement向占位符中設(shè)置值,自動進行java類型和jdbc類型轉(zhuǎn)換。#{}可以有效防止sql注入。 #{}可以接收簡單類型值或pojo屬性值。 如果parameterType傳輸單個簡單類型值,#{}括號中可以是value或其它名稱。
我們提供的服務(wù)有:網(wǎng)站制作、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、阿城ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的阿城網(wǎng)站制作公司
${}表示拼接sql串,通過${}可以將parameterType 傳入的內(nèi)容拼接在sql中且不進行jdbc類型轉(zhuǎn)換, ${}可以接收簡單類型值或pojo屬性值,如果parameterType傳輸單個簡單類型值,${}括號中只能是value。
z
a
parameterType:指定輸入?yún)?shù)類型,mybatis通過ognl從輸入對象中獲取參數(shù)值拼接在sql中。
resultType:指定輸出結(jié)果類型,mybatis將sql查詢結(jié)果的一行記錄數(shù)據(jù)映射為resultType指定類型的對象。如果有多條數(shù)據(jù),則分別進行映射,并把對象放到容器List中.
z
a
selectOne查詢一條記錄,如果使用selectOne查詢多條記錄則拋出異常:
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 3
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:70)
selectList可以查詢一條或多條記錄。