您好,登錄后才能下訂單哦!
這篇“mybatisplus中的xml對象參數傳遞問題怎么解決”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“mybatisplus中的xml對象參數傳遞問題怎么解決”文章吧。
如果是一般類型的參數,直接把類型加上,在xml的sql中通過#{}或者${}的方式引入就行了,如果是一個java對象,在mapper的參數前面加上@Param注解,給定參數名,在xml中直接調用。
下面是mapper的接口的一個方法
List<DesHistoryVo> getHistory(@Param("dto") HistoryQueryDto dto);
接著在xml中調用dto對象的屬性
省略... and supplier_id = ${dto.supplierId} 省略...
在select或者是其它xml標簽中,記得填寫parameterType參數的類型,也就是全類名,直接右鍵對象,copy reference就行了。
另外,可以根據sql輸出的列,可以直接將對象轉換為給定的對象,入頁面展示需要的Vo對象,這時就需要配置resultType參數,同樣,也是對象的全類名。
mapper.java文件:
public User selectUser(String name, int deptId);
mapper.xml文件:
<select id="selectUser" resultType="com.wyj.entity.po.User"> select * from user where userName = #{0} and deptId = #{1} </select>
注意:里面的數字代表你傳入參數的順序,不是特別建議使用這種方法傳遞參數,特別是參數個數多的時候
mapper.java文件:
public User selectUser(@Param("userName") String name, int @Param("deptId") id);
mapper.xml文件:
<select id="selectUser" resultType="com.wyj.entity.po.User"> select * from user where userName = #{userName} and deptId = #{deptId} </select>
注意:在xml文件中就只能以在@Param注解中聲明的參數名稱獲取參數
mapper.java文件:
public User selectUser(Map<String, Object> params);
mapper.xml文件:
<select id="selectUser" parameterType="java.util.Map" resultType="com.wyj.entity.po.User"> select * from user where userName = #{userName} and deptId = #{deptId} </select>
mapper.java文件:
public User selectUser(User user);
mapper.xml文件:
<select id="selectUser" parameterType="com.wyj.entity.po.User" resultType="com.wyj.entity.po.User"> select * from user where userName = #{userName} and deptId = #{deptId} </select>
以上就是關于“mybatisplus中的xml對象參數傳遞問題怎么解決”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。