使用 Spring Data JPA 时如何捕捉实体的增删改操作?
在 Spring Boot 工程中,若选用的持久化层框架是 JPA,那么要想捕捉所有实体的增删改操作,该怎么实现呢?
下面给一个具体点的需求,然后我们来探讨如何实现:「假设我们要实现一个实体(表)操作监控模块,即捕获 Spring Boot 应用程序中所有实体的变更(包括增、删、改)操作,然后将这些操作记录到一张表中。」
阅读更多在 Spring Boot 工程中,若选用的持久化层框架是 JPA,那么要想捕捉所有实体的增删改操作,该怎么实现呢?
下面给一个具体点的需求,然后我们来探讨如何实现:「假设我们要实现一个实体(表)操作监控模块,即捕获 Spring Boot 应用程序中所有实体的变更(包括增、删、改)操作,然后将这些操作记录到一张表中。」
阅读更多在基于 Spring Boot 的业务开发中,我们有时会遇到这样的场景:即定义了一个通用接口,而该接口拥有多个实现类。在调用这些实现类时,我们通常需要编写一个工厂方法,该工厂方法可以根据指定的参数获取到对应的实现类。 那么,提供该工厂方法的类就是一个服务工厂,本文即是探讨如何优雅的编写这个服务工厂。
阅读更多本人在对 Spring Data Neo4j 的实际使用中,发现一个问题,即:配置自定义 TransactionManager
后,指定 spring.data.neo4j.database
会报错。本文特对该问题进行记录、分析和解决,以给面临相同问题的朋友作参考。
本文将以实例的方式探索「如何使用 Spring Data 同时访问 MySQL 和 Neo4j 数据库?」,涉及 Spring Boot 中多个数据源的配置、多个事务的配置,以及多组 Repository 的使用。
阅读更多上文「Neo4j 初探」介绍了 Neo4j 的基本概念,并对 Neo4j 进行了初步使用。本文则关注如何使用 Spring Data Neo4j 访问 Neo4j 数据库?Spring Data Neo4j 是 Spring Data 项目的一部分,它简化了与 Neo4j 图形数据库的交互。Spring Data Neo4j 除了可以通过 Repository 的方式轻松实现常见的 CRUD 操作外,还支持事务管理、Cypher 查询和图数据建模等特性。
阅读更多博友圈 v1 版本(源码:boyouquan)是一个集前后端为一体的 Java 应用程序,其使用 Maven 管理,使用了 Spring Boot + Thymeleaf + MyBatis 技术,其中 Thymeleaf 负责页面渲染。
而本次改造后的 v2 版本(前端源码:boyouquan-ui,后端源码:boyouquan-api)则将博友圈单体项目进行了前后端分离。前端使用了 React 框架;后端依然使用 Spring Boot + MyBatis 框架,但去除了 Thymeleaf 渲染页面的部分,使得后端变为了一个纯净的 REST API 提供者。
本文即重点介绍一下博友圈 v2 版本的前端、后端技术架构,以及部署架构。
阅读更多