@param和@PathVariable 最直接的代码区别

"本文介绍了在MyBatis中使用@Param和@PathVariable的方法。在Dao层,@Param注解用于指定mapper查询时的参数,如`@Param("id") Long id`。而在Controller层,@PathVariable用于获取URL中的路径变量,如`@GetMapping("get/{id}
摘要由CSDN通过智能技术生成

@param的写法
写在Dao层的接口中,mapper里面就可以扫描到
Dao层

 /**
    * 根据id查询信息
    * @param id
    * @return
    */
    public Dept queryById(@Param("id") Long id);

Mapper里面#{}就可以扫描到dao层中的id

  <!--根据id查询-->
    <select id="queryById" parameterType="Long" resultType="Dept">
        select *
        from dept
        where deptno = #{id}
    </select>

发送get请求:
在这里插入图片描述

@PathVariable的写法
主要是在Controller层中
Dao层

    /**
    * 根据id查询信息
    * @param id
    * @return
    */
    public Dept queryById( Long id);

Mapper(这里的dao层没有加@Param,mapper如何改为id则会找不到,这里改为实体类中的参数)

    <!--根据id查询-->
    <select id="queryById" parameterType="Long" resultType="Dept">
        select *
        from dept
        where deptno = #{deptno}
    </select>

Controller层(在url地址中加入{id},即可跟@PathVariable(“id”)对应上)

 /**根据id查找数据
     * @param
     * @return
     * @date 2021/6/21 15:05
     **/
    @GetMapping("get/{id}")
    public Dept get(@PathVariable("id") Long id){
        return deptService.queryById(id);
    }

发送get请求:
在这里插入图片描述
总结:两种写法主要表现在发送的地址有所变化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值