JAVA
轻点 别打脸
无无
展开
-
Word模板替换,并转PDF格式输出,Linux服务器乱码问题解决
绿色部分是直接渲染的,对应map中的key-value,蓝色部分是绑定collections对象,进行遍历循环集合数据。转换的pdf有水印,去水印很方便, 加载License(要买)即可 封装一个工具类。原创 2023-06-28 15:37:10 · 1427 阅读 · 0 评论 -
pdf、ofd文本定位,图片、文本内容填充,PDF拆分
pdf,ofd文档定位,文本替换,图片填充,文件拆分原创 2023-03-15 16:58:42 · 580 阅读 · 0 评论 -
java ofd文件格式转化为pdf,双层ofd转为pdf
spire-pdf的jar包进行ofd转为pdf时,如果是双层ofd文件,最后转化的结果会丢失上层内容。因此可以使用spire.free.pdf进行pdf转化为ofd,使用ofdr进行ofd转为pdf。如果出现报错,log4j-slf4j-impl依赖与spring-boot引用的log4j依赖有冲出,直接排除引用即可。ofdrw-full能完整转化spire转化不了的双层ofd文件。之前有博客写了ofd与pdf文件进行相互转化,原创 2023-02-16 15:20:13 · 2125 阅读 · 0 评论 -
自定义注解结合继承JsonSerialize实现ContextualSerializer,实现返回结果转译
ContextualSerializer: JsonSerializer可以实现的附加接口,以获取回调,该回调可用于创建序列化程序的上下文实例,以用于处理受支持类型的属性。这对于可以通过注释配置的序列化程序很有用,或者根据要序列化的属性类型,序列化程序应该具有不同的行为。注解结合继承JsonSerialize实现ContextualSerializer,通过注解显式的声明序列化方式,实现返回的对象进行转译。当前实现仅针对于接口返回时返回对象转译,返回对象必须是自定义序列化的对象,否则不生效。原创 2022-12-09 16:18:59 · 5293 阅读 · 3 评论 -
java pdf与ofd文件相互转换
spire.pdf for java 参考文档: https://www.e-iceblue.cn/spire-pdf-for-java-news.html。借用spire.pdf进行pdf与ofd相互转化。原创 2022-12-09 10:03:54 · 3338 阅读 · 7 评论 -
Nexus3.25版本初始化maven仓库,远端仓库没有依赖,本地有Maven打包失败问题
remote.repositories标记当前依赖变动,或者仓库变动时会从远端进行下载,如果下载不到,那么会抛出错误,因此,本机仓库已有了这个依赖,远端暂时不想上传的话,可以先删掉这个文件,跳过远端获取的步骤。远端仓库没有某个依赖,本地仓库实质已经存在,工程内部都没报错,但是install构建打包时,总是去尝试从远端获取,然后报错,无法构建。上传本地依赖仓库压缩包至服务器,Linux 服务器新建sh脚本,内容填充以下内容,脚本位置在解压依赖的目录下,与各种依赖包同级。原创 2022-08-23 15:17:09 · 807 阅读 · 0 评论 -
yaml、yml内容属性重复校验,对比
yaml、yml内容属性重复校验,对比1. 依赖包2. 单个文件主属性重复检测3. 两个yaml属性重复检查 / 主副配置文件重复属性检查1. 依赖包首先需要依赖snakeyaml,这个包解析{} 、json、数组形式的配置会识别错误。<dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <version>1.原创 2022-05-07 11:25:26 · 1911 阅读 · 0 评论 -
java ftp 上传下载,当前文件格式错误或者数据损坏 / 读取FTP文件列表为null值,等待时间很长,且不报错
java ftp上传下载,读取相关问题上传下载相关问题java 读取ftp文件问题changeWorkingDirectory不生效问题上传下载相关问题检查vsftp服务器文件ftp上传上去的文件是否是正常文件,下载解压检查检查下载路径是否正确debug检查下载路径,下载路径不正确,下载后输出的文件也会报损坏或者格式错误若是上传至服务器的文件格式不正确,检查上传格式client.setFileType(FTP.BINARY_FILE_TYPE);Windows上传至Linux FTP服原创 2022-05-06 16:46:54 · 2259 阅读 · 0 评论 -
kafka第一次send/生产时,响应很慢
首先排除版本与依赖不一致的情况后: Kafka在第一次加载时,会首先加载元数据,在向Kafka服务器发送元数据更新请求时,如果服务器与客户端在同一个网段,那么首次加载更新元数据时,会很快。 Kafka服务器与客户端不在同一网原创 2022-04-22 20:27:36 · 2871 阅读 · 0 评论 -
200 PORT command successful. Consider using PASV / Linux 部署vsftp不能正常访问
Linux部署vsftp不能正常访问问题1. 问题描述2. 问题现象3. 解决问题以下问题为内网部署ftp遇到的问题,仅供参考200 PORT command successful. Consider using PASV 实质是连接成功了,但是获取不到ftp服务器返回的数据,或者是在与ftp服务器建立数据连接通道时被拦截了。1. 问题描述 内网Linux服务器部署vsftp后,使用默认21端口进行访问是正常的,切换原创 2022-04-22 19:57:34 · 17092 阅读 · 1 评论 -
Spring Boot 多模块开发,SDK工具模块配置读取
前景:spring-boot 多模块应用开发,工具模块在主模块中引用(jar包形式),出现工具模块配置读取异常问题。 例如:XXX-Center 主业务模块,引用XXX-SDK模块。 建议:工具模块中不要命名启动项默认配置文件名称 &原创 2021-12-14 19:14:58 · 1569 阅读 · 0 评论 -
Linux启动java程序很慢
Linux启动java程序很慢,原因有很多。网上的解决方式也很多。1、修改jre配置参数(尝试无效,可能场景不一)$JAVA_HOME/jre/lib/security/java.security中的 securerandom.source=file:/dev/random修改为 securerandom.source=file:/dev/urandom2、修改hosts代理文件,将本机ip映射到localhost(不清楚原理,但是有效)新增 127.0.0.1 host-68-xx-x原创 2021-11-10 11:39:57 · 4801 阅读 · 0 评论 -
java yaml配置处理,yaml格式化,yaml节点增加,删除。多yaml合并
多环境配置文件管理,增加一个配置属性,多套环境配置文件需同时增加,如果忘记了,那么就报错。对多环境配置文件进行管理,使用yaml作为文件时,就涉及到yaml的一些解析,修改,新增操作。java管理yaml1. 环境依赖2. snakeyaml方法简单介绍3. yaml处理思路4. yaml字符串转非嵌套Map对象5. List对象转嵌套yaml对象6. 新旧yaml对比,yaml新增,删除属性1. 环境依赖原创 2021-10-13 18:28:27 · 5659 阅读 · 4 评论 -
Java.sql.ResultSet ResultSetMetaData.getColumnCount() out of range
nested exception is java.sql.SQLException:Column index out of range.;caused: Column index out of range.;Java.sql.ResultSet ResultSetMetaData 对象 .原创 2021-09-29 19:00:00 · 1492 阅读 · 0 评论 -
zuul自定义网关请求重发规则
如何自定义zuul网关请求重发规则,首先需弄清楚框架的执行逻辑,https://cloud.tencent.com/developer/article/1034753 这篇文章解读的还不错zuul也可通过路由,服务,错误码来配置指定重发对象。zuul既定的过滤器: 数字代表顺序,数字越小,加载顺序级别越高。分别对应ZuulFilter核心过滤器中的filterType / filterOrder 值类型顺原创 2021-09-24 10:21:45 · 478 阅读 · 0 评论 -
使用反射给实体类赋值
在项目中,可能会涉及到json,Map等数据的存储,在解析时,常用解析方法就是定义一个常量池,再对json,map进行get,set进实体类。 核心部分就是: PropertyDescriptor propertyDescriptor = new PropertyDescriptor(key, BeanEntity.class); Me原创 2021-04-19 15:30:21 · 711 阅读 · 0 评论 -
java扫描获工程取所有文件,获取所有工程文件夹
扫描获取所有文件,以及工程文件夹 使用java.nio.file工具包,读取文件,读取文件夹。整体思路就是一层层剥取,由头部向尾部递归获取所有文件。使用java.nio.file工具包Path path = Paths.get("Src"); //得到Src的一个Path 对象Stream stream = Files.list(path); //获取Src文件夹下的文件,文件夹,流对象List fileLi..原创 2021-03-29 16:33:39 · 723 阅读 · 2 评论 -
JPA自定sql总结,自增Id不生效
JPA使用问题记录自定sql自定义sql查询部分字段,无法用实体返回自增Id不生效自定sql自定义查询sql注解: @Query(value=“sql” ,nativeQuery = true) nativeQuery = true不能漏,漏了不生效自定义修改,删除,插入:  原创 2020-11-17 17:18:05 · 1261 阅读 · 2 评论 -
JAVA JDK1.8时间函数,LocalDate,LocalDateTime,LocalTime,Instant函数以及转化
整理一下java1.8常用日期函数获取当前时间 //时间戳,单位/s System.out.println(Instant.now().getEpochSecond()); //时间戳 单位/ms System.out.println(Instant.now().toEpochMilli()); //yyyy-MM-dd H...原创 2019-11-28 16:55:52 · 1228 阅读 · 0 评论 -
jdk1.8 lambda筛选集合中的元素,lambda应用
lambda查找与匹配方法lambda四大内置核心函数式接口lambda查找与匹配方法 @Data public static class Employee { Employee(String name, String position, Integer salary) { this.name = name; ...原创 2019-10-11 13:51:20 · 3906 阅读 · 0 评论 -
Java Map容器衍生的常用Map容器分析
HashMap,HashTable,LinkedHashMap,TreeMap,ConcurrentHashMap读取,写入,安全场景测试HashMap最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为Null(多条会覆盖);允许多条记录的值为 Null。非同步的。TreeMap能够把它保存的记录根据...原创 2019-07-26 15:18:37 · 182 阅读 · 0 评论 -
java内存区域,java栈,堆,方法区,常量池
在不考虑实例对象入参的情况下,聊聊java的内存区域,各个内存区域之间的协同关系经常有人将java内存区分为堆内存,和栈内存,期初我也是这么粗糙的去划分的,java内存区域的划分实际上远比这来的复杂。1.java运行时数据区域2.java对象构建-内存分配...原创 2020-03-30 22:22:06 · 581 阅读 · 0 评论 -
驼峰命名字段与下划线之间的转化
日常记录:根据阿里规范,在编码时命名以驼峰命名形式进行,然而调用第三方强势厂商接口时,往往入参以及返回结果,需要以下划线形式接受或者返回。以下记录一种接受、返回形式中驼峰与下划线的转化:1、根据第三厂方提供的入参json集合生成(构建)实体类,(IDEA可以使用Gsonformat插件),也可以手动建立,使用@JSONField注解映射下划线参数,与驼峰关系例:public class ...原创 2019-07-17 10:53:55 · 6025 阅读 · 0 评论 -
Java List容器分析
ArrayList、Vector、LinkedList优缺点ArrayList:它长于随机访问元素,但是在List的中阅插入和移除元素时较慢。LinkedList:代价较低的在List中间进行的插入和删除操作(链表的特性),提供了优化的顺序访 问。LinkedList在随机访问方面相对比较慢,但是它的特性集较ArrayList 更大。Vector:线程安全集合容器- 1、ArrayList...原创 2019-07-26 17:50:35 · 184 阅读 · 0 评论 -
服务器如何访问本地工程
正常情况下,公网服务器是不能访问到我们本地电脑的工程的,我们本地的私有IPV4地址,不能与公网IP地址进行对接。 如果想要公网服务直接访问本机,进行对接调试,或者其他的用途,可以通过第三方应用,将本机的IP地址进行代理,然后通过代理...原创 2019-12-18 11:18:06 · 1208 阅读 · 0 评论 -
枚举,switch组合使用
switch与枚举组合使用:switch后可跟枚举,基础类型。不能跟包装类型,编译器也会报错/** * @Author: Xiangyong.zeng * @Date: 2019-08-29 15:40 * @Description: 匹萨工厂 */public class SimplePizzaFactory { public Pizza createPizza(int...原创 2019-09-12 18:01:18 · 545 阅读 · 0 评论 -
java 接口
接口的定义java的设计语言中,接口不是类,而是对类一组需求的描述,这些类要遵从接口描述的统一格式进行定义一个类可以实现一个或者多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。接口中的所有方法自动属于public接口的特性与可以建立类的继承关系一样,接口也可被扩展,允许存在多条从具有较高通用性的接口到较高专用性的接口的链,即:接口之间也可以存在继承关系接口中不能包含实...原创 2019-09-08 21:21:16 · 123 阅读 · 0 评论 -
枚举类,Integer包装类提供的基本方法
一、枚举类ordinal 返回枚举常量在枚举中声明的位置,位置数从0开始计数 TestEnum.valueOf("SMALL").ordinal()compareTo(E other) 比较两个枚举常量的位置,this在other之前返回负值,等于返回0,this在other后返回正数TestEnum.valueOf("BIG").compareTo(TestEnum.valueOf("...原创 2019-09-07 23:59:54 · 1132 阅读 · 0 评论 -
java equals StringBuilder对象对比返回false
以前一直认为equals比较两个对象是不相等,首先比较类型,再对比值,然而不是。equals对比,首先对比的是获取到的hashcode值,再进行内容比较。 String a = "小乔"; String b = new String("小乔"); System.out.println(a.hashCode()); System.out.prin...原创 2019-09-01 23:48:30 · 505 阅读 · 0 评论 -
java继承
继承:基于已存在的类,构建一个新类,继承已存在类的方法和域。super:指示编译器调用超类的特殊关键字当子类对父类方法进行重构时,并且调用到父类方法时,不能直接普通调用,普通调用实际上是子类方法自己调自己,需使用super指向超类调用。超类的域定义为私有域时,子类是不能对超类的私有域进行访问的。如果超类中有参构造器对私有域进行定义,子类有参构造器中亦需要对超类私有域进行定义时,可以在子类构...原创 2019-08-29 22:27:50 · 117 阅读 · 2 评论 -
java entity、json、map相互转化
一、json 转 entity、mapjson 转entity、map,依赖fastjson相对容易,使用fastjson包中的toJavaObject()方法,可以同时完成转map,entity public static <T>T jsonToMapOrJavaBean(JSON jsonObject,Class<T> clazz){ r...原创 2019-08-29 15:10:21 · 1787 阅读 · 0 评论 -
java 类对象构造
1、重载2、域3、构造器4、初始化块一、重载多个方法有相同的名字,不同的参数,便产生了重载。//构造器重载class test{ test(){ } test(String name){ }}二、域默认初始化域如果在构造器中没有显式的给域赋予值,那么会被默认的赋予默认值,数值:0,boolean:flase,对象:null即:在定义参数时没有直接赋值,...原创 2019-08-28 22:51:58 · 245 阅读 · 0 评论 -
String,StringBuffer,StringBuilder分析
1、String:String类中每一个看起来会修改String值的方法,实际上都是创建了一个全新的String对象,以包含修改后的字符串内容,而最初的String对象则纹丝未动。String字符串不可变,线程安全,开销大,垃圾产生多2、StringBufferStringBuffer每一个修改方法,实际都是在操作StringBuffer所创建的对象StringBuffer字符串可...原创 2019-08-02 17:42:12 · 90 阅读 · 0 评论