spring常用注解

Spring+SpringMVC+springBoot

用来创建对象的注解:

                

@Controller:

放在类的上面,创建控制器对象,注入到容器

@RestController:

放在类的上面,创建控制器对象,注入到容器

复合注解:=@controller+@Responbody,使用这个注解类的,里面控制器方法返回的都是数据

@Service:

@Service:放在业务层实现类上,创建Service对象,注入到容器

@Repository:

        放在dao层实现类上面,创建dao对象,放入到容器中。没有使用这个注解,是因为现在使用          Mybatis框架,dao对象是通过Mybatis代理生成的对象不需要使用Repository、所以没有使              用。

@Component:

        放在类的上面,创建类的对象 ,放入到容器中 。不属于三层架构

用来赋值的:

        @Value:

                简单类型的赋值,例如在属性上面使用@Value(“李四”)private String name。

                还可以使用@Value,获取配置文件中的数据(propertise或者yml)                                     @Value("${Server.port}")         private Integer port;

        @Autowired:

                引用类型赋值自动注入的,支持ByName,ByType,默认是ByType。放在属性                               的上面,也可以放在构造方法的上面,推荐是放在构造方法的上面

@Qualifer:

                给引用类型赋值,使用ByName的方式。@Qualifer和@Autowried都是spring框架提供的

@Resource:

                来自jdk中的定义,javax.annotation。实现引用类型自动注入,支持ByName和                                 ByType,默认是ByName,,如果ByName失败,再使用ByType注入。在属性的上面进行使用

其他注解:

        @Configuration:

        放在类上面,表示这是配置类,相当于xml配置文件

        @Bean:

        放在配置类的方法上面,把方法返回值的对象,注入到spring容器中。

        @ImportResource:

        加载其他的xml配置文件,把配置文佳中的对象注入到spring容器中,放在配置类上

        @ProertySource:

        读取其他的properties属性配置文件,放在配置类上

        @ComponentScan:

        扫描器,指定包名,扫描创建对象的注解的,放在配置类上

        @ResponseBody:

        放在controller方法的上面,表示controller方法返回的是数据而不是视图

        @RquestBody:

        把请求体中的数据读取出来,转化为java对象使用。

        @ControllerAdvice:

        控制器增强,放在类的上面,表示此类提供了方法,可以对Controller增强功能。

        @ExceptionHandler:

        处理异常的,放在方法的上面

        @Transactional:

        处理事务的,放在service实现类public方法的上面,表示此方法有事务

springBoot中使用的注解:

        @SpringBootApplication:

                放在启动类上

                是个复合注解:

                        1、@SpringBootConfiguration:

                        2、EnableAutoConfiguration

                        3、ComponentScan

MyBatise相关的注解:

        @Mapper:放在接口的上面,让MyBatis找到接口,创建它的代理对象

        @MapperScan:放在主启动类的上面,指定扫描的包,这个包中的所有接口都创建代理对             象,并且把创建好的代理对象注入到容器中

        @Param:放在dao接口方法的形参前面,作为命名的参数使用 。

Dubbo注解:

        @DubboService:在提供者端使用的,暴露服务的,放在接口的实现类上面

        @DubboRefrence:在消费者端使用,引用远程服务,放在属性上面使用

        @EnableDubbo:放在主启动类上面,表示引用启用Dubbo功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值