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

优先

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

相关文章
|
17天前
|
XML druid Java
Spring5系列学习文章分享---第二篇(IOC的bean管理factory+Bean作用域与生命周期+自动装配+基于注解管理+外部属性管理之druid)
Spring5系列学习文章分享---第二篇(IOC的bean管理factory+Bean作用域与生命周期+自动装配+基于注解管理+外部属性管理之druid)
25 0
|
19天前
|
前端开发 Java 开发者
SpringBoot(五)之新增注解
用于 Spring MVC 测试,仅加载 Web 层。
36 10
|
14天前
|
XML Java 数据格式
Spring的注解
Spring框架注解简化了Java应用开发,通过元数据替代XML配置。`@Component`、`@Controller`、`@Service`、`@Repository`都是组件注解,用于标记不同层的类,如`@Controller`用于控制层,`@Service`业务层,`@Repository`数据访问层。它们均会被组件扫描加入IOC容器,`@Component`是通用形式。通过`@ComponentScan`可以配置扫描规则,包括排除和包含特定类型的组件。`@Autowired`自动装配依赖,`@Value`能从属性文件读取值注入字段。`
|
18天前
|
Java API 数据格式
Spring三兄弟:Spring、Spring Boot、Spring Cloud的100个常用注解大盘点
Spring三兄弟:Spring、Spring Boot、Spring Cloud的100个常用注解大盘点
|
3天前
|
XML Java 关系型数据库
面试一口气说出Spring的声明式事务@Transactional注解的6种失效场景
面试一口气说出Spring的声明式事务@Transactional注解的6种失效场景
|
3天前
|
Java 微服务 Spring
【spring cloud】注解@SpringCloudApplication和@SpringBootApplication的区别
【spring cloud】注解@SpringCloudApplication和@SpringBootApplication的区别
|
11天前
|
Java 测试技术 数据安全/隐私保护
Spring Boot中的自定义注解应用
Spring Boot中的自定义注解应用
|
12天前
|
容器
springboot-自定义注解拦截ip aop和ioc
springboot-自定义注解拦截ip aop和ioc
|
16天前
|
前端开发 Java Spring
蓝易云 - 详解SpringBoot的常用注解
以上就是SpringBoot中常用的一些注解,正确理解和使用这些注解,可以帮助我们更好地使用SpringBoot框架进行开发。
16 0
|
17天前
|
Java Spring 容器
Spring5系列学习文章分享---第六篇(框架新功能系列+整合日志+ @Nullable注解 + JUnit5整合)
Spring5系列学习文章分享---第六篇(框架新功能系列+整合日志+ @Nullable注解 + JUnit5整合)
15 0