​ 由于之前我使用的是csdn书写的博客,所以有一部分的笔记书写在了上面

文章地址

在Spring Boot中,Web开发涉及几个基本的注解,这些注解用于定义控制器、请求映射、请求参数处理等。以下是几个最基本的注解及其含义:

  1. @RestController

    • 含义:这是一个组合注解,结合了@Controller@ResponseBody。它用于标记类为RESTful控制器,表示该类的所有方法都将返回JSON或XML格式的数据,而不是视图。

    • 示例

      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @RequestMapping("/hello")
      public String sayHello() {
      return "Hello, World!";
      }
      }
  2. @RequestMapping

    • 含义:用于映射HTTP请求到处理器方法。可以指定请求路径、请求方法(如GET、POST)、请求参数、请求头等。
    • 示例
      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @RequestMapping(value = "/hello", method = RequestMethod.GET)
      public String sayHello() {
      return "Hello, World!";
      }
      }
  3. @GetMapping

    • 含义:专门用于处理HTTP GET请求的注解。它是@RequestMapping(method = RequestMethod.GET)的简写形式。
    • 示例
      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @GetMapping("/hello")
      public String sayHello() {
      return "Hello, World!";
      }
      }
  4. @PostMapping

    • 含义:专门用于处理HTTP POST请求的注解。它是@RequestMapping(method = RequestMethod.POST)的简写形式。

    • 示例

      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @PostMapping("/hello")
      public String handlePostRequest(@RequestBody String body) {
      return "Received POST request with body: " + body;
      }
      }
  5. @RequestParam

    • 含义:用于将请求参数绑定到方法参数上。可以指定参数的名称、是否必需、默认值等。
    • 示例
      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @GetMapping("/greet")
      public String greet(@RequestParam String name) {
      return "Hello, " + name + "!";
      }
      }
  6. @PathVariable

    • 含义:用于将URL中的占位符绑定到方法参数上。常用于RESTful风格的URL设计。
    • 示例
      1
      2
      3
      4
      5
      6
      7
      @RestController
      public class HelloController {
      @GetMapping("/greet/{name}")
      public String greet(@PathVariable String name) {
      return "Hello, " + name + "!";
      }
      }

这些注解是Spring Boot Web开发中最基本的注解,掌握它们可以帮助你快速构建简单的RESTful API。随着项目的复杂度增加,你还可以学习更多高级的注解和功能。

在 Spring Boot 中,Mapper(映射器)、Service(服务)和@Autowired 是三个常用的注解,用于实现数据访问、业务逻辑处理和依赖注入。以下是它们的简要介绍和示例:

  1. @Mapper

    • 作用:将数据访问层(DAO)与业务逻辑层隔离,简化代码结构。
    • 示例:在数据访问接口上添加@Mapper注解。
  2. Service

    • 作用:定义业务逻辑和服务方法,提供对数据的处理和操作。
    • 示例:在业务逻辑类上添加@Service注解。
  3. @Autowired

    • 作用:自动注入依赖对象,实现依赖注入。
    • 示例:在需要注入依赖的字段或方法上添加@Autowired注解。

例如:

1
2
3
4
5
6
7
8
9
public class UserServiceImpl implements UserService {

@Autowired
private UserMapper userMapper;

public void saveUser(User user) {
userMapper.insert(user);
}
}

在上面的示例中,@Mapper注解用于将UserMapper接口标记为数据访问对象。@Service注解用于将UserServiceImpl类标记为业务逻辑服务。通过@Autowired注解,将UserMapper对象自动注入到UserServiceImpl类的userMapper字段中,实现了依赖注入。

这样,你可以在UserServiceImpl类中直接使用userMapper进行数据操作,而无需手动创建和管理UserMapper的实例。