Spring的注解:
@Component:
标记类:此注解意思是交给Spring自动创建对象,并且把对象放入IOC容器中
@Controller :
@Component 的衍生注解,功能一样,此注解加到Controller层,表示控制层的bean对象。为遵循Rest开发风格,企业使用@RestController进行替代
@Service:
@Component 的衍生注解,功能一样,此注解加到Service层,表示为业务层的bean对象
@Repository:
@Component 的衍生注解,功能一样,此注解加到Mapper层,表示为持久层(也称数据层)的bean对象
@Autowired:
自动注入(按照类型的) ,此注解是Spring提供的注解(与之对应最常用的@Resource是JDK提供的),意思是把IDC容器里面的对象拿出来
@Value:
@Value
注解用于将值注入到Spring容器中的bean属性中。它可以用于注入简单的值、字符串、表达式、属性文件中的值等。@Value
注解可以用于字段、方法和构造函数上。当注解应用于字段时,它将直接将值注入到字段中。当注解应用于方法或构造函数时,它将调用该方法或构造函数,并将值作为参数传入
例:
(1)注入简单的值:将值10注入到属性age中
@Value("10")
private int age;
(2)注入字符串:将Holle World注入到属性message中
@Value("Hello, World!")
private String message;
(3)注入表达式:注入数组
(4)注入属性文件中的值(重点):将名字为name的值注入到AppName中
@Value("name")
private String appName;
@RestController:
由@Component +@ResponseBody响应体,
@Controller 注解表示该类是一个控制器,用于处理 HTTP 请求和响应。但是,@Controller 注解只能返回视图,不能直接返回数据。
@ResponseBody 注解表示该方法返回的是JSON格式的数据,会被直接写入 HTTP 响应体中。
@RequestMapping:
是一个用于映射HTTP请求到方法的注解。它可以用于类级别和方法级别。在类级别上使用该注解,可以定义一个基本的请求路径,而在方法级别上使用该注解,则可以定义具体的HTTP请求路径
基于Rest风格开发注解规范:
@GetMapping :
是一个用于处理HTTP Get请求的注解,Rest风格表示访问数据
@PostMapping :
是一个用于处理HTTP Post请求的注解,Rest风格表示新增数据
@PutMapping:
是一个用于处理HTTP Put请求的注解,Rest风格表示修改数据
@DeleteMapping :
是一个用于处理HTTP Delete请求的注解,Rest风格表示删除数据
修饰方法中的参数:
@RequestBody :
接收前端传的参数,解析JSON格式请求体中的数据
@PathVariable :
接收前端传来的路径参数,解析路径参数
@RequestParam :
(1)可以将HTTP请求中的参数映射到控制器方法的参数上(意思就是指定前端传来的字段对应修饰的参数),当名字不一致时需要使用此注解
(2)当传来的参数为集合时,也需要使用此注解
@Transactional:
事务注解,被注解的方法在执行时会被Spring事务管理器所管理,默认运行时异常(RuntimeException)回滚数据。
@Configuration:
标注当前类为配置类
@Bean:
用于标注在方法上,表示当前方法的返回值是一个Bean,表示是第三方的bean