用在controller层class上面,标记class为controller,放入容器里。
@Controller public class UserController { }@Service
用在service层接口的实现类上面,告诉Spring这个类是接口的实现类,放入容器中,controller就可以调用对应的接口。
@Service public class UserServiceImpl implements UserService { }@MapperScan("com.qcby.boot_kwg.mapper")
扫描容器里的组件,用在SpringBoor的启动类上见面,启动SpringBoot时,识别组件
除此之外也可以用@Mapper注解放在每个mapper类上面,缺点是比较麻烦
@MapperScan("com.qcby.boot_kwg.mapper") @SpringBootApplication public class BootKwgApplication { public static void main(String[] args) { SpringApplication.run(BootKwgApplication.class, args); } }@SpringBootApplication
SpringBoot启动类的标志。
@MapperScan("com.qcby.boot_kwg.mapper") @SpringBootApplication public class BootKwgApplication { public static void main(String[] args) { SpringApplication.run(BootKwgApplication.class, args); } }@Bean
@Bean作用于方法,告诉Spring这是某个类的实例,当需要用到这个实例时,从Spring容器里拿出来。当然也可以通过这个注解来注册bean
@Bean public LoginInterceptor loginInterceptor(){ return new LoginInterceptor(); }@Component
@Component注解表明一个类会作为组件类,并告知Spring要为这个类创建bean。
@Bean和@Component区别:两者的目的是一样的,都是注册bean到Spring容器中。
@Component(@Controller、@Service、@Repository)通常是通过类路径扫描来自动侦测以及自动装配到Spring容器中。
而@Bean注解通常是我们在标有该注解的方法中定义产生这个bean的逻辑。
@Component 作用于类,@Bean作用于方法。
@Component和@Bean都是用来注册Bean并装配到Spring容器中,但是Bean比Component的自定义性更强。可以实现一些Component实现不了的自定义加载类。
@Autowire ,@Resource这两个注解都可以用来装配bean ,@Autowire默认是按照类型配置。默认情况要求依赖对象必须存在。@Resource 默认按名称配置,找不到与名称匹配的bean时才按类型进行装配。名称可以通过name属性指定,没有name属性则默认字段名,。。。•@Autowire和@Qualifier配合使用效果和@Resource一样:
@RequestParam @Param欢迎分享,转载请注明来源:内存溢出
评论列表(0条)