自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(165)
  • 资源 (3)
  • 收藏
  • 关注

原创 java 校验框架 - Bean Validation 级联校验

简单理解就是对于一个校验类中还存在其他校验。以Order 类为例,如果它的内部还有一个 Bean, 且该 Bean 不能未空,或者它内部的属性也需要被校验,这就是一种级联校验。级联校验主要通过@Valid来实现的。

2024-03-25 21:18:47 250 1

原创 java 校验框架 - Bean Validation 分组校验

Order是一个实体,且在内部定义了分组接口Add和Update。// 定义分组标识接口 add 操作// 定义分组标识接口 update 操作@Null(groups = Add.class) // add 分组@NotNull(message="订单号不能为空", groups = Update.class) // update 分组@NotNull(message = "下单用户不能未空")...

2024-03-25 21:08:25 301 1

原创 修改 MySQL update_time 默认值的坑

由于按规范需要对 update_time 字段需要对它做默认值的设置。表里的数据 update_time 字段真的有 NULL 的情况。

2024-03-15 19:03:21 405 1

原创 java 校验框架 - Bean Validation

Bean Validation 是一套用于 Java Bean 验证的规范,它定义了一组标准的验证注解,用于验证 Java Bean 的属性值是否符合指定的约束条件。Web 开发:用于验证表单提交的数据服务端开发:用于验证服务端请求参数数据持久化:用于验证数据库操作参数大家可以先测试用起来,有些配置或者使用方式可以一起探索。后面我们再尝试在实际场景中使用它。

2024-03-06 22:43:27 385

原创 读写 Excel - 希望你知道 EasyExcel

曾经我们使用 Apache POI 或 JXL 来处理 excel,使用过的人都知道它们上手有多难,今天就让你见识一个简单的不能再简单的工具 -EasyExcel, 至少我认为它是真的简单。官方网站:https://easyexcel.opensource.alibaba.com/github地址:https://github.com/alibaba/easyexcelgitee地址:https://gitee.com/easyexcel/easyexcel。

2024-03-04 17:10:31 797

原创 Maven 插件之 maven-enforcer-plugin 解决冲突重复依赖

在项目构建时,通过规则来约束项目配置,如jdk 、maven 版本,是否有重复的类,文件编码,文件大小等等,且规则是可以自己扩展的。maven 项目种经常出现 jar 包冲突、重复依赖、无效引用怎么办,maven-enforcer-plugin 了解一下。提供了管控一系列环境约束的目标,包括但不限于Maven版本、JDK版本和操作系统家族等多个内置规则以及用户自定义规则。结果输出,可重点关注 Duplicat classes 部分。重复的pom 依赖配置 输出结果。更多使用欢迎大家一起来发掘探讨。

2024-02-27 14:48:47 1463

原创 Maven插件之 maven-dependency-plugin 分析依赖复制文件

Apache Maven Dependency Plugin是Apache Maven构建工具的一个插件,用于管理项目的依赖项。该插件提供了一系列目标(goals),可用于解决和处理项目的依赖关系。dependency:copy:将项目依赖的文件复制到指定的目录。dependency:tree:以树形结构打印项目依赖关系,显示依赖树。dependency:resolve:解析并下载项目的依赖项。dependency:list:列出项目的所有依赖项。

2024-02-27 10:23:32 646

原创 Maven jar 的查找及依赖版本确定

maven 依赖的 jar 查找,版本确认,依赖兼容性

2024-02-26 19:03:33 857 1

原创 Springboot 使用小记-集成 MyBatis 多数据源配置实现读写分离

Springboot 集成 MyBatis,在纯血 Springboot 项目中增加如下依赖配置多数据的使用

2024-02-26 17:41:34 549 1

原创 eDEX-UI 圆你黑客梦

现在一款圆你黑客梦的终端来了,虽然它已很久不更新,但是还是值得一试。eDEX-UI 是一款全屏、跨平台的终端模拟器和系统监控工具,其外观和交互体验犹如科幻电影中的计算机界面。

2024-02-23 17:56:39 356 1

原创 Springboot 使用升级小记-MVC path

