SpringBoot常用注解

简介: SpringBoot常用注解

@RestController

前端控制层标记

可以接收请求

将结果以JSON格式相应给前端

@RestController
public class DeptController {
}

image.gif

@Service

标注在业务逻辑层

里面自带了@Component注解,注入到IOC容器中

@Service
public class DempServiceImpl implements DeptService {
}

image.gif

@Repositry

标注在Dao层

里面自带了@Component注解,注入到IOC容器中

@Mapper

标注在Dao层

@Component注解,注入到IOC容器中

@Mapper
public interface DeptMapper {
}

image.gif

@Component

基础注解,组件

将类注入到IOC容器中

@RequestParam

手动映射请求参数和形参

/*
    如果请求参数名和形参变量不一致
                            @RequestParam(name = "请求参数名") 形参
 */
@RequestMapping("/simpleParam2")
public String simpleParam2(@RequestParam(name = "name") String username, Integer age){
    System.out.println("name:" + username);
    System.out.println("age:" + age);
    return "ok";
}

image.gif

@DateTimeFormat(pattern = "")

日期映射,字符串映射成LocalDateTime对象

/*
* 日期参数
* */
@RequestMapping("/dateParam")
public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime){
    System.out.println(updateTime);
    return "ok";
}

image.gif

@PathVaiable

映射路径参数

/*
* 路径参数
*   @PathVariable
*       路径的参数名和形参一致
*       不一致:
*           @PathVariable("参数名")
* */
@RequestMapping("/path/{num}")
public String path(@PathVariable Integer num){
    System.out.println(num);
    return "ok";
}

image.gif

@RequestBody

将请求时携带的JSON映射成Java实体对象

/*
 * 嵌套JSON参数
 * */
@PostMapping("/jsonParam2")
public String jsonParam2(@RequestBody User user){
    System.out.println(user);
    return "ok";
}

image.gif

@ResponseBody

将Java实体对象转成JSON

@RestController = @ResponseBody + @Controller

@RequestMapping("/ulr")

映射请求的url

接收的是一个get请求

@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String hello(){
        return "Hello SpringBoot!";
    }
}

image.gif

@Autowired

自动注入:按照类型注入

@Autowired
private DeptService deptService;

image.gif

@Qualifier("bean的名字")

和@Autowired是搭档

帮助@Autowired设置使用的实现类

IOC中一个接口有多个实现类注入,使用@Qulifier指定要使用的实现类

@Qualifier不能单独使用

bean首字母小写

@Qualifier("empServiceImpl")
@Autowired
private EmpService empService;

image.gif

@Resource(name = "bean的名字")

按照名字装配

@Resource与@Autowired + @Qualifier功能相似

@Resource(name = "empserviceimpl")
private EmpService empService;

image.gif

@Primary

优先

给一个接口的多个实现类的其中一个加入,会优先使用加入该注解的实现类

相关文章
|
12天前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
30 0
|
1月前
|
Java Spring 容器
如何解决spring EL注解@Value获取值为null的问题
本文探讨了在使用Spring框架时,如何避免`@Value("${xxx.xxx}")`注解导致值为null的问题。通过具体示例分析了几种常见错误场景,包括类未交给Spring管理、字段被`static`或`final`修饰以及通过`new`而非依赖注入创建对象等,提出了相应的解决方案,并强调了理解框架原理的重要性。
136 4
|
30天前
|
Java Spring
在使用Spring的`@Value`注解注入属性值时,有一些特殊字符需要注意
【10月更文挑战第9天】在使用Spring的`@Value`注解注入属性值时,需注意一些特殊字符的正确处理方法,包括空格、引号、反斜杠、新行、制表符、逗号、大括号、$、百分号及其他特殊字符。通过适当包裹或转义,确保这些字符能被正确解析和注入。
|
19天前
|
XML JSON Java
SpringBoot必须掌握的常用注解!
SpringBoot必须掌握的常用注解!
42 4
SpringBoot必须掌握的常用注解!
|
1月前
|
XML Java 数据格式
Spring从入门到入土(bean的一些子标签及注解的使用)
本文详细介绍了Spring框架中Bean的创建和使用,包括使用XML配置文件中的标签和注解来创建和管理Bean,以及如何通过构造器、Setter方法和属性注入来配置Bean。
70 9
Spring从入门到入土(bean的一些子标签及注解的使用)
|
20天前
|
存储 缓存 Java
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
67 2
|
20天前
|
JSON Java 数据库
SpringBoot项目使用AOP及自定义注解保存操作日志
SpringBoot项目使用AOP及自定义注解保存操作日志
34 1
|
1月前
|
架构师 Java 开发者
得物面试:Springboot自动装配机制是什么?如何控制一个bean 是否加载,使用什么注解?
在40岁老架构师尼恩的读者交流群中,近期多位读者成功获得了知名互联网企业的面试机会,如得物、阿里、滴滴等。然而,面对“Spring Boot自动装配机制”等核心面试题,部分读者因准备不足而未能顺利通过。为此,尼恩团队将系统化梳理和总结这一主题,帮助大家全面提升技术水平,让面试官“爱到不能自已”。
得物面试:Springboot自动装配机制是什么?如何控制一个bean 是否加载,使用什么注解?
|
15天前
|
存储 安全 Java
springboot当中ConfigurationProperties注解作用跟数据库存入有啥区别
`@ConfigurationProperties`注解和数据库存储配置信息各有优劣,适用于不同的应用场景。`@ConfigurationProperties`提供了类型安全和模块化的配置管理方式,适合静态和简单配置。而数据库存储配置信息提供了动态更新和集中管理的能力,适合需要频繁变化和集中管理的配置需求。在实际项目中,可以根据具体需求选择合适的配置管理方式,或者结合使用这两种方式,实现灵活高效的配置管理。
12 0
|
1月前
|
XML Java 数据库
Spring boot的最全注解
Spring boot的最全注解
下一篇
无影云桌面