欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mybatis接口綁定失效的解決

 更新時(shí)間:2021年11月26日 10:39:26   作者:張意的博客  
這篇文章主要介紹了mybatis接口綁定失效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mybatis接口綁定失效

出現(xiàn)錯(cuò)誤:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

解釋?zhuān)哼@是mybatis所報(bào)的異常,意思是接口綁定失效

原因:

1.項(xiàng)目編譯完成后mapper接口和mybatis的xml不在同一個(gè)目錄下導(dǎo)致接口綁定失敗。

2.如果是maven工程,使用idea編輯工程,會(huì)出現(xiàn)xml文件無(wú)法被編譯到target當(dāng)中,這種情況有兩種解決,首先將和mapper接口在一起的xml文件放在resources文件夾下,這種情況下需要將xml文件所在的包名改成和mapper所在包名一致,還有一種情況就是在pom文件中將xml文件所在的目錄標(biāo)記為資源路徑。

3.配置文件的路徑寫(xiě)的有問(wèn)題,在spring整合mybatis配置中指定mybatis的xml路徑出錯(cuò)尤其注意如果如果resources包下和java包下路徑相同一定要在路徑前加classpath:來(lái)區(qū)別兩者的不同,不然也會(huì)出現(xiàn)接口綁定失效的問(wèn)題。

4.mybatis的xml文件中標(biāo)簽的namespace和對(duì)應(yīng)mapper接口的全限定類(lèi)名(包名+類(lèi)名,不含類(lèi)的后綴名)不一致

5.mybatis的xml文件中標(biāo)簽的id與對(duì)應(yīng)mapper接口中的方法名不一致

與對(duì)應(yīng)mapper接口中的方法名不一致**

小結(jié)一下

大體總結(jié)為mapper接口和xml之間關(guān)聯(lián)出錯(cuò),還有就是配置文件對(duì)xml所在文件路徑指定錯(cuò)誤,最后就是在編譯后mapper接口和mybatis的xml不在同一個(gè)文件夾中。

mybatis接口綁定方法

通常情況下,使用Mapper.xml是無(wú)法實(shí)現(xiàn)多個(gè)參數(shù)的傳遞,除非傳入Map或者是對(duì)象,這個(gè)時(shí)候我們就可以使用接口綁定的方法傳入多個(gè)參數(shù),

實(shí)現(xiàn)方法

第一步:創(chuàng)建一個(gè)與XML包名,類(lèi)名完全相同的接口,包名類(lèi)名即XML中配置的namespace

第二步:創(chuàng)建一個(gè)與XML中ID相同的方法,然后設(shè)置參數(shù),

public interface LogMapper {
List<Log> selAll();
}

第三步:在 mybatis.xml 中使用<package>進(jìn)行掃描接口和 mapper.xml

<mappers>
<package name="com.bjsxt.mapper"/>
</mappers>

在XML中傳遞參數(shù)

因?yàn)橛卸鄠€(gè)參數(shù),所以在XML中參數(shù)的返回值可以不用寫(xiě), 但是在傳參的時(shí)候。

第一種方法:可以在SQL語(yǔ)句中加入#{0} #{param1}就可以傳遞參數(shù)

第二種方法: 使用注解傳遞參數(shù),

第一步 : 在函數(shù)的參數(shù)前添加注解

List<Log> selByAccInAccout(@Param("accin") String
accin123,@Param("accout") String accout3454235);

第二步: #{} 里面寫(xiě)@Param(“內(nèi)容”)參數(shù)中

<!-- 當(dāng)多參數(shù)時(shí),不需要寫(xiě) parameterType -->
<select id="selByAccInAccout" resultType="log" >
select * from log where accin=#{accin} and
accout=#{accout}
</select>

這就相當(dāng)于是系統(tǒng)底層給我們也注釋中寫(xiě)的字符串為Key 以形參為value 形成一個(gè)key然后傳遞給XML 這就實(shí)現(xiàn)了多個(gè)參數(shù)的傳遞

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論