栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot的Controller中的参数接收以及@Mapper和@Repository的区别

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot的Controller中的参数接收以及@Mapper和@Repository的区别

目录

1、@PathVariable

2、@RequestParam

3、@RequestBody

4、无注解

5、@Repository 与 @Mapper的区别

6、解决使用@mapper接口时,注入mapper爆红问题


1、@PathVariable

获取路径参数。即url/{id}这种形式。

2、@RequestParam

获取查询参数。即url?name=这种形式

这两种方式结合:

http://localhost:80/demo/123?name=rk

@GetMapping("/demo/{id}")
public void demo(@PathVariable(name = "id") String id, @RequestParam(name = "name") String name) {
    System.out.println("id="+id);
    System.out.println("name="+name);
}

3、@RequestBody

4、无注解

方式1:

方式2:

5、@Repository 与 @Mapper的区别

相同点 :@ Mapper和 @ Repository 都是作用在dao层接口,使得其生成代理对象bean,交给spring 容器管理

不同点:

        1、@ Mapper 不需要配置扫描地址,可以单独使用,如果有多个 mapper 文件的话,可以在项目启动类中加入@ Mapper Scan (“ mapper 文件所在包”),这样就不需要每个 mapper 文件都加@ Mapper 注解了。每个mapper上就没有任何注解。

        2、@Repository不可以单独使用,否则会报错误,要想用,必须配置扫描地址(@MapperScannerConfigurer)

6、解决使用@mapper接口时,注入mapper爆红问题

        会出现这样的情况,但是并不影响使用。这里爆红是因为没有我们mapper接口上使用的@ Mapper,而@Autowired是spring的注解,提示找不到相应的bean。如果有强迫症的同学,可以使用@Resource注解,因为这个是JDK的注解。

        @Mapper--->@Resource                @Repository---->@Autowired

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999572.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号