当前位置: 首页 > news >正文

在俄罗斯用钱让女性做h事情的网站wordpress post模板

在俄罗斯用钱让女性做h事情的网站,wordpress post模板,网站商城的公司运营结构,郑州网站建设tpywlkj一文掌握 Spring Boot 中最常用的 20 个注解,涵盖开发、配置、Web、数据库、测试等场景,配合示例讲解,一站式掌握!📌 一、核心配置类注解 1. SpringBootApplication 作用:标记为 Spring Boot 应用的入口类&…

一文掌握 Spring Boot 中最常用的 20 个注解,涵盖开发、配置、Web、数据库、测试等场景,配合示例讲解,一站式掌握!


📌 一、核心配置类注解

1. @SpringBootApplication

  • 作用:标记为 Spring Boot 应用的入口类,包含了 @Configuration@EnableAutoConfiguration@ComponentScan
  • 使用场景:主启动类上唯一标注一次。
@SpringBootApplication
public class MyApp {public static void main(String[] args) {SpringApplication.run(MyApp.class, args);}
}

🧩 二、组件注册相关注解

2. @Component

  • 作用:声明一个组件,交由 Spring 容器管理。
  • 使用场景:普通工具类、服务类等。
@Component
public class MyUtil {// ...
}

3. @Service

  • 作用:声明业务逻辑层组件。
  • 区别:语义上表示“服务类”,本质还是 @Component
@Service
public class UserService {// ...
}

4. @Repository

  • 作用:声明数据访问层组件,并支持自动异常转换。
  • 使用场景:操作数据库的 DAO 类。
@Repository
public class UserDao {// ...
}

5. @Controller

  • 作用:声明控制器类,处理前端请求。
  • 配套注解:配合 @RequestMapping@GetMapping 等使用。
@Controller
public class HomeController {@GetMapping("/")public String home() {return "index";}
}

6. @RestController

  • 作用:相当于 @Controller + @ResponseBody,返回 JSON 数据。
  • 使用场景:用于 RESTful API。
@RestController
@RequestMapping("/api")
public class UserController {@GetMapping("/users")public List<User> getUsers() {return userService.getAll();}
}

🌐 三、请求映射注解

7. @RequestMapping

  • 作用:用于类或方法上,通用映射。
  • 支持:GET、POST、PUT、DELETE等方式。
@RequestMapping(value = "/user", method = RequestMethod.GET)
public User getUser() {return user;
}

8. @GetMapping / @PostMapping / @PutMapping / @DeleteMapping

  • 作用:简化的 HTTP 方法映射注解。
  • 建议:优先使用这些更语义化的注解。
@GetMapping("/user/{id}")
public User findById(@PathVariable Long id) {return userService.find(id);
}

💾 四、依赖注入注解

9. @Autowired

  • 作用:自动注入 Spring 管理的 Bean。
  • 推荐:构造器注入代替字段注入。
@Autowired
private UserService userService;

10. @Qualifier

  • 作用:解决多个 Bean 注入时的冲突。
  • 配合@Autowired 使用。
@Autowired
@Qualifier("myImpl")
private MyService service;

🏷️ 五、参数绑定注解

11. @RequestParam

  • 作用:绑定 URL 查询参数。
  • 默认:支持设置是否必须。
@GetMapping("/search")
public List<User> search(@RequestParam String keyword) {return userService.search(keyword);
}

12. @PathVariable

  • 作用:绑定路径中的变量。
@GetMapping("/user/{id}")
public User getUser(@PathVariable Long id) {return userService.getById(id);
}

13. @RequestBody

  • 作用:接收 JSON 数据,反序列化为对象。
@PostMapping("/user")
public void saveUser(@RequestBody User user) {userService.save(user);
}

🔒 六、配置与环境注解

14. @Value

  • 作用:读取 application.yml.properties 中的配置项。
@Value("${server.port}")
private int port;

15. @Configuration

  • 作用:标记为配置类,等价于 XML 配置。
@Configuration
public class AppConfig {@Beanpublic MyBean myBean() {return new MyBean();}
}

16. @Bean

  • 作用:向 Spring 容器注册一个 Bean。
  • 配合@Configuration 使用。
@Bean
public RestTemplate restTemplate() {return new RestTemplate();
}

