来详细讲解一下SpringBoot中常用注解及各种注解作用的攻略。
1. @SpringBootApplication
这是一个复合注解,包含了@Configuration
、@EnableAutoConfiguration
和@ComponentScan
三个注解。
@Configuration
:表示这是一个配置类,可以用来替代xml配置文件。@EnableAutoConfiguration
:表示开启SpringBoot的自动配置功能。@ComponentScan
:表示扫描指定包及其子包下的所有类,并加入Spring容器中。
示例代码:
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
2. @RestController
这个注解用于标识一个Controller处理RESTful请求。
示例代码:
@RestController
public class UserController {
@GetMapping("/users")
public List<User> getUsers() {
return userService.getUsers();
}
}
3. @GetMapping
这个注解用于处理HTTP GET请求。
示例代码:
@RestController
public class UserController {
@GetMapping("/users")
public List<User> getUsers() {
return userService.getUsers();
}
}
4. @PostMapping
这个注解用于处理HTTP POST请求。
示例代码:
@RestController
public class UserController {
@PostMapping("/users")
public User addUser(@RequestBody User user) {
return userService.addUser(user);
}
}
5. @PutMapping
这个注解用于处理HTTP PUT请求。
示例代码:
@RestController
public class UserController {
@PutMapping("/users/{id}")
public User updateUser(@PathVariable("id") Long id, @RequestBody User user) {
return userService.updateUser(id, user);
}
}
6. @DeleteMapping
这个注解用于处理HTTP DELETE请求。
示例代码:
@RestController
public class UserController {
@DeleteMapping("/users/{id}")
public void deleteUser(@PathVariable("id") Long id) {
userService.deleteUser(id);
}
}
7. @PathVariable
用于获取请求URL中的参数值。
示例代码:
@RestController
public class UserController {
@GetMapping("/users/{id}")
public User getUserById(@PathVariable("id") Long id) {
return userService.getUserById(id);
}
}
8. @RequestParam
用于获取请求参数的值。
示例代码:
@RestController
public class UserController {
@GetMapping("/users")
public List<User> getUsers(@RequestParam("gender") String gender) {
return userService.getUsersByGender(gender);
}
}
9. @RequestBody
用于将请求参数转换为对象。
示例代码:
@RestController
public class UserController {
@PostMapping("/users")
public User addUser(@RequestBody User user) {
return userService.addUser(user);
}
}
10. @ConfigurationProperties
用于将配置文件中的属性注入到Java对象中。
示例代码:
@ConfigurationProperties(prefix = "demo")
public class DemoProperties {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
以上就是SpringBoot中常用注解及各种注解作用的完整攻略了。希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot 中常用注解及各种注解作用 - Python技术站