
Java
文章平均质量分 77
@素素~
素素,素而不凡,乐于分享,知足常乐,心态不老人就不会老!
展开
-
03终版——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——解决word转PDF遇到的表格问题
03终版——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——解决word转PDF遇到的表格问题原创 2024-04-03 14:17:37 · 1131 阅读 · 0 评论 -
02——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——02(解决段落样式问题 + 图片问题 + 单个表格问题)
02——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——02(解决段落样式问题 + 图片问题 + 单个表格问题)原创 2024-03-31 16:52:33 · 993 阅读 · 0 评论 -
01——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——解决汉字问题及字体的样式问题
01——Java使用低版本poi 3.8 + itext 2.1.7 + itextasian.1.5.2 实现word转PDF——解决汉字问题及字体的样式问题原创 2024-03-29 15:58:50 · 1288 阅读 · 0 评论 -
解决 poi3.8版本在word中插入图片不展示的问题
解决 poi3.8版本在word中插入图片不展示的问题原创 2024-03-22 13:50:09 · 1955 阅读 · 0 评论 -
Java根据excel模版导出Excel(easyexcel、poi)——含项目测试例子拿来即用
Java根据excel模版导出Excel(easyexcel、poi)——含项目测试例子拿来即用原创 2024-02-26 16:19:18 · 9407 阅读 · 12 评论 -
解决no main manifest attribute, in XXX.jar
解决no main manifest attribute, in XXX.jar原创 2023-06-29 13:28:02 · 12111 阅读 · 4 评论 -
Java实现判断括号匹配问题解题思路
Java实现判断括号匹配问题解题思路原创 2023-03-07 21:00:40 · 271 阅读 · 0 评论 -
mac上安装并配置maven
mac上安装并配置maven原创 2023-02-09 09:01:44 · 1238 阅读 · 0 评论 -
JAVA导出Excel通用工具——第二篇:使用EasyExcel导出excel的多种情况的例子介绍
JAVA导出Excel通用工具类——第二篇:使用EasyExcel导出excel(包括:不对对象写到同一sheet内和、自定义合并单元格策略 来 实现动态地纵向合并单元格)原创 2023-01-13 23:33:04 · 1506 阅读 · 7 评论 -
JAVA导出Excel通用工具类——第一篇:详细介绍POI 导出excel的多种复杂情况,包括动态设置筛选、动态合并横向(纵向)单元格等多种复杂情况——保姆级别,真的不能再详细了,代码拿来即用)
JAVA导出Excel通用工具类——仅此一篇足以让你精通(详细介绍POI 和 EasyExcel导出excel的多种情况,包括筛选、合并单元格等复杂情况——保姆级别,不能再详细了,代码拿来即用,真的是傻瓜式使用都可以)原创 2023-01-13 09:00:46 · 1812 阅读 · 2 评论 -
MybatisPlus 处理保存实体对象时,对于枚举类型的数据库存储问题以及解决 @EnumValue 失效问题
MybatisPlus 处理保存实体对象时,对于枚举类型的数据库存储问题以及解决 @EnumValue 失效问题原创 2022-12-01 14:34:14 · 2373 阅读 · 0 评论 -
springboot多模块扫包中的@SpringBootApplication、@ComponentScan和@MapperScan问题
springboot多模块扫包中的@SpringBootApplication、@ComponentScan和@MapperScan问题原创 2022-11-04 20:50:37 · 3298 阅读 · 0 评论 -
解决雪花算法id精度丢失问题(自定义序列化类将Set<Long> 转化成 Set<String>)
解决雪花算法id精度丢失问题(自定义序列化类将Set 转化成 Set)原创 2022-09-02 11:11:08 · 876 阅读 · 0 评论 -
解决 LocalDateTime 的序列化与反序列化问题
解决 LocalDateTime 的序列化与反序列化问题原创 2022-08-13 21:08:09 · 1126 阅读 · 0 评论 -
springBoot项目 ObjectMapper 序列化统一格式处理
springBoot项目 ObjectMapper 序列化统一格式处理原创 2022-08-13 15:41:31 · 974 阅读 · 0 评论 -
线程安全问题生活举例以及解决方案(synchronized)
线程安全问题生活举例以及解决方案(synchronized)1. 前言1.1 业务场景——模拟田老师取餐的取单号1.2 生活示例图1.3 本文例子的取单号说明2.线程不安全例子——取单号2.1 用 Thread2.1.1 例子代码2.1.2 注意点2.1.3 效果演示2.1.4 问题分析2.2 用 Runnable2.2.1 示例代码2.2.2 注意点2.2.3 效果演示2.2.4 问题分析3. 解决上述线程不安全问题3.1 分析导致线程不安全的原因3.2 同步代码块加锁3.2.1 关于锁3.2.2 实现原创 2022-03-03 22:10:31 · 327 阅读 · 0 评论 -
简单分析 JVM 对象的内存(对象的创建)以及String相关知识
简单分析 JVM 对象的内存一、前言二、JVM 对象的内存解析1. 举例分析对象在内存中的存储过程2.内存中对象之间的赋值三、对象数组的内存分析四、早期让你尴尬的String1.简单介绍2.尴尬案例(1)String为啥不可被修改?a. 先简单看看String的b. 再简单来个好理解的例子(2)new String() 和 new Stirng("")(3)内存分析:字面量 和 new+构造器 创建Stringa. 字面量创建b. new+构造器创建c. 小思考——经典问题1)字符串常量池的优点?2)Str原创 2022-02-23 17:40:20 · 467 阅读 · 0 评论 -
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.原创 2022-02-21 20:19:11 · 1207 阅读 · 2 评论 -
Java 可变个数形参的方法
Java 可变个数形参的方法直接看代码演示优先级多个参数传参情况总结简单测试代码小小知识,不值一提,了解了也不能让你提高身价,但是不了解你就是比别人少知道点!事儿就是这么个事儿,直接正题吧!直接看代码演示优先级当方法1无参和方法2有参存在时,执行上面的main方法调用并观看结果:当只有可变参数方法存在时,再重新执行看看多个参数传参情况一是多个参数逗号隔开传参二是直接可以传数组总结①调用的时候参数可不传或传多个②如果有无参或者有可数个参数的重载方法存在时,调用同名原创 2022-02-20 11:01:25 · 940 阅读 · 3 评论 -
依赖倒置原则——举例说明Java设计模式中的依赖倒置原则
依赖倒置原则——举例说明Java设计模式中的依赖倒置原则一、前言看官方定义二、举例说明2.1 例子介绍(无聊的可看看,着急的请跳过)2.2 反例2.1.1 反例1(1)类图说明(2)代码说明(3)测试(4)分析优缺点2.1.2 反例2——反例1上维护(1)类图说明(2)代码说明(3)测试(4)分析优缺点1)优缺点分析2)如何解决?2.3 正例2.2.1 正例1(1)类图说明(2)代码说明(3)测试(4)分析优缺点2.2.2 正例2——正例1上维护(1)类图说明(2)代码说明(3)测试三、总结3.1 倒置?为原创 2022-02-13 12:57:49 · 1684 阅读 · 1 评论 -
解决同一接口有多个实现类的注入问题
解决多个类实现同一接口的注入问题一、前言解决报错问题二、问题原因——多个类实现同一接口三、解决问题1.方案1:用注解 `@Qualifier`(1)代码实现(2)需要注意点 @Service(3)@Autowired 简单理解2.方案2——用注解@Resource(1)代码实现(2)需要注意点 @Service(3)@Resource 简单理解一、前言解决报错问题错误信息Consider marking one of the beans as @Primary, updating the cons原创 2022-02-12 15:21:23 · 5249 阅读 · 0 评论 -
举例说明Java设计模式中的单一职责原则
单一职责原则一、理解:二、举例说明1.反例(1)反例前(2)反例2.正例1.方案1--分成多类对方案评价2.方案2--同类分方法对方案评价三、总结四、附代码例子1例子2例子3例子4一、理解:对类来说,即一个类应该只负责一项职责,如类A负责两个不同的职责:职责1和职责2,当职责1修改导致类A改变时,可能会造成职责2执行错误,因此需要将类A的粒度分解为A1和A2。二、举例说明下面举个很不恰当的例子,没别的,我知道你平时不会这么开发,只是个例子,只是方便理解,仅此而已,别抬杠!1.反例(1)反原创 2022-02-12 08:39:47 · 606 阅读 · 0 评论 -
Lombok的@Accessors注解——链式编程
前言Lombok大家肯定都很熟悉,@AllArgsConstructor,@NoArgsConstructor 以及 @Data 注解我们经常用,尤其是 @Data 注解,想必没有不喜欢的!上面三个注解已经从很大程度上简化了我们的代码,那么注解@Accessors是?用注解@Accessors 加上 chain = true 选项,即:@Accessors(chain = true) 就支持了Java 链式写法,简单易懂,如图:为什么可以这么实现?对于此注解的chain 选项:c原创 2022-02-02 17:28:22 · 1615 阅读 · 0 评论 -
JPA自动生成 JPA 实体类(idea)
JPA自动生成 JPA 实体类(idea)1.创建项目2.idea连接数据库3.生成实体(1)选中 Database Scheme(2)配置 Database Scheme(3)查看生成的实体(4)解决实体类飘红色波浪线1.创建项目创建项目,勾选上JPA,如图:如果项目已创建,创建是没有勾选JPA,那就添加即可,如图:2.idea连接数据库我们以MySQL为例:如果连接上之后,看不到数据库里的表,修改一下配置,选择一下schema3.生成实体(1)选中 Database原创 2022-01-25 21:49:10 · 9826 阅读 · 0 评论 -
解决 nested exception is org.hibernate.PropertyAccessException: Null value was assigned to a property
Null value was assigned to a property错误如下:造成原因解决问题错误如下:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.orm.jpa.JpaSystemException: Null value原创 2022-01-25 15:31:48 · 1447 阅读 · 0 评论 -
ObjectMapper基础简单使用(序列化问题)
ObjectMapper基础简单使用前言简单使用1.@JsonIgnore——单一属性控制2.@JsonFormat(pattern = "yyyy-MM-dd")3.@JsonInclude(JsonInclude.Include.NON_NULL)4.全局控制代码5.补:把值为null的属性修改为""写出依赖前言当使用com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(Object) 将JavaBean实体转换为json的时原创 2022-01-23 20:56:34 · 3918 阅读 · 0 评论 -
简单说com.alibaba.fastjson 的 SerializerFeature + 自定义序列化
简单说 Fastjson 定制序列化 + 自定义序列化一、前言——问题二、控制台输出格式化json三、解决问题:1.`@JSONField(serialize = false)`2. @JSONField(format = "")处理日期3. 全局控制:SerializerFeature(1)全局日期格式化(2)SerializerFeature.IgnoreNonFieldGetter(3)为null的属性默认自动排除(4)空字符串不序列化4. 自定义序列化四、依赖五、特殊SerializerFeatur原创 2022-01-22 19:43:48 · 9333 阅读 · 2 评论 -
解决 “A component required a bean of type javax.persistence.EntityManagerFactory“that could not...
处理springBooot 整合JPA过程的EntityManagerFactory问题问题描述导致问题原因解决问题问题描述springboot项目启动不起来,报错如下: A component required a bean of type "javax.persistence.EntityManagerFactory" that could not be found导致问题原因可能有多种原因但是,我这里是缺少下面两个依赖,缺一不可hibernate-corehibernat原创 2022-01-21 22:41:50 · 5049 阅读 · 0 评论 -
Java实现json报文的比对(不考虑内部顺序 + 可设置跳过部分字段比对)
Java实现比对json报文(不考虑内部顺序)1.前言2.排序设计3.对比效果(1)简单报文比对(2)复杂报文比对——存在顺序问题a.比对的报文内容:b.对比效果1)不排序的对比效果2)排序后的对比效果4.附代码(1)实体(2)准备测试数据(3)排序工具类(4)对比工具类(5)依赖1.前言最近在处理一个报文比对的问题,发现两个json报文里如果一个节点有多条数据的话,可能有顺序不一样的情况,导致报文比对程序失效,所以本文主要实现对于json报文中JSONArray顺序不一致时也能对比!2.排序设计原创 2022-01-20 22:56:59 · 2840 阅读 · 9 评论 -
java新特性之Lambda表达式forEach(forEach循环JSONArray)
java新特性之Lambda表达式forEach(forEach循环JSONArray)旧写法Lambda写法1Lambda写法2(带下标)效果附代码旧写法Lambda写法1Lambda写法2(带下标)效果附代码package com.liu.susu.json.entity;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import java.util.stream.S原创 2022-01-20 12:51:44 · 17378 阅读 · 0 评论 -
java中Map“排序”和JSONArray排序
java中Map“排序”和JSONArray排序1.前言2.Map根据key值排序(核心代码)3.JSONArray根据某一字段排序(核心代码)4.效果5.附完成代码(带测试数据)1.前言最近在处理一个报文比对的问题,发现两个json报文里如果一个节点有多条数据的话,可能有顺序不一样的情况,导致报文比对程序失效,所以考虑到对JSONArray排序一下再比对2.Map根据key值排序(核心代码) /** * map排序 * @param map * @param k原创 2022-01-19 23:38:20 · 863 阅读 · 0 评论 -
简单谈谈Java线程
简单谈谈Java线程原创 2021-12-19 12:36:34 · 478 阅读 · 0 评论 -
浅谈Java多线程
浅谈Java多线程原创 2021-12-19 22:53:14 · 512 阅读 · 0 评论 -
详解Java多线程之线程池
详解Java多线程之线程池原创 2021-12-19 22:35:47 · 689 阅读 · 0 评论 -
Linux安装JDK1.8
在Linux上安装JDK1.81.查看自己的linux系统是多少位2.下载安装jdk83.下载完成后将安装包上传到服务器4.使用解压命令解压文件4.安装结束,开始环境变量配置4.配置环境变量后,先执行命令让文件生效5.然后再测试是否安装成功6.切换版本(通过java -version查看不是自己刚才安装的jdk版本的话,操作以下步骤,否则不需要操作)(1)whereis java(2)查看这个目录:ll /usr/bin/java(3)继续查看:ll /etc/alternatives/java(4)删除软原创 2021-10-31 21:22:20 · 8877 阅读 · 0 评论 -
用Java 语言封装带children属性的json报文——Java封装children树形结构报文
Java 语言构造带children属性的json报文1.效果图2.附代码实体封装工具类测试数据以及测试3.项目下载1.效果图2.附代码实体/** * */package com.liu.demo;/** * @Decision TODO * @author liusx * @Date 2021年8月18日 */public class JsonBodyPart { private String id; private String name; private S原创 2021-08-19 12:52:56 · 981 阅读 · 1 评论 -
Java中 filter()函数的用法
Java中filter函数的用法介绍详细代码Java8之前的写法Java8写法1Java8写法2造数以及测试类代码测试结果参考资料链接:介绍Java 8 Stream接口引入了filter()方法,可用于根据特定条件从对象集合中过滤出某些元素。这个条件应该指定为filter()方法接受作为参数的谓词。predicate接口定义了一个名为test()的抽象方法,该方法接受泛型类型T的对象并返回一个布尔值。让我们编写一些代码,以便更清楚地理解filter方法。看看下面的Dish类。详细代码packa翻译 2021-08-17 22:48:54 · 33215 阅读 · 0 评论 -
处理实体与Map<String,Object>、json之间的转换
处理实体与map,json之间的转换实体与Map实体与Map<String,Object>的转换直接看代码,如下:package com.skyon.liu;import java.lang.reflect.Field;import java.lang.reflect.Modifier;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;翻译 2021-07-20 14:27:43 · 1601 阅读 · 0 评论 -
Java 模拟栈溢出错误(StackOverflowError)
Java 模拟栈溢出错误栈,也叫栈内存 主管程序的运行,生命周期和栈线程同步线程结束,栈内存也就释放了栈:先进后出,后进先出栈溢出错误:StackOverflowErrorjava.lang.StackOverflowError:一般出现这个问题是因为程序里有死循环或递归调用所产生的如果一个线程所需用到栈的大小>配置允许最大的栈大小,那么jvm就会抛出 StackOverflow如图:package liu.jvm;/** * java.lang.StackOverflo原创 2021-06-11 17:22:31 · 2698 阅读 · 0 评论 -
Java 模拟堆内存溢出 OOM
模拟堆内存溢出 OOM备注:如果模拟不出来,配置一下vm options,步骤如下(2021版本的idea):配置的值,如下:代码如下:public class OomTest1 { public static void main(String[] args) { String str = "oom"; while(true){ str = str + UUID.randomUUID().toString()+UUID.rand原创 2021-06-11 17:08:28 · 1609 阅读 · 0 评论