spring注解-----持续更新中

574 篇文章 4 订阅
272 篇文章 1 订阅

首先:使用注解必须先在配置文件中指定组件扫描器
applicationContext.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context.xsd">

     <!-- 加入spring-context.xsd -->
     <!-- 声明组件扫描器:指定注解所在的包名 
          component-scan标签叫做组件扫描器(组件指的是java对象)
          base-package:指定注解所在的包名,框架会扫描这个包和子包中类中的注解
     -->
     <context:component-scan base-package="com.bjpowernode.ba04" />
    
</beans>

一: @Controller,主要用在servlet类上 @Service 主要用在service类上, @Repository 主要用在dao层,@Component(主要用在其他三种类之外的类上面):作用都是创建对象的,如果不指定对象名,默认都是当前类首字母小写。

目前4种注解意思是一样,并没有什么区别,区别只是名字不同。使用方法:
1.使用<context:component-scan base-package=“XXX”/>扫描被注解的类

二:@Value注解 :给属性赋值使用的(简单类型 ------>java八大基本类+String)

为了简化从properties里取配置,可以使用@Value, 可以获取properties文件中的配置值。

在这里插入图片描述

在dispatcher-servlet.xml里引入properties文件。

三: @Autowired :给引用类型属性赋值使用的
Autowired默认先按byType(根据同源关系查找)
也支持 byName,这时候要同时使用下面两个注解:
@Autowired 指定对象的类型
@Qualifier(“bean的id名”) 指定对象的名称

如果发现找到多个bean,则,又按照byName方式比对,如果还有多个,则报出异常。
可以手动指定按byName方式注入,使用@Qualifier。
//通过此注解完成从spring配置文件中 查找满足Fruit的bean,然后按//@Qualifier指定bean
@Autowired指定对象的类型
@Qualifier(“bean的id名”) 指定对象的名称
在这里插入图片描述
如果要允许null 值,可以设置它的required属性为false,如:@Autowired(required=false) ,默认required=true,如果赋值失败,程序报错

public Fruit fruit;
在这里插入图片描述
四: @Resource 也可以给引用类型属性设值。是jdk自带的,spring支持

默认按 byName自动注入,如果找不到再按byType找bean,如果还是找不到则抛异常,无论按byName还是byType如果找到多个,则抛异常。

可以手动指定bean,它有2个属性分别是name和type,使用name属性,则使用byName的自动注入,而使用type属性时则使用byType自动注入。
在这里插入图片描述
@Resource(name=”bean名字”)

@Resource(type=”bean的class”)

这个注解是属于J2EE的,减少了与spring的耦合。

五:
@PostConstruct 和 @PreDestory

实现初始化和销毁bean之前进行的操作,只能有一个方法可以用此注释进行注释,方法不能有参数,返回值必需是void,方法需要是非静态的。
在这里插入图片描述
在这里插入图片描述

六、 @RequestMapping(SpringMVC注解式开发-mvc中的注解 )
在这里插入图片描述
在这里插入图片描述
七. @RequestParam(value=“请求中的参数名”)在这里插入图片描述
例子:
在这里插入图片描述
八.@ResponseBody
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
九.@ExceptionHandler(异常处理注解)
在这里插入图片描述
十.@ControllerAdvice :控制器增强
在这里插入图片描述
配合使用
在这里插入图片描述
十一:SpringBoot注解
@SpringBootApplication : 是Spring Boot项目的核心注解,主要作用是开启Spring自动配置;

十二: 、@ConfigurationProperties :基于对象的方式进行属性封装。(将整个属性文件封装成对象)
在这里插入图片描述
在这里插入图片描述
十三. RestController &十四 .GetMapping & 十五.PostMapping & 十六PutMapping &十七, DeleteMapping
在这里插入图片描述
十八:@Mapper mybatis的Mapper接口上面注解 & 十九,@MapperScan(“com.xx.xx.mapper”)注解包扫描。
在这里插入图片描述

二十;在这里插入图片描述
反面教材
在这里插入图片描述
二十一:
@PathVariable :映射 URL 绑定的占位符
在这里插入图片描述
二十二: @service 来自dubbo—alibaba
在这里插入图片描述
23.
springboot集成dubbo注解在这里插入图片描述
24. @reference
在这里插入图片描述
24. @configuration springboot注解
在这里插入图片描述
25. @servletComponentScan servlet组件扫描器
在这里插入图片描述

26 @webServlet 3.0之后出现的,不需要再web.xml中配置servletname和urlPatterns
在这里插入图片描述
27. @bean
在这里插入图片描述
28. @WebFilter
在这里插入图片描述
29.@RequestBody
@RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的);GET方式无请求体,所以使用@RequestBody接收数据时,前端不能使用GET方式提交数据,而是用POST方式进行提交。在后端的同一个接收方法里,@RequestBody与@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。

文件参考链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值