@Param注解和@Mapper注解
2024-10-20 12:37:25
@Param
1.如果dao方法中只有一个参数,入参可以为#{0}或者#{任意单词},也可以使用@Param指定参数名称,sql中就只能#{指定名称}获取参数
public List<Region> selectRegion(String region_code);
<select id="selectRegion" resultType="java.util.Map">
select
id,
create_time,
update_time,
isvalid,
region_code,
parent_region_code,
name,
region_path,
region_level,
sort,
geometry
from region_info
where 1=1
<if test = "region_code != null">
AND region_code = #{0}
</if>
</select>
<select id="selectRegion" resultType="java.util.Map">
select
id,
create_time,
update_time,
isvalid,
region_code,
parent_region_code,
name,
region_path,
region_level,
sort,
geometry
from region_info
where region_code = #{aaa}
</select>
2.如果dao方法中有多个参数,可以使用@Param指定参数名称,sql中必须使用指定的参数名称作为入参#{指定名称}
public List<Region> selectAllRegion(@Param("region_code")String region_code,@Param("name")String name);
<select id="selectAllRegion" resultType="java.util.Map">
select
id,
create_time,
update_time,
isvalid,
region_code,
parent_region_code,
name,
region_path,
region_level,
sort,
geometry
from
region_info
where 1=1
<if test="region_code != null">
AND region_code = #{region_code}
</if>
<if test="name != null">
AND name like '%' || #{name} || '%'
</if>
</select>
假如我们不使用@Param指定名称,sql中可以使用#{arg0},#{arg1}...这种形式匹配对应入参
public List<Region> selectAllRegion(String region_code,String name);
<select id="selectAllRegion" resultType="java.util.Map">
select
id,
create_time,
update_time,
isvalid,
region_code,
parent_region_code,
name,
region_path,
region_level,
sort,
geometry
from
region_info
where 1=1
AND region_code = #{arg0}
AND name like '%' || #{arg1} || '% '
</select>
总结:尽量使用@Param方式指定传参
@Mapper
将dao类划归spring管理
最新文章
- IEE重建表完全释放磁盘空间具体步骤参考
- Attendance
- MICAPS二次开发一些功能调用
- Redis(一)基础
- 使用powershell部署WSP包
- 误删dpkg的/var/lib/dpkg/info文件夹的解决办法 zhuan
- MYSQL数据库性能调优之五:解决慢查询--存储引擎与数据类型
- WampServer修改端口及菜单Localhost
- Delphi通过调用COM对象实现更改桌面壁纸
- CSS的W3C标准的盒子模型和低版本IE浏览器的盒子模型
- vlan 以及 Linux实现的IEEE 802.1Q VLAN
- 去掉word中向下的箭头^l----->;^p
- robotium和appium的一些区别
- 关于Java的发展前景
- mybatis批量修改
- Drupal7.8的安装注意的问题
- strcmp()字符串比较函数用法
- Vue.js用脚手架创建项目
- HTML表格与表单复习
- iOS-Socket编程体验