随笔分类 - Java
摘要:使用 MyBatis 时,可能会遇到这种情况:只查询两个字段,需要返回一个 Map,其中第一个字段作为 key,第二个字段作为 value。 这种查询在某些场景非常好用,比如查询字典,查询出的 key 和 value 就是字典的 value 和 label,利用 HashMap 的 get 方法时间
阅读全文
摘要:在 Java 开发过程中,有时会遇到需要对列表中元素进行自定义的排序。 这样的排序往往不能由元素本身的特性(比如字符串长度、首字母顺序)判断,需要自己指定顺序。 比如对汉字的数字进行排序,他们的字符串长度都为 1,首字母顺序也不能得到预期的结果,因此需要自定义排序。 以下是示例代码: public
阅读全文
摘要:目前市面上 Excel 转 PDF 的组件较多: 收费:aspose、GcExcel、spire 开源:jacob、itextpdf 其中收费的组件封装得比较好,代码简洁,转换的效果也很好,但收费也高得离谱: 为了成本考虑,就需要考虑开源的组件了,因为它们都是免费的: jacob:目前没有探索出很好
阅读全文
摘要:在开发中,有时候会遇到比较两个文件的版本号,或者比较多个文件的版本号得出最新版本号。 可以用如下代码解决: /** * 比较版本号 * @param version1 版本号1 * @param version2 版本号2 * @return <p>0:版本号1 > 版本号2</p> * <p>1:
阅读全文
摘要:在使用 EasyExcel 导出 Excel 时,如果某个单元格是图片内容,且存在多张图片,此时就需要单元格根据图片数量动态设置宽度。 经过自己的研究和实验,导出效果如下: 具体代码如下: EasyExcel 版本 <dependency> <groupId>com.alibaba</groupId
阅读全文
摘要:在开发过程中,有时会需要获取全中文格式的日期,比如:二〇二四年七月三日。 此时就需要将日期转换成该格式,Hutool 封装了该工具: /** * 格式化为中文日期格式,如果isUppercase为false,则返回类似:2018年10月24日,否则返回二〇一八年十月二十四日 * * @param d
阅读全文
摘要:使用 EasyExcel 导出 Excel 时,有时会遇到如下情况: 既要根据模板填充某些 sheet 又要根据业务写入某些 sheet EasyExcel 官方没有提供这样的示例,经过自己的研究和实验,得到了如下步骤: 定义导出文件名 String fileName = "测试.xlsx"; 获取
阅读全文
摘要:在配置 Java 环境变量的时候,有可能会出现修改了JDK的路径,但是Java的环境变量没有相应切换的情况。比如: 但此时在控制台使用java -version命令输出的JDK版本不是新配置的版本,依然是之前的,甚至提示找不到java命令,即环境变量没有生效。 此时可以将Path中Java的环境变量
阅读全文
摘要:在使用 Hutool 的工具类进行复制时,有时候需要只复制不为空的属性。 比如在修改时,先把数据库中的数据查出来: SysArea sysArea = getById(dto.getId()); 此时再以传入值复制到数据库表对象中,但如果传入值中有属性为null,会将数据库表对象的属性也设为null
阅读全文
摘要:开发场景中,有时候会遇到取文件路径中的文件夹名称,这些文件路径往往是 http 格式的,比如下面这样: https://img2020.cnblogs.com/blog/2413255/202112/2413255-20211206155717931-1767206212.png 这个文件夹名称往往
阅读全文
摘要:在 Java 中,经常会需要交换两个变量的值,我们一般是使用第三变量完成,比如 temp = a; a = b; b = temp; 这样的写法确实能达成目标,但因此而引入了第三变量,对资源的消耗增加了。 这里总结了两种不使用第三变量实现的方式 这两种方法仅为个人总结,不能断定只有这三种,非常希望大
阅读全文
摘要:原理 在 Java 程序中,对于数据的输入/输出操作以**流(Stream)**方式进行 JDK 提供了各种各样的流类,用以获取不同种类的数据 程序中通过标准的方法输入/输出数据 文件 Java 有一个类叫 File,它封装的是文件的文件名,只是内存里面的一个对象 真正的文件是在硬盘上的一块空间,在
阅读全文
摘要:阿拉伯数字转汉字: public static String number2chinese(int src) { final String num[] = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"}; final String unit[]
阅读全文