Spring 5 引入了一个用于解析 URI 模板模式的新PathPatternParser。这是对先前所使用的 AntPathMatcher 的一个替代方案。AntPathMatcher 是实现 Ant 风格路径模式匹配的工具,而PathPatternParser 则将路径分解为一个由 PathElements 构成的链表。这一系列 PathElements 由 PathPattern 类接收,以快速匹配相应的模式。在 PathPatternParser 中,还引入了对新URI变量语法的支持。

2024-02-23 14:21:13 569 1

原创 Springboot 使用升级小记-循环依赖

这里再啰嗦一下,spring 一直不建议循环依赖,但是没办法还得兼容,这次 springboot2.6 这个版本直接给禁用了,你要使用要么去掉循环依赖,要么使用兼容配置。其他解决方案:https://medium.com/@karthik.jeyapal/circular-dependency-in-spring-boot-how-to-detect-and-fix-it-2a6e64bb488f。这时直接修改依赖启动就会报错,主要是提示循环依赖的问题,这里就不贴代码了,大致是这样的错误。

2024-02-22 19:24:42 507 1

原创 体验浏览器公司出品的浏览器

说实话,简洁有点不太适应了。打开设置可以根据自己的需要调整一些主题、快捷键 或者安全性的设置。当然也可以打开扩展设置,实际和 chrome 的设置就非常一样了,我觉的应该是基于 Chromium (待证实)最重要的是,当你安装完按向导设置导入 chrome 信息时会把 chrome 安装的插件也一并导入进来了,是不是很 nice目前已发布了 mac 版和 iOS 版(App Store 搜索 arc search),windows 目前只限教育邮箱申请试用,android 用户可能要等一等。

2024-02-22 18:21:58 369 1

原创 给每个努力奋斗坚持不懈的朋友

你不是一个人在战斗 不要害怕失去 人生就像一部电影,重要的是你是那个最重要的角色

2024-02-20 17:57:57 528 1

原创 用 AI 帮助你提高编码效率 - 通义灵码

官网:https://tongyi.aliyun.com/lingma/介绍:https://top.aibase.com/tool/tongyilingma总体上使用起来还是不错的,能极大提高编码效率。可以生成注释可以解释代码,这个不建议特别依赖,至少当前不完全可靠可优化代码,给出一些建议,建议还可以,就是偶尔有 bug目前存在 bug,希望越来越好。

2024-02-20 14:48:26 334 1

原创 Docker mysql 时区设置

在宿主机创建配置文件,比如 /path/to/my.cnf ,并在其中加入如下内容:[mysqld]启动时挂载配置文件。

2024-02-18 21:00:00 587

原创 面对强盗思维,我们该怎么办

你一定要好好学习,如果不好好学习,就上不了好学校,上不了好学校就找不到好工作,找不到好工作就只能当乞丐,你现在不学习,难道想以后当乞丐吗?“这是我最喜欢吃的东西,你怎么可能不爱吃?“我朋友家孩子都结婚了,你也该结婚。“这个都是书上写的,能有错吗?“他已经道歉了,你就原谅他吧。“她不喜欢我,那就是恨我。“是中国人就必须转发起来。

2024-01-29 16:08:24 324

原创 git clone --depth=1 后无法切换到其他分支

以切换 Test_dev_1 为例,执行 git checkout Test_dev_1 ,时出现提示。为什么这样 clone,是因为我们想快速把代码 clone 下来,并且只是看看学习学习。这个命令就是 clone 最近一次提交的代码,所以会很快。在使用 git 时,有时我们会像这样 clone 代码。这时可以通过如下方式来解决。

2024-01-29 15:55:11 450

原创 idea 中的@value 无法跳转到配置的值

当你在使用 idea 开发 spring 项目时,如果你使用的是现在流行的 maven 项目,我猜如果使用 gradle 的也类似。那么我们在配置文件中配置的值,可以通过 spring 的@Value 这个注解获取到值,也就是你能在项目使用@Value 的地方,如下图,这里应该会显示个正常的值这里没用正常显示,我觉得我这个项目是不正常的。通过设置 idea 提供的 Mark Directo...

2023-09-27 16:29:00 150

原创 刷刷刷 Day 40 | 96. 不同的二叉搜索树

