文章分类: 编程
编程

如何使用 Hibernate 实现软删除

161 2024-06-19 02:50:00

某些应用中,你不希望或不允许从数据库中永久删除记录。但仍然需要删除或隐藏不再活动的记录。一个例子可能是想要保留的用户帐户,因为它链接到仍在使用的其他业务对象。你有两个基本选项可以将这些信息保存在系统中。你可以保留记录所有更改的审核日志,也可以执行隐藏已删除记录的软删除。我在关于Hibernate Envers 的文章中解释了审计日志选项。今天,我想展示如何使...

详情...
编程

Lombok & Hibernate: 如何避免常见的陷阱

152 2024-06-18 19:46:00

Lombok 是 Java 开发人员中流行的框架,因为它生成重复的样板代码,如 getter 和 setter 方法、equals 和 hashCode 方法以及默认构造函数。你所需要做的就是向类中添加一些注释,Lombok 将在编译时添加所需的代码。这对于普通类来说效果相当好,但如果将其用于 Hibernate 实体,则会引入一些危险的陷阱。为了避免这些陷...

详情...
编程

Lombok 项目介绍

176 2024-06-15 17:29:00

Java 是一种很棒的语言,但对于我们在代码中必须执行的常见任务或遵守某些框架实践来说,它有时会变得过于冗长。这通常不会给我们项目的商业方面带来任何真正的价值,而这正是 Lombok 让我们更有效率的地方。它的工作方式是嵌入到我们的编译过程,并根据我们在代码中引入的诸多项目注释,将 Java 字节码自动生成到 .class 文件中。将它引入...

详情...
编程

TIOBE 编程语言排名: 2024 年 6 月

922 2024-06-14 10:23:00

6 月头条:C++ 排名历史上首次超过 C。C++ 是 TIOBE 指数排名中的第二名。最初,它被称为更好的面向对象的 C 版本,在 C++ 诞生后花了 39 年的时间才击败了 C。C++ 在 TIOBE 指数中从未如此之高,而 C 从未如此之低。从 2011年起,C++ 开始了新的生命,它持续3年更新一次。尽管大多数编译器和大多数工程师都无法跟上这一步伐,但...

详情...
编程

Git Squash 用法

180 2024-06-13 09:03:00

在开发一个功能的时候会反复的提交代码,会造成一个功能有很多次提交,在我们要向 mian 做分支合并的时候,就会出现很多 commits,在合并以后同一个功能的 commits 就会很多,导致我们无法清晰的知道这个功能关联的 commit 有哪些,这个 squash 就是优化我们的 commits 信息,让我们的版本仓库看起来简洁明了,功能点一目了...

详情...
编程

Laravel 底层 - 扩展框架

179 2024-06-12 00:32:00

几天前,我正在修复一个不稳定的测试,结果发现我的工厂需要一些 unique 和 valid 值。Laravel 封装了 FakerPHP,我们通常通过 fake() 助手来访问它。FakerPHP 附带了 valid() 和 unique() 等修饰符,但你一次只能使用一个,所以不能执行 fake()->unique()->valid(),这正是我...

详情...
编程

构建可维护的 PHP 应用:思考数据与思考业务流程

176 2024-06-11 01:27:00

互联网上的大多数教程以及其他正规或非正规教育,都教会开发人员如何用 CRUD 思维构建项目,CRUD 思维高度技术化,专注于数据操作,类似于 Excel 的发明初衷,几十年来一直在做它的工作。这是可以理解的,因为编程的入门材料需要简单易用。不要误解我的意思,作为一个起点,内容对初学者来说很好,但当构建真实世界的项目时,它们比学习材料中显示的更复杂。如果你真的...

详情...
编程

在 PHP 中使用 ScraperAPI 爬取 Google 网页搜索

183 2024-06-10 01:23:00

当你手动做事时,在网上抓取数据是一个令人厌烦的过程。例如,如果碰巧使用 PHP 进行操作,则需要执行以下步骤。使用 file_get_contents() 函数获取网站内容使用 DOMDocument 类解析内容然后使用 loadHTML()函数加载数据最后,使用 getElementsByTagName() 函数遍历 DOM 树虽然这是有效的,但这是一个乏...

详情...
编程

Laravel Collections 新增的 select 方法

175 2024-06-08 02:27:00

还记得 Laravel Collections 中 only 方法吗,它允许你从集合中检索项目子集,例如,如果有一个这样的数据数组。$collection = collect([ 'name' => 'Amit', 'age' => 30, 'city' =>'Surat',...

详情...
编程

Java 哈希密码

188 2024-06-06 00:37:00

本教程中,我们将讨论密码哈希的重要性。我们将快速了解它是什么,为什么它很重要,以及在 Java 中实现它的一些安全和不安全的方法。哈希(Hash)是使用称为加密哈希函数的数学函数从给定消息生成字符串或哈希的过程。虽然有几种哈希函数,但那些为哈希密码量身定制的函数需要具有四个主要属性才能安全:...

详情...