🧪 七、测试相关注解

17. @SpringBootTest

  • 作用:用于 Spring Boot 的集成测试。
@SpringBootTest
public class UserServiceTest {@Autowiredprivate UserService userService;
}

18. @MockBean

  • 作用:用于测试中替换某个 Bean,通常用于 Mock。
@MockBean
private UserRepository userRepository;

✨ 八、数据校验注解(JSR-303)

19. @Valid / @Validated

  • 作用:用于校验请求参数是否合法。
  • 配套注解:配合 @NotNull@Size 等使用。
@PostMapping("/register")
public void register(@Valid @RequestBody User user) {// ...
}

🔄 九、事务管理注解

20. @Transactional

  • 作用:开启事务。
  • 常用属性rollbackFor, readOnly, propagation
@Transactional(rollbackFor = Exception.class)
public void saveData() {// ...
}

✅ 总结表格:注解速查表

注解类型场景特点
@SpringBootApplication启动注解启动类三合一复合注解
@Component通用组件工具类等可被扫描
@Service业务组件Service 层本质是 @Component
@RepositoryDAO组件数据访问自动异常封装
@ControllerWeb 控制器页面跳转搭配模板引擎
@RestControllerAPI 控制器返回 JSON= @Controller + @ResponseBody
@Autowired注入自动注入构造/字段均可
@RequestMapping请求映射多 HTTP 方法可用于类/方法
@GetMapping请求映射精准 HTTP 方法推荐使用
@Value配置读取yml、prop 值注入字符串解析
@Transactional事务管理Service 层原子性保障
@Bean手动注册第三方类自定义 Bean
@Valid / @Validated参数校验表单、实体搭配校验注解
@SpringBootTest测试注解单元/集成测试提供完整容器
@MockBean测试 Mock替换 Bean使用 Mockito

📘 建议收藏:这些注解是你开发 Spring Boot 项目的“基本功”,越熟练越高效!

如果你觉得有帮助,别忘了点赞、收藏和分享~

http://www.dtcms.com/a/605838.html

相关文章:

  • 网站地区分站系统自助注册搭建网站
  • 自适应残差卷积网络 + 斑马优化:让图像更清晰的“智慧组合“
  • 图形化android可视化开机观测工具bootchart
  • 网站建设网站推广服务公司阿里云买域名
  • 时间复杂度(按增长速度从低到高排序)包括以下几类,用于描述算法执行时间随输入规模 n 增长的变化趋势:
  • 免费如何做网页或网站asp网站部署
  • 基于YOLO11-Hyper的油罐车类型识别与状态检测系统_1
  • 时间的幻觉:当你不在时,宇宙按下暂停键
  • AI入门知识之RAG技术树全景解析:从基础架构到智能演进的演进路径
  • 做网站的数据库万维设计
  • 马尾网站建设郑州网络推广哪家厉害
  • 【Java SE 基础学习打卡】13 Java 开发工具
  • 【文献阅读】网络复杂系统演化历史的重建
  • 编译型语言的两个步骤 | 了解编译与执行过程
  • 基于FP7153的超小封装5V/3A自行车车灯驱动方案
  • Rust入门:运算符和数据类型应用
  • 易语言DLL反编译 | 深入解析反编译技术与应用
  • 官方网站建设有限公司百度推广关键词排名在哪看
  • 有什么办法做自己的网站成都哪些地方好玩
  • 自适应导航网站模板电商网站建设技术员的工作职责
  • Prompts for Chat Models in LangChain
  • 【音视频】AI自适应均衡器的调节精度提升方法
  • vscode编译C语言 | 在VSCode中配置编译环境与常见问题解决
  • 「腾讯云NoSQL」技术之向量数据库篇:腾讯云向量数据库如何实现召回不变,成本减半?
  • Window系统,Unity编辑器中播放HEVC/H265编码的视频报错问题:WindowsVideoMedia error OxcOOdOO1a
  • 专业集团门户网站建设重庆网站备案必须到核验点
  • PotPlayer播放器下载安装教程 - 媒体观影神器
  • 仿生机器人的SLAM导航
  • Sequelize vs Prisma:现代 Node.js ORM 深度技术解析与实战指南
  • 中国关键词网站广告公司注册条件