随笔分类 -  3、Java技巧实例

1 2 下一页

23、Elasticsearch-fielddata内存使用陡增解决方案
摘要:利用searchAfter分页方式代替From-Size查询或Scroll滚动查询,解决From-Size查询存在的深度翻页问题与Scroll滚动查询存在数据量大响应慢的问题。由于searchAfter分页需要保证排序聚合唯一,当使用_id 字段进行排序聚合时,可能会导致fielddata内存使用指 阅读全文

posted @ 2024-12-16 23:41 爱文(Iven) 阅读(38) 评论(0) 推荐(0) 编辑

22、MapStruct对象映射转换
摘要:一、对象转换方式: 1、SET与GET赋值方式: SET与GET赋值方式是最基本的一种对象转换方式。通过手动调用源对象的 getter 方法,获取源对象的属性值,然后通过目标对象的 setter方法将值设置到目标对象中。 public class UserDTO { private String n 阅读全文

posted @ 2024-12-16 23:32 爱文(Iven) 阅读(267) 评论(0) 推荐(0) 编辑

21、Jasypt-SpringBoot配置文件信息加密
摘要:Jasypt(Java Simplified Encryption)是一个轻量级的Java加密库,旨在简化加密操作,使Java开发者能够在应用程序中轻松地实现数据加密和解密。它支持多种常见的加密算法,并提供了易于使用的 API 和加密容器,帮助开发者保护敏感信息(如密码、密钥、API 密钥、数据库密 阅读全文

posted @ 2024-12-15 23:56 爱文(Iven) 阅读(175) 评论(0) 推荐(0) 编辑

20、try-with-resources资源管理详解
摘要:try-with-resources 是Java7引入的一个语法,旨在简化资源的管理,自动关闭实现了`AutoCloseable`或`Closeable`接口的资源对象,如 InputStream、OutputStream、FileReader、BufferedReader等。 在传统的try-ca 阅读全文

posted @ 2024-12-15 23:09 爱文(Iven) 阅读(103) 评论(0) 推荐(0) 编辑

19、@Transactional的详解
摘要:一、不存在事务管理,发生异常不会回滚 二、@Transactional的事务传播级别: 事务传播级别 详解 REQUIRED 加入事务,默认值 SUPPORTS 存在就加入,不存在,非事务执行 MANDATORY 存在就加入,不存在抛异常 REQUIRES_NEW 重新新建事务,如果当前存在事务,则 阅读全文

posted @ 2024-06-25 00:29 爱文(Iven) 阅读(420) 评论(0) 推荐(0) 编辑

18、MySQL多表连查详解
摘要:MySQL的多表连查(即多表连接查询)对于数据库管理员、开发人员以及数据分析师来说都是非常重要的。对此,笔者专门写一文进行详细讲解,以便个人学习: 首先建立两张表用于数据验证: 1、笛卡尔积: 笛卡儿积(Cartesian product)是指在两个集合A和B之间的所有可能的有序对的集合。具体来说, 阅读全文

posted @ 2024-04-03 18:56 爱文(Iven) 阅读(824) 评论(0) 推荐(0) 编辑

17、基于SLF4J中打印日志的方法,实现字符串中{}快速替换需要的内容
摘要:转载自 一、String工具类: public class StringUtils { private static final char DELIM_START = '{'; private static final String DELIM_STR = "{}"; private static 阅读全文

posted @ 2024-01-22 16:50 爱文(Iven) 阅读(99) 评论(0) 推荐(0) 编辑

16、MySQL拆分与拼接行数据
摘要:一、根据逗号拆分行数据: 1、数据表: 2、数据拆分: SELECT de.uuid, de.`name`, SUBSTRING_INDEX( SUBSTRING_INDEX( de.`code`, ',', ht.help_topic_id + 1 ), ',', - 1 ) AS newCode 阅读全文

posted @ 2023-11-02 12:15 爱文(Iven) 阅读(99) 评论(0) 推荐(0) 编辑

15、MyBatis判断传入String字段是否包含String类型或者List类型
摘要:MyBatis判断一个字段是否包含(in)在String字符串或者List中 阅读全文

posted @ 2023-09-04 18:38 爱文(Iven) 阅读(204) 评论(0) 推荐(0) 编辑

14、MyBatis动态标签的使用详解
摘要:一、符号转义详解: 1、转义字符方式: 含义原符号转义字符 小于 < &lt; 小于等于 <= &lt;= 大于 > &gt; 大于等于 >= &gt;= 逻辑与(和) & &amp; 单引号 ‘ &apos; 双引号 “ &quot; # 查询创建时间是小于2023年的用户 SELECT * FR 阅读全文

posted @ 2023-06-29 00:49 爱文(Iven) 阅读(960) 评论(0) 推荐(1) 编辑

13、<resultMap>中 <collection>实现多级标签
摘要:一、需求: SQL方式实现多级标签,类似于: 二、一级标签实体类声明: 三、二级标签实体类声明: 四、mybatis标签映射: <resultMap>中的 <collection>来实现一对多映射关系: <resultMap id="BaseResultMap" type="com.xxx.mode 阅读全文

posted @ 2023-03-31 00:49 爱文(Iven) 阅读(79) 评论(0) 推荐(0) 编辑

12、实体类对象相互比较
摘要:实体类对象相互比较-JSON方式: 在实际开发中,我们经常需要比较同一个自定义类型的两个不同对象的属性值是否相等,采用JSON方式比较可快速有效实现相关需求。JSONobject是FastJson提供的对象,在API中是用一个私有的常量map进行封装的,实际就是一个map,只不过 FastJson对 阅读全文

posted @ 2023-02-23 23:46 爱文(Iven) 阅读(295) 评论(0) 推荐(0) 编辑

11、SQL操作JSON字段
摘要:Mysql5.7版本以后提供一个原生的Json类型,Json值将不再以字符串的形式存储,而是采用一种允许快速读取文本元素(document elements)的内部二进制(internal binary)格式。 一、Mysql操作Json字段: 参考 1、存储方式: 注:代码以String类型声明 阅读全文

posted @ 2022-12-26 18:54 爱文(Iven) 阅读(957) 评论(0) 推荐(0) 编辑

10、MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
摘要:转载自 一、报错信息: Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restart 阅读全文

posted @ 2022-11-10 16:55 爱文(Iven) 阅读(238) 评论(0) 推荐(0) 编辑

9、java.sql.SQLException: 无效的列类型: 1111 报错问题解决
摘要:转载自 在项目中利用Mybatis做持久化框架,XXXMapper.xml中insert语句做插入时,偶然会遇到一些报错或者说是问题,如下: 一、报错日志: nested exception is org.apache.ibatis.type.TypeException: Could not set 阅读全文

posted @ 2022-11-10 16:06 爱文(Iven) 阅读(2267) 评论(0) 推荐(0) 编辑

8、synchronized和Lock的使用
摘要:转载自 1、多并发案例: 一个车站有三个窗口同时卖30张票,每个窗口都有40个人在排队买票,在多线程情况下,不加锁,线程不安全,导致卖票不准确 package com.example.Lock; /** * 线程就是一个单独的资源类,没有任何附属的操作 */ public class demo1 { 阅读全文

posted @ 2022-08-11 15:32 爱文(Iven) 阅读(90) 评论(0) 推荐(0) 编辑

7、ON DUPLICATE KEY UPDATE实现插入更新操作
摘要:一、插入与更新操作: MySQL中,采用ON DUPLICATE KEY UPDATE语句对不存在的数据进行INSERT插入操作,对已存在的数据进行UPDATE更新操作; 总结: 1、ON DUPLICATE KEY UPDATE语句根据主键或唯一键来判断当前插入是否已存在。 2、记录已存在时,只会 阅读全文

posted @ 2022-08-11 11:47 爱文(Iven) 阅读(655) 评论(0) 推荐(0) 编辑

6、比较Bigdecimal类型是否相等的方法
摘要:一、Bigdecimal.equals()详解: Bigdecimal的equals方法不仅仅比较值的大小是否相等,首先比较的是scale(scale是bigdecimal的保留小数点位数),也就是说,不但值得大小要相等,保留位数也要相等,equals才能返回true。 二、采用compareTo( 阅读全文

posted @ 2022-08-09 17:22 爱文(Iven) 阅读(6230) 评论(0) 推荐(0) 编辑

5、IDEA提交代码出现: Fetch failed fatal: Could not read from remote repository
摘要:转载自 第一步、确认Git公钥/密钥是否生成: 1、 首先查看本地是否生成git密钥,一般在C盘home目录下:【C:你自己的home目录\.ssh】 第二步:添加Git密钥: 右键->Git base here(前提是已经安装GIt), 具体如何安装Git, 请自行安装 按顺序执行命令 1、git 阅读全文

posted @ 2022-08-09 11:49 爱文(Iven) 阅读(1502) 评论(0) 推荐(0) 编辑

4、解决swagger测试接口报错:TypeError: Failed to execute ‘fetch‘ on ‘Window‘: Request with GET/HEAD method cannot have body
摘要:一、Swagger报错: 1、报错类型: TypeError: Failed to execute ‘fetch‘ on ‘Window‘: Request with GET/HEAD method cannot have body 2、解决方案: 请求方式错误:请求参数使用了@RequestBod 阅读全文

posted @ 2022-08-09 11:13 爱文(Iven) 阅读(7934) 评论(0) 推荐(0) 编辑

1 2 下一页
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示