96. 不同的二叉搜索树LeetCode题目要求给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。示例输入:n = 3输出:5解题思路五部曲1、确定数组 dp[i],从 1 到 i 为节点组成二叉搜索树的个数2、递推公式 dp[i] += dp[j - 1] * dp[i - j]3、初始...

2023-03-01 21:45:00 28

原创 刷刷刷 Day 40 | 343. 整数拆分

343. 整数拆分LeetCode题目要求给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。返回 你可以获得的最大乘积 。示例1输入: n = 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例2输入: n = 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。解...

2023-03-01 21:13:00 9

原创 刷刷刷 Day 39 | 63. 不同路径 II

63. 不同路径 IILeetCode题目要求一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。示例输入:obstacl...

2023-02-28 21:36:00 11

原创 刷刷刷 Day 39 | 62. 不同路径

62. 不同路径LeetCode题目要求一个机器人位于一个 m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> ...

2023-02-27 22:45:00 8

原创 刷刷刷 Day 38 | 746. 使用最小花费爬楼梯

746. 使用最小花费爬楼梯LeetCode题目要求给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。示例1输入:cost = [10,15,20]输出:15解释:你将从下标为 1 的台阶开始...

2023-02-26 22:47:00 9

原创 刷刷刷 Day 38 | 70. 爬楼梯

70. 爬楼梯LeetCode题目要求假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例输入:n = 2输出:2解释:有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶解题思路使用动态规划,依旧是动归五部曲确定数组 dp[i] i 为台阶,dp[i] 对应走这个太极的方法数确定递...

2023-02-26 20:33:00 9

原创 刷刷刷 Day 38 | 509. 斐波那契数

509. 斐波那契数LeetCode题目要求斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1给定 n ,请计算 F(n) 。示例输入:n = 2输出:1解释:F(2) = F...

2023-02-26 11:15:00 8

原创 刷刷刷 Day 37 | 738. 单调递增的数字

738. 单调递增的数字LeetCode题目要求当且仅当每个相邻位数上的数字x和y满足x <= y时,我们称这个整数是单调递增的。给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。示例输入: n = 10输出: 9解题思路以 98 为例,找到最大的比它小的递增数字是,89.因为 9 > 8, 不是递增,那就得把 9 - 1 = ...

2023-02-25 21:03:00 26

原创 刷刷刷 Day 36 | 56. 合并区间

