多在mapper接口寫@Param注解, 那么,你在mapper.xml alt+/會有提示
為什么不寫parameterType也可以運行成功? 因為mybatis能自動識別,但返回值類型不能不寫
(idea-mybatis插件也不生成parameterType,剛好,以后推薦不寫parameterType)
mybatis自動識別入參對象, 傳入單個map或單個對象,無需寫@Param注解 如@Param("map") Map<String, Object> map
那么什么時候必須在mapper接口上寫@Param注解呢, mapper接口中有多個參數(每個對象或參數都要加@Param注解), 或一個 String, 必須使用@Param注解,
MyBatis還提供了一個使用注解來參入多個參數的方式。這種方式需要在接口的參數上添加@Param注解
-
List<NoticeModel> getRevNoticeList(
-
@Param("queryParam") NoticeQueryParam queryParam,
-
@Param("getDeptIds") List<String> getDeptIds,
-
@Param("getProjectIds") String getProjectIds,
-
@Param("map") Map map
-
);
那么, 不寫parameterType, 在mapper.xml如何使用
如果是對象NoticeQueryParam queryParam, 直接在mapper.xml使用 queryParam對象.成員變量
@Param("map") Map map map對象.成員變量
如果是List<String> getDeptIds 直接在mapper.xml 中使用getDeptIds 不需要 對象.成員變量
如果是String getProjectIds 直接在mapper.xml 中使用getProjectIds 不需要 對象.成員變量