不需要用@Param注解与需要用@Param注解的情况

博客主要介绍了Java中@Param注解的使用情况。不需要使用该注解的情况有:只有一个参数;方法参数是引用数据类型。需要使用的情况包括:多个参数、给参数起别名、XML的sql语句用$符号、动态sql语句中有参数作变量。使用注解时,sql参数占位符用注解value值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不需要用@Param注解:

1.只有一个参数时,不需要用@Param注解。此时在不使用@Parma注解的情况下,sql语句中的参数占位符名称直接使用任何名称均可;

2.方法参数是引用数据类型的情况下,不需要用@Param注解。

需要用@Param注解:

1. 多个参数是要写的(事实上多参数可以不写该注解,但处理起来会很麻烦);

2. 要是想给参数起个别名,那得写;

例:想给参数name起别名为username,想给参数age起别名为userAge。

UserInfo selectByNameAndAge(@Param("username") String name, @Param("userAge") int age);
<select id="selectByNameAndAge" resultType="UserInfo">
    SELECT * FROM user_table
    WHERE username = #{username} AND user_age = #{userAge}
</select>

3. XML 中的 sql 语句使用了 $ 符号也要写;

4. 动态 sql 语句中有参数作为变量,那么该参数就要写。

注:如果在方法参数是一个参数或多个参数的情况下使用了@Param注解,此时,sql语句中的参数占位符名称用注解的value值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

征程123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值