Mybatis?入參類型方式全面詳解
Mybatis 入參方式
單個基本類型或 String 參數
在 mapper 文件中隨便寫
<select id="" resultMap="resultMap"> select * from USER_INFO t where t.name = #{sdfa,jdbcType=VARCHAR} </select>
List<Student> get(String name);
單個 Map 或者自定義類型的
- 如是 Map , 那么參數各是 Map 的 key
- 如果是自定義類型的,參數是屬性名,更確切的說是 get 方法,例如:getName (), 那么 mapper 文件中就要寫 #{name,jdbcType=VARCHAR}
如果是單個的 Collection
參數名字就是 collection
<select id="" resultMap="resultMap"> select * from USER_INFO t where t.name in <foreach collection="conllection" item="i" ......> </foreach> </select>
List<Student> get(List<String> names);
如果是多個參數
可以使用 @Param ("parametername")
<select id="" resultMap="resultMap"> select * from USER_INFO t where t.name in <foreach collection="param" item="i" ......> </foreach> and age = #{age,jdbcType=NUMERIC} </select>
List<Student> get(@Param("param") List<String> names,@Param("age") int age);
如果不想使用 @Param,而是想直接使用接口方法參數的變量名作為 mapper 的參數名,需要增加 編譯參數 -parameters
, 并啟用 useActualParamName
選項(默認開啟)來編譯項目這里以 maven 為例
普通工程
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <target>1.8</target> <source>1.8</source> <parameters>true</parameters> </configuration> </plugin> </plugins> </build>
springboot:
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <jvmArguments>-parameters</jvmArguments><!-- 增加這個參數 --> </configuration> </plugin>
如上設置好之后 ,就可以直接用接口方法參數名作為 mapper 參數了
接口文件中:
List<ComBusinessSwitch> getSwitchByCode(String code, String orgId, String stationId);
mapper 文件中
<select id="getSwitchByCode" resultMap="BaseResultMap"> select * from SWITCH T where code = #{code,jdbcType=VARCHAR} and orgid = #{orgId,jdbcType=VARCHAR} and stationid = #{stationId,jdbcType=VARCHAR} </select>
以上就是Mybatis 入參類型方式全面詳解的詳細內容,更多關于Mybatis 入參方式的資料請關注腳本之家其它相關文章!
相關文章
springboot中RestTemplate配置HttpClient連接池詳解
這篇文章主要介紹了springboot中RestTemplate配置HttpClient連接池詳解,這些Http連接工具,使用起來都比較復雜,如果項目中使用的是Spring框架,可以使用Spring自帶的RestTemplate來進行Http連接請求,需要的朋友可以參考下2023-11-11基于idea 的 Java中的get/set方法之優(yōu)雅的寫法
這篇文章主要介紹了基于idea 的 Java中的get/set方法之優(yōu)雅的寫法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01Java實戰(zhàn)之小蜜蜂擴音器網上商城系統(tǒng)的實現
這篇文章主要介紹了如何利用Java實現簡單的小蜜蜂擴音器網上商城系統(tǒng),文中采用到的技術有JSP、Servlet?、JDBC、Ajax等,感興趣的可以動手試一試2022-03-03