傳遞多個參數的四種方式: 順序傳參:public User selectUser(String name,int deptId); <select id="selectUser" resultType="user">select * from user where user_name=#{0} an ...
- 傳遞多個參數的四種方式:
- 順序傳參:public User selectUser(String name,int deptId); <select id="selectUser" resultType="user">select * from user where user_name=#{0} and dept_id = #{1}</select> #{}裡面的數字代表你穿如參數的順序.不建議使用.sql層表達不直觀
- @Param 註解傳參:public User selectUser(@Param("userName")String name,@Param("deptId")int deptId); <select id="selectUser" resultType="user">select * from user where user_name=#{userName} and dept_id = #{deptId}</select> #{}裡面的名稱對應的是註解@Param 括弧中修飾的名稱,這種情況在參數不多的情況下比較直觀,推薦之用
- Map傳參法:public User selectUser(Map<String,Object> params); <select id="selectUser" resultType="user" parameterType="map">select * from user where user_name=#{userName} and dept_id = #{deptId}</select> #{}裡面的名稱對應的是Map裡面的key名稱,這種方法適合多個參數,且參數易變能靈活傳遞的情況
- Java Bean傳參數::public User selectUser(User user); <select id="selectUser" resultType="user" parameterType="user">select * from user where user_name=#{userName} and dept_id = #{deptId}</select> #{}裡面的名稱對應的是 User類裡面的成員屬性。 這種方法很直觀,但需要建一個實體類,擴展不容易,需要加屬性,看情況使用
- 轉載(Hollis)