56. 合并区间LeetCode题目要求以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[1...

2023-02-25 16:48:00 7

原创 刷刷刷 Day 36 | 763. 划分字母区间

763. 划分字母区间LeetCode题目要求给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。返回一个表示每个字符串片段的长度的列表。示例输入:s = "ababcbacadefegdehijhklij"输出:[9,7,8]解释:划分结果为 "ababcbac...

2023-02-25 16:28:00 6

原创 刷刷刷 Day 36 | 435. 无重叠区间

435. 无重叠区间LeetCode题目要求给定一个区间的集合intervals,其中 intervals[i] = [starti, endi]。返回 需要移除区间的最小数量,使剩余区间互不重叠。示例输入: intervals = [[1,2],[2,3],[3,4],[1,3]]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。解题思路类似引爆气球一样,处理...

2023-02-24 09:10:00 7

原创 刷刷刷 Day 35 | 452. 用最少数量的箭引爆气球

452. 用最少数量的箭引爆气球LeetCode题目要求有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组points,其中points[i] = [xstart, xend]表示水平直径在xstart和xend之间的气球。你不知道气球的确切 y 坐标。一支弓箭可以沿着 x 轴从不同点 完全垂直 地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开...

2023-02-22 22:35:00 8

原创 刷刷刷 Day 35 | 406. 根据身高重建队列

406. 根据身高重建队列LeetCode题目要求假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。请你重新构造并返回输入数组people 所表示的队列。返回的队列应该格式化为数组 queue ,其中 queu...

2023-02-22 21:20:00 9

原创 刷刷刷 Day 35 | 860. 柠檬水找零

860. 柠檬水找零LeetCode题目要求在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。给你一个整数数组 bills ,其中 bills[i]...

2023-02-21 22:33:00 8

原创 刷刷刷 Day 34 | 135. 分发糖果

135. 分发糖果LeetCode题目要求n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。你需要按照以下要求,给这些孩子分发糖果:每个孩子至少分配到 1 个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目 。示例输入:ratings = [1,0,2]输出:5解释:你可以分别给第一个、第二个...

2023-02-19 23:19:00 8

原创 刷刷刷 Day 34 | 134. 加油站

134. 加油站LeetCode题目要求在一条环路上有 n个加油站,其中第 i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1个加油站需要消耗汽油cost[i]升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组 gas 和 cost ,如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1 。如果存在解,则...

2023-02-19 15:25:00 9

原创 刷刷刷 Day 34 | 1005. K 次取反后最大化的数组和

1005. K 次取反后最大化的数组和LeetCode题目要求给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组:选择某个下标 i并将 nums[i] 替换为 -nums[i] 。重复这个过程恰好 k 次。可以多次选择同一个下标 i 。以这种方式修改数组后,返回数组 可能的最大和 。示例输入:nums = [4,2,3], k = 1输出:5解释:选择下标 1...

2023-02-15 22:24:00 7

原创 刷刷刷 Day 32 | 45. 跳跃游戏 II

45. 跳跃游戏 IILeetCode题目要求给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处:0 <= j <= nums[i]i + j < n返回到达nums[n - 1] 的最小...

2023-02-15 09:18:00 8

原创 刷刷刷 Day 32 | 55. 跳跃游戏

55. 跳跃游戏LeetCode题目要求给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。示例输入:nums = [2,3,1,1,4]输出:true解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。解题思路经过跳跃分析,如下图都可...

2023-02-14 23:03:00 9

原创 刷刷刷 Day 32 | 122. 买卖股票的最佳时机 II

122. 买卖股票的最佳时机 IILeetCode题目要求给你一个整数数组 prices ,其中prices[i] 表示某支股票第 i 天的价格。在每一天,你可以决定是否购买和/或出售股票。你在任何时候最多只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。返回 你能获得的 最大 利润。示例输入:prices = [7,1,5,3,6,4]输出:7解释:在第 2 ...

2023-02-12 22:13:00 10

原创 刷刷刷 Day 31 | 53. 最大子数组和

53. 最大子数组和LeetCode题目要求给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。示例输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。解题思路找子序列的和最大值,如果计算和过程中发现结果是小于...

2023-02-06 21:54:00 9

阿里巴巴开发手册Google java 开发规范

阿里巴巴最新版本开发手册,按照规约编程,及 google 的 Java 开发规范中文版

2024-01-29

java 反编译工具 windows 版本 + eclipse 插件

简单好用的 windows 上的 java 反编译工具 jd-gui,支持搜索,对比过源码,完全还原源码 并附有 jd-gui 的 eclipse 插件

2024-01-29

java 反编译工具 mac 版本 + eclipse 插件

简单好用的 mac 上的 java 反编译工具,支持搜索 可以讲下载的文件解压后,将 JD-GUI.app 放到应用程序中,这样安装后,可以通过右键打开。 如果打开 JD-GUI 是出现类似如下的问题 “ERROR launching JD-GU!' No suitable Java version found on your system!This program requires Java 1.8+Make sure you install the required Java version.” 可以进入安装的 JD-GUI.app, 右键显示包内容,进入 Contents,大家 info.plist, 找下 如果里面有 1.8+ ,改成 1.8 即可

2024-01-29

springboot 中使用 AOP 的一个简单小例子,web 小应用

springboot maven 项目,导入如 idea 开发工具,可快速运行的一个 web 小例子。 如果你正在使用 springboot 开发,并且想要使用 AOP ,那么这个正适合你。 springboot 2.7.16, 使用了 spring-boot-starter-aop。 面向接口的编程方式,因为比较简单没有做细分包,引用可自行修改。 如运行遇到任何问题,欢迎留言。

2024-01-27

java反编译

好用的java反编译工具 jd-gui-0.3.3

2012-10-12

Testpassport最新Oracle_11G_OCP_1Z0-053题库

Testpassport最新Oracle_11G_OCP_1Z0-053题库

2011-03-15

Java反编译工具

一个很好的java反编译工具,一般的java程序都是一类的形式的封装了,如何才能知道程序的源文件呢,使用这个工具可以轻松获得

2008-03-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除