《Spring Data实战》——2.4 IDE集成

简介: 在3.0版本中,Spring工具套件(Spring Tool Suite,STS)提供了与Spring Data Repository抽象进行集成的功能。STS为Spring Data所提供的核心支持是查找方法的查询衍生机制。

本节书摘来自异步社区《Spring Data实战》一书中的第2章,第2.4节,作者: 【美】Mark Pollack , Oliver Gierke , Thomas Risberg , Jon Brisbin , Michael Hunger著,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.4 IDE集成

在3.0版本中,Spring工具套件(Spring Tool Suite,STS)提供了与Spring Data Repository抽象进行集成的功能。STS为Spring Data所提供的核心支持是查找方法的查询衍生机制。它所能做到的第一件事就是在IDE中校验衍生查询方法的正确性,这样,不需要启动ApplicationContext就能立刻探测出方法名中引入的拼写错误。

如图2-1所示,IDE检测到Descrption是非法的,因为Product类中并没有这样的属性。为了发现这些拼写错误,它会分析Product领域类(这些事情在启动Spring Data Repository时也会做)来获取属性并将方法名解析为属性的遍历树。为了尽早避免这种类型的拼写错误,STS的Spring Data辅助功能为属性名、条件关键字(criteria keyword)以及像And和Or这样的连接符提供了代码补全功能,如图2-2所示。

screenshot

图2-1 Spring Data STS对衍生查询方法名进行校验

screenshot

图2-2 对衍生查询方法的属性代码补全提示

Order类中有一些你可能想要引用的属性。假设我们要遍历billingAddress属性,Cmd+Space(或者在Windows中使用Ctrl+Space组合键)将会触发嵌套属性的遍历,这样将会提示出嵌套的属性并根据此时所遍历的属性类型提示所匹配的关键字(如图2-3所示)。因此,String类型的属性将会多一个Like的提示。

screenshot

图2-3 嵌套属性和关键字提示

为了提供一些锦上添花的特性,Spring Data STS会将Repository作为IDE导航中的一等公民,使其带有众所周知的Spring Bean标识。除此之外,导航中的Spring元素(Spring Elements)节点将会包含一个专有的Spring Data Repositories节点,用来放置应用程序中所配置的所有Repository,如图2-4所示。

screenshot

图2-4 在STS中,具备Spring Data支持的Eclipse项目资源管理器

可以看到,你能够快速找到Repository接口并跟踪它实际上来源于哪一个配置元素。

2.4.1 Intelli IDEA
最后,启用JPA支持后,IDEA提供了Repository查找方法的补全功能,这种补全涵盖了衍生的属性名以及可用的关键字,如图2-5所示。

screenshot

图2-5 在IDEA编辑器中,查询方法的补全功能

相关文章
|
2月前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
205 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
6天前
|
监控 Java Nacos
使用Spring Boot集成Nacos
通过上述步骤,Spring Boot应用可以成功集成Nacos,利用Nacos的服务发现和配置管理功能来提升微服务架构的灵活性和可维护性。通过这种集成,开发者可以更高效地管理和部署微服务。
83 17
|
23天前
|
存储 JavaScript 开发工具
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
本次的.HarmonyOS Next ,ArkTS语言,HarmonyOS的元服务和DevEco Studio 开发工具,为开发者提供了构建现代化、轻量化、高性能应用的便捷方式。这些技术和工具将帮助开发者更好地适应未来的智能设备和服务提供方式。
57 8
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
|
8天前
|
缓存 安全 Java
Spring Boot 3 集成 Spring Security + JWT
本文详细介绍了如何使用Spring Boot 3和Spring Security集成JWT,实现前后端分离的安全认证概述了从入门到引入数据库,再到使用JWT的完整流程。列举了项目中用到的关键依赖,如MyBatis-Plus、Hutool等。简要提及了系统配置表、部门表、字典表等表结构。使用Hutool-jwt工具类进行JWT校验。配置忽略路径、禁用CSRF、添加JWT校验过滤器等。实现登录接口,返回token等信息。
155 12
|
7天前
|
人工智能 安全 Dubbo
Spring AI 智能体通过 MCP 集成本地文件数据
MCP 作为一款开放协议,直接规范了应用程序如何向 LLM 提供上下文。MCP 就像是面向 AI 应用程序的 USB-C 端口,正如 USB-C 提供了一种将设备连接到各种外围设备和配件的标准化方式一样,MCP 提供了一个将 AI 模型连接到不同数据源和工具的标准化方法。
|
14天前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
60 8
|
1月前
|
XML Java API
Spring Boot集成MinIO
本文介绍了如何在Spring Boot项目中集成MinIO,一个高性能的分布式对象存储服务。主要步骤包括:引入MinIO依赖、配置MinIO属性、创建MinIO配置类和服务类、使用服务类实现文件上传和下载功能,以及运行应用进行测试。通过这些步骤,可以轻松地在项目中使用MinIO的对象存储功能。
101 5
|
2月前
|
消息中间件 Java Kafka
什么是Apache Kafka?如何将其与Spring Boot集成?
什么是Apache Kafka?如何将其与Spring Boot集成?
92 5
|
2月前
|
消息中间件 Java Kafka
Spring Boot 与 Apache Kafka 集成详解:构建高效消息驱动应用
Spring Boot 与 Apache Kafka 集成详解:构建高效消息驱动应用
72 1
|
2月前
|
消息中间件 监控 Java
您是否已集成 Spring Boot 与 ActiveMQ?
您是否已集成 Spring Boot 与 ActiveMQ?
67 0

热门文章

最新文章