首页 > 其他分享 >Spring Data JPA 的开发神级IDEA插件 -- JPA Buddy

Spring Data JPA 的开发神级IDEA插件 -- JPA Buddy

时间:2023-08-03 17:14:32浏览次数:34  
标签:插件 Buddy JPA 实体 IDEA 属性

1. 概述

JPA Buddy是一个广泛使用的IntelliJ IDEA插件,面向使用JPA数据模型和相关技术(如Spring DataJPA,DB版本控制工具(Flyway,Liquibase),MapStruct等)的新手和有经验的开发人员。该插件提供了可视化设计器、代码生成和其他检查,这些检查应根据 JPA 的最佳实践简化开发并改进代码。

该插件在IntelliJ IDEA的社区和终极版本下工作,并使用“免费增值”模型。大多数功能都是免费提供的,我们需要购买订阅才能访问付费功能。

在本教程中,我们将介绍插件的主要功能,并了解如何在应用程序开发周期中使用它们。例如,我们将使用流行的参考应用程序 - “Spring PetClinic”。

JPA和实体的关联

通常,应用程序开发从数据模型开始。JPA Buddy 提供了一个可视化设计器和组件面板,允许我们创建一个实体并向其添加基本属性和关联。我们可以从上下文菜单或 JPA 结构工具窗口调用相应的操作

如果我们需要添加或编辑实体属性,可以使用 JPA 设置面板。要添加属性,我们需要双击它或执行拖放。可视化编辑器允许我们定义属性属性:

编辑器是双向工作的:当我们更新属性的属性时,代码也会更新。反之亦然,当实体的代码更新时,所有更改都会反映在检查器中。

数据库表生成实体

数据通常比代码更长久,因此当我们在现有数据库上构建 JPA 数据层时,我们需要基于当前表创建 JPA 实体。JPA Buddy 提供了此功能,并允许开发人员以“挑选”的方式创建实体,逐个选择表,

与现有解决方案相比,该插件执行“智能”生成并尝试检测实体之间的关联。即使对于没有列支持的OneToMany和ManyToMore实体,我们也将生成相应的属性:

Lombok支持

根据 JPA 规范,实体应该具有属性的 getter 和 setter,这通常被视为“样板”代码。Lombok是一个流行的库,它允许我们避免编写样板并将其替换为几个注释,JPA Buddy 完全支持它。我们可以在 JPA 检查器中编辑与龙目岛相关的属性:

最后

JPA Buddy 提供了一组强大的工具,使 JPA 开发更容易。该插件的好处是它不仅支持JPA,还支持数据访问层开发中使用的相关库:Spring Data JPA,MapStruct,Lombok和DB版本控制解决方案。

激活

【网站】: jihuo.live (IDEA通用 && 支持离线)

标签:插件,Buddy,JPA,实体,IDEA,属性
From: https://www.cnblogs.com/dc-s/p/17603840.html

相关文章

  • IDEA超强XSD文件编辑插件-XSD / WSDL Visualizer
    前言XSD/WSDLVisualizer可以简化XML架构定义(XSD)和WSDL文件编辑过程;通过使用与IntelliJ无缝集成的可视化编辑器,转换处理XSD和WSDL文件的方式。告别导航复杂和难以阅读的代码的挫败感,迎接流线型和直观的体验。插件安装在线安装IntelliJIDEA可通过在线安装的方式,安装时......
  • IDEA必备插件之Sequence Diagram,你GET了么?
    前言“无论是快速了解业务流程,还是快速的熟悉系统的业务代码逻辑,以及各个类和方法等的调用关系,时序图无疑是其中一种不可获取的简便快捷的方式。一起来了解下,IDEA如何快速生成时序图吧。”工作中,经常需要绘制时序图说明业务流程的设计走向,而逻辑较复杂的时序图,若是单纯的通过人......
  • PlayWright(二十三)- allure插件(二)
    在上文中,我们认识了allure插件,并且也成功使用了,但是感觉少点东西,所以我们再深入挖掘下allure的功能  1.allure增加测试用例详情 1、导入allure模块2、在每条用例函数前加上@allure.title("标题内容")3、正常执行生成allure报告执行结果:2.allure增加测试用例描述用......
  • DevChat VSCode 插件安装配置指南
    PlaythisarticleYourbrowserdoesnotsupporttheaudioelement.SPEED1XTableofcontents快速路径 1.安装Python3环境(3.8或以上)2.安装插件3.设置AccessKey错误排查 1.运行时未就绪2.编码错误3.“可执行权限”......
  • k8s GPU设备插件
    设备插件特性状态: Kubernetesv1.26[stable]Kubernetes提供了一个 设备插件框架,你可以用它来将系统硬件资源发布到 Kubelet。供应商可以实现设备插件,由你手动部署或作为 DaemonSet 来部署,而不必定制Kubernetes本身的代码。目标设备包括GPU、高性能NIC、FPGA、Infi......
  • 采用ComposeUI实现Android插件化
    什么是ComposeJetpackCompose是谷歌官方推荐的AndroidUI实现方式,避免了Android传统View在绘制、编写、性能等方面的种种缺点,具体使用方法请参考官方文档。Compose与插件化想必大家都接触过或者了解过插件化开发,没接触过的小伙伴们要补补课啦。在以往插件化开发过程中,清单文件中要......
  • JPA配置实体时 insertable = false, updatable = false
    @Excel(name="创建时间",format="yyyy-MM-ddHH:mm:ss",width=20)@Column(name="created_time",insertable=false,columnDefinition="timestampdefaultcurrent_timestamp")@Temporal(TemporalType.TIMES......
  • Mybatis Log 插件
    目前的idea插件已经开始收费---找了一个免费的插件安装到idea中重启一下就可以了百度网盘提取码:sjc8......
  • # yyds干货盘点 # 盘点一个可以一键免费下载图片的谷歌插件
    大家好,我是皮皮。一、前言前几天在Python知识星球里边看到【七年】大佬推荐的一个谷歌浏览器插件,可以一键下载浏览器中的图片或者PPT,这里也推荐给大家,一起来看看吧!二、实现过程这个插件是免费的,非常奈斯,但是在谷歌浏览器中下载的时候,需要借助ti子,在谷歌浏览器应用商店里边搜索【图......
  • node封装一个图片拼接插件
    说在前面平时我们拼接图片的时候一般都要通过ps或者其他图片处理工具来进行处理合成,这次有个需求就需要进行图片拼接,而且我希望是可以直接使用代码进行拼接,于是就有了这么一个工具包。插件效果通过该插件,我们可以将图片进行以下操作:1、横向拼接两张图片如下,我们有这么两张......