Spring的学习
由于之前我使用的是csdn书写的博客,所以有一部分的笔记书写在了上面
在Spring Boot中,Web开发涉及几个基本的注解,这些注解用于定义控制器、请求映射、请求参数处理等。以下是几个最基本的注解及其含义:
@RestController
含义:这是一个组合注解,结合了
@Controller
和@ResponseBody
。它用于标记类为RESTful控制器,表示该类的所有方法都将返回JSON或XML格式的数据,而不是视图。示例:
1
2
3
4
5
6
7
public class HelloController {
public String sayHello() {
return "Hello, World!";
}
}
@RequestMapping
- 含义:用于映射HTTP请求到处理器方法。可以指定请求路径、请求方法(如GET、POST)、请求参数、请求头等。
- 示例:
1
2
3
4
5
6
7
public class HelloController {
public String sayHello() {
return "Hello, World!";
}
}
@GetMapping
- 含义:专门用于处理HTTP GET请求的注解。它是
@RequestMapping(method = RequestMethod.GET)
的简写形式。 - 示例:
1
2
3
4
5
6
7
public class HelloController {
public String sayHello() {
return "Hello, World!";
}
}
- 含义:专门用于处理HTTP GET请求的注解。它是
@PostMapping
含义:专门用于处理HTTP POST请求的注解。它是
@RequestMapping(method = RequestMethod.POST)
的简写形式。示例:
1
2
3
4
5
6
7
public class HelloController {
public String handlePostRequest( { String body)
return "Received POST request with body: " + body;
}
}
@RequestParam
- 含义:用于将请求参数绑定到方法参数上。可以指定参数的名称、是否必需、默认值等。
- 示例:
1
2
3
4
5
6
7
public class HelloController {
public String greet( { String name)
return "Hello, " + name + "!";
}
}
@PathVariable
- 含义:用于将URL中的占位符绑定到方法参数上。常用于RESTful风格的URL设计。
- 示例:
1
2
3
4
5
6
7
public class HelloController {
public String greet( { String name)
return "Hello, " + name + "!";
}
}
这些注解是Spring Boot Web开发中最基本的注解,掌握它们可以帮助你快速构建简单的RESTful API。随着项目的复杂度增加,你还可以学习更多高级的注解和功能。
在 Spring Boot 中,Mapper(映射器)、Service(服务)和@Autowired 是三个常用的注解,用于实现数据访问、业务逻辑处理和依赖注入。以下是它们的简要介绍和示例:
@Mapper
:- 作用:将数据访问层(DAO)与业务逻辑层隔离,简化代码结构。
- 示例:在数据访问接口上添加
@Mapper
注解。
Service
:- 作用:定义业务逻辑和服务方法,提供对数据的处理和操作。
- 示例:在业务逻辑类上添加
@Service
注解。
@Autowired
:- 作用:自动注入依赖对象,实现依赖注入。
- 示例:在需要注入依赖的字段或方法上添加
@Autowired
注解。
例如:
1 | public class UserServiceImpl implements UserService { |
在上面的示例中,@Mapper
注解用于将UserMapper
接口标记为数据访问对象。@Service
注解用于将UserServiceImpl
类标记为业务逻辑服务。通过@Autowired
注解,将UserMapper
对象自动注入到UserServiceImpl
类的userMapper
字段中,实现了依赖注入。
这样,你可以在UserServiceImpl
类中直接使用userMapper
进行数据操作,而无需手动创建和管理UserMapper
的实例。