zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然SPRINGBOOT开发实战--SpringBoot 注解

    Spring Boot注解是一种元数据形式,可提供有关程序的数据。换句话说,注解用于提供有关程序的 补充信息。它不是我们开发的应用程序的一部分。它对其注解的代码的操作没有直接影响。不会更改已编译程序的操作。
    Core Spring框架注解
    @Required: 它适用于 bean 设置方法。它指示必须在配置时使用必需的属性填充带注解的Bean,否则它将引发异常 BeanInitilizationException 。
    示例
    public class Machine 
    {
    private Integer cost;
    @Required
    public void setCost(Integer cost) 
    {
    this.cost = cost;
    }
    public Integer getCost() 
    {
    return cost;
    }   
    }
    @Autowired: : Spring通过提供@Autowired注解来提供基于注解的自动装配。它用于自动连接setter方法,实例变量和构造函数上的spring bean。当我们使用@Autowired批注时,spring容器通过匹配数据类型自动连接bean。
    示例
    @Component
    public class Customer
    {
    private Person person;
    @Autowired
    public Customer(Person person) 
    { 
    this.person=person;
    }
    }
    @Configuration: : 它是一个类级别的注解。带有@Configuration注解的类由Spring Containers用作bean定义的源。
    示例
    @Configuration
    public class Vehicle
    {
    @BeanVehicle engine()
    {
    return new Vehicle();
    }
    }
    @ComponentScan: : 当我们要扫描软件包中的bean时使用。它与注解@Configuration一起使用。我们还可以指定用于扫描Spring组件的基本软件包。
    示例
    @ComponentScan(basePackages = "com.lidihuo")
    @Configuration
    public class ScanComponent
    {
    // ...
    }
    @Bean: 是方法级的注解。它是XML 标记的替代方法。它告诉产生由Spring Container管理的bean的方法。
    示例
    @Bean
    public BeanExample beanExample() 
    {
    return new BeanExample ();
    }
    Spring Framework构造型注解
    @Component: 。它是一个类级别的注解。它用于将Java类标记为Bean。在类路径中找到了一个用 @Component 注解的Java类。 Spring框架将其拾取并在应用程序上下文中将其配置为 Spring Bean 。
    示例
    @Component
    public class Student
    {
    .......
    }
    @Controller: @Controller是类级别的注解。它是 @Component 的专业化。它将一个类标记为Web请求处理程序。它通常用于服务网页。默认情况下,它返回一个字符串,该字符串指示要重定向的路由。它通常与 @RequestMapping 注解一起使用。
    示例
    @Controller
    @RequestMapping("books")
    public class BooksController 
    {
    @RequestMapping(value = "/{name}", method = RequestMethod.GET)
    public Employee getBooksByName() 
    {
    return booksTemplate;
    }
    }
    @Service: 也用于类级别。它告诉Spring该类包含 业务逻辑。
    示例
    package com.lidihuo;
    @Service
    public class TestService
    {
    public void service1()
    {
    //business code
    }
    }
    @Repository: 这是一个类级别的注解。该存储库是直接访问数据库的 DAO (数据访问对象)。该存储库执行与数据库有关的所有操作。
    package com.lidihuo;
    @Repository 
    public class TestRepository
    {
    public void delete()
    {   
    //persistence code
    }
    }
    Spring Boot注解
    @EnableAutoConfiguration: : 它自动配置类路径中存在的bean,并将其配置为运行方法。在Spring Boot 1.2.0发行版中减少了使用此批注,因为开发人员提供了该批注的替代方法,即 @SpringBootApplication 。
    @SpringBootApplication: : 它是三个注解 @ EnableAutoConfiguration,@ ComponentScan,和 @Configuration 的组合。
    Spring MVC和REST注解
    @RequestMapping: 用于映射网络请求。它具有许多可选元素,例如 consumes, header, method, name, params, path, produces和value。我们将其与类以及方法一起使用。
    示例
    @Controller
    public class BooksController 
    {
    @RequestMapping("/computer-science/books")
    public String getAllBooks(Model model)
    {
    //application code
    return "bookList";
    }
    @GetMapping: 它将 HTTP GET 请求映射到特定的处理程序方法。它用于创建提取的Web服务终结点,而不是使用 @RequestMapping(method = RequestMethod.GET)
    @PostMapping 它将 HTTP POST 请求映射到特定的处理程序方法。它用于创建创建的Web服务终结点,而不是使用: @RequestMapping(method = RequestMethod.POST)
    @PutMapping: 它将 HTTP PUT 请求映射到特定的处理程序方法。它用于创建创建或更新的Web服务终结点,而不是使用: @RequestMapping(method = RequestMethod.PUT)
    @DeleteMapping: 它将 HTTP DELETE 请求映射到特定的处理程序方法。它用于创建删除资源的Web服务终结点。使用它而不是使用: @RequestMapping(method = RequestMethod.DELETE)
    @PatchMapping: 它将 HTTP PATCH 请求映射到特定的处理程序方法。使用它代替使用: @RequestMapping(method = RequestMethod.PATCH)
    @RequestBody: 用于将HTTP请求与方法参数中的对象绑定。在内部,它使用 HTTP MessageConverters 转换请求的正文。当我们用 @RequestBody注解方法参数时,Spring框架会将传入的HTTP请求主体绑定到该参数。
    @ResponseBody: 它将方法返回值绑定到响应主体。它告诉Spring Boot Framework将返回的对象序列化为JSON和XML格式。
    @PathVariable: 用于从URI中提取值。它最适合RESTful Web服务,其中URL包含路径变量。我们可以在一个方法中定义多个@PathVariable。
    @RequestParam: 用于从URL提取查询参数。也称为查询参数。它最适合Web应用程序。如果URL中不存在查询参数,则可以指定默认值。
    @RequestHeader: 用于获取有关HTTP请求标头的详细信息。我们将此注解用作方法参数。注解的可选元素是名称,必填,值,defaultValue。 对于标题中的每个细节,我们应指定单独的注解。我们可以在一种方法中多次使用它
    @RestController: 可以将其视为 @Controller 和 @ResponseBody 注解的组合。 @RestController注解本身使用@ResponseBody注解进行注解。无需使用@ResponseBody注解每个方法。
    @RequestAttribute: 它将方法参数绑定到请求属性。它提供了从控制器方法方便地访问请求属性的方法。借助@RequestAttribute批注,我们可以访问服务器端填充的对象。
  • 相关阅读:
    PHP cURL 应用
    CURL的学习和应用
    PHP中使用cURL实现Get和Post请求的方法
    免费的论文查重网站
    免费的论文查重网站
    初识MFC学习——Hello World
    N皇后问题--回溯法
    c/c++工程中外部头文件及库添加方法
    WinDriver&PCIE
    初识-----基于Socket的UDP和TCP编程及测试代码
  • 原文地址:https://www.cnblogs.com/tszr/p/15142337.html
Copyright © 2011-2022 走看看