@Service在service的接口中添加注解还是在实现类impl


@Service注解是标注在实现类上的


  • 因为@Service是把spring容器中的bean进行实例化,也就是等同于new操作,只有实现类是可以进行new实例化的,而接口则不能,所以是加在实现类上的。

  • 接口只是一个规范,需要各种实现类去实现这个接口,我们要用的就是这些实用类的方法。

  • 如果采用@Autowired来注解,则同样无需指定name属性,若是实现该接口有多个类,则需要通过@Qualifier来做区分

同理:@Repository注解是放到dao类的实现类中


但是注意,在springboot和mybatis结合的项目中:

  • 1.@Mapper加在接口类上。【也可以在springboot启动类上加一个@MapperScan("包名")来代替】

  • 2.xxxMapper.xml要在配置文件application.properties配置,原因:当接口类与xxxMapper.xml不在同一个文件夹下时,便于springboot找到xxxMapper.xml文件

mybatis.mapper-locations=classpath:mapper/*.xml


参考链接:https://www.cnblogs.com/javaupup/p/14733602.html



posted @ 2022-04-04 13:55  卡卡发  阅读(1250)  评论(0)    收藏  举报