Java
咻咻ing
全栈开发工程师
展开
-
将本地Jar添加到maven依赖的正确方式
在使用SpringBoot项目开发时,如果使用本地Jar导入的依赖库,可能会报错误:此时你需要把本地jar通过maven的方式配置到pom文件中,在你的项目中创建libs目录,把你的jar包复制进去,然后配置pom.xmlscope配置为system,systemPath配置为文件路径。还有一种方式就是把本地jar包推送到公司内部的私有仓库,配置好你的maven仓库地址和对应的repositoryId,在你的maven setting.xml文件中可以找到配置。...原创 2022-07-04 11:53:24 · 2209 阅读 · 0 评论 -
neo4j ogm Class com is not a valid entity class. Please check the entity mapping问题
neo4j :: Getting java.lang.IllegalArgumentException: Class class com.my.domain.Actor is not a valid entity class. Please check the entity mapping. 意思就是Actor不是一个有效的实体类,请检查实体Mappin原创 2022-07-03 12:04:12 · 580 阅读 · 0 评论 -
解决Xjar加密后,反射异常问题
Xjar 工具介绍Xjar是Spring Boot JAR 安全加密运行工具,同时支持的原生JAR。基于对JAR包内资源的加密以及拓展ClassLoader来构建的一套程序加密启动,动态解密运行的方案,避免源码泄露或反编译。无需侵入代码,只需要把编译好的JAR包通过工具加密即可。完全内存解密,杜绝源码以及字节码泄露或反编译。支持所有JDK内置加解密算法。可选择需要加解密的字节码或其他资源文件,避免计算资源浪费。但是,在使用Xjar加密后,当我们使用getTypesAnnotatedWith原创 2021-07-16 16:52:00 · 1251 阅读 · 0 评论 -
使用JGit报错:Algorithm negotiation fail 的解决方案
今天在Java项目中,使用JGit库用SSH协议拉取远端代码时,遇到不少错误,踩了不少坑才解决问题,在此记录下来,希望对大家有帮助。首先说下使用环境:代码在Linux服务器上面运行是没有问题的,可以使用ssh拉取代码。本地的MacBook使用ssh可以拉取代码,但是用Java代码拉取不行。问题解决代码报错:com.jcraft.jsch.JSchException: Algorithm negotiation fail这个意思是说算法协商失败,SSH通信协议有一个密约和算法协商阶段,在这原创 2021-05-02 21:57:37 · 2004 阅读 · 2 评论 -
解决错误:Error opening zip file or JAR manifest missing
在Mac IDEA中在运行页面配置javaagent执行报错:Error occurred during initialization of VMagent library failed to init: instrumentError opening zip file or JAR manifest missing : /work/org.jacoco.agent-0.8.5runtime.jar解决方案agent引用的路径使用绝对路径。路径加引号:-javaagent:"/work/or原创 2021-03-11 20:10:11 · 20976 阅读 · 0 评论 -
解决方案:MYSQL ERROR 1055: GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
在使用MySQL执行Group By查询语句时,报错:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'database_tl.emp.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_m原创 2021-02-22 15:06:59 · 333 阅读 · 0 评论 -
java.lang.IllegalThreadStateException: process hasn‘t exited异常解决方案
在使用Process执行shell命令时,如果使用APIexitValue()来判断shell是正常结束(即exit 0)还是异常结束,则可能引发异常:java.lang.IllegalThreadStateException: process hasn’t exited因为exitValue方法没有阻塞,如果执行shell命令的进程还没有结束,则会引发异常,源码实现如下:public synchronized int exitValue() { if (!hasExited) {原创 2021-01-05 14:02:42 · 5109 阅读 · 1 评论 -
带你深入理解Spring IoC原理,Java面试不在难
IoC(Inversion of Control,控制反转)也称为依赖注入(Dependency Injection),作为Spring的一个核心思想,是一种设计对象之间依赖关系的原则及其相关技术,作为Spring的一个关键技术,让我们好好的了解一下吧。IoC是什么?高内聚低耦合可以说是软件技术形态的终极目标。用学术界的话来说,软件的两个本质特性就是构造性和演化性,高内聚低耦合的设计能够让构造和演化都更加高效,比如:开发更方便组织分工代码更容易进行复用更容易进行测试软件演化有更好的灵活性,能原创 2020-12-10 23:03:21 · 151 阅读 · 0 评论 -
RandomAccessFile 读取中文乱码解决方案
RandomAccessFile 读写文件时,不管文件中保存的数据编码格式是什么,使用 RandomAccessFile对象方法的 readLine() 都会将编码格式转换成 ISO-8859-1 。所以 输出显示是还要在进行一次转码解决方式package fileReadAndWrite;import java.io.FileNotFoundException;import java....原创 2020-05-08 17:25:14 · 1157 阅读 · 0 评论 -
Java内存分析工具Mat(Memory Analyzer Tool)加速下载地址
MAT(Memory Analyzer Tool)工具是eclipse的一个插件(MAT也可以单独使用),使用起来非常方便,尤其是在分析大内存的dump文件时,可以非常直观的看到各个对象在堆空间中所占用的内存大小、类实例数量、对象引用关系、利用OQL对象查询,以及可以很方便的找出对象GC Roots的相关信息,当然最吸引人的还是能够快速为开发人员生成内存泄露报表,方便定位问题和分析问题。但是Ma...原创 2019-10-21 10:40:59 · 7776 阅读 · 4 评论 -
Mac下安装MySQL-python-1.2.5问题
在Mac下,使用Python2.7操作MySQL需要导入MySQLdb,在代码中执行以下代码import MySQLdb如果执行后的输出结果如下所示,意味着你没有安装MySQLdb模块:Traceback (most recent call last): File "./hello.py", line 3, in <module> import MySQLdbIm...原创 2019-08-26 16:00:40 · 352 阅读 · 0 评论 -
面试必问: String为什么是final类型的
final关键字的含义final在Java中是一个保留的关键字,可以声明成员变量、方法、类以及本地变量。一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变量再次初始化的话,编译器会报编译错误。final关键字的好处final关键字提高了性能。JVM和Java应用都会缓存final变量。final变量可以安全的在多线程环境下进行共享,而不需要额外的同步开...原创 2019-08-26 15:48:01 · 287 阅读 · 0 评论 -
Java 反射使用看这一篇就够了
##1、什么是反射反射(Reflection)能够让运行于JVM中的程序检测和修改运行时的行为。##2、我们为何需要反射反射能够让我们:在运行时检测对象的类型;动态构造某个类的对象;检测类的属性和方法;任意调用对象的方法;修改构造函数、方法、属性的可见性;以及其他。##3、Java 为什么支持反射Java运行时仍然拥有类型信息,它包含了这个类一切:它有哪些字段、哪些方法,...原创 2019-08-26 15:37:52 · 139 阅读 · 0 评论 -
Zookeeper源码学习系列
ZooKeeper源码学习笔记(1)–client端解析 ZooKeeper源码学习笔记(2)–Standalone模式下的ZooKeeper ZooKeeper源码学习笔记(3)–Cluster模式下的ZooKeeper ZooKeeper源码学习笔记(4)–集群选主算法...原创 2018-07-26 17:00:40 · 389 阅读 · 0 评论 -
MongoDB备份恢复操作,一文搞定
MongoDB 连接mongo 127.0.0.1:27317 -u test -p 密码 --authenticationDatabase gtestMongoDB 备份mongodump -h 127.0.0.1:27317 -u test -p 密码 --authenticationDatabase gtest -o /Users/wang/Downloads/mon...原创 2018-09-14 11:16:02 · 168 阅读 · 0 评论 -
MongoDB4.0版本下载包
解决 MongoDB下载中心:https://www.mongodb.com/download-center/community经常无法下载的问题MongoDB4.0Mac版 网盘下载:点击下载原创 2018-12-14 14:49:18 · 1987 阅读 · 0 评论 -
Mac下安装Kafka
安装命令$ brew install kafkaUpdating Homebrew...==> Installing dependencies for kafka: zookeeper==> Installing kafka dependency: zookeeper==> Downloading https://homebrew.bintray.com/bottles...原创 2019-01-08 16:58:50 · 832 阅读 · 0 评论 -
Mac下Redis环境搭建
Redis安装$ brew install redisUpdating Homebrew...==> Downloading https://homebrew.bintray.com/bottles/redis-5.0.3.sierra.bottle.tar.gz###########################################################...原创 2019-01-08 17:15:22 · 239 阅读 · 0 评论 -
405 Method Not Allowed
在Spring Boot 中写了一个服务,@RestController@RequestMapping("/demo/api")public class ServiceController { private static final Logger logger = LoggerFactory.getLogger(ServiceController.class.getName());...原创 2019-01-09 11:03:12 · 9112 阅读 · 0 评论 -
Mac自带的Java设置JAVA_HOME
我们都知道Mac默认带有Java工具,在shell终端中输入$ java -versionjava version "1.8.0_181"$ which java/usr/bin/java可以看的我们可以正常的使用java命令了,但是我们很多时候是需要知道JAVA_HOME的,并且在环境变量中设置JAVA_HOME的,但是Mac并没有设置JAVA_HOME$ echo $JAVA_H...原创 2019-02-16 14:14:49 · 6781 阅读 · 0 评论 -
Spring开发错误:Unrecognized field, not marked as ignorable
最近在开发Spring项目时,将前台传递的JSON 串转成Java实体对象,遇到错误:Unrecognized field, not marked as ignorable,该错误的意思是说,不能够识别的字段没有标示为可忽略。出现该问题的原因就是JSON中包含了目标Java对象没有的属性。Spring底层使用的Json库是Jackson,Jackson是一个可以轻松的将Java对象转换成json...原创 2019-04-16 17:55:37 · 5897 阅读 · 0 评论 -
Spring自定义反序列化
在Spring开发中,我们经常使用Jackson进行Json数据和Bean对象之间的序列化和反序列化。Json数据和Bean对象之间一一对应,转化起来非常方便。但是,如果我们有一个Child父类,有两个类Son和Daughter继承Child父类public Class Child { private String type; // son or daughter}public Cla...原创 2019-04-19 16:37:08 · 1527 阅读 · 1 评论 -
The POM for XXX is invalid, transitive dependencies (if any) will not be available 引发的打包问题
问题发生的原因时:在本地运行代码时正确执行,运行Jar时提示类找不到。现象:打出来的包中缺少了一个依赖的Jar包,正是找不到的类所在的Jar包。打包日志:提示The POM for XXX is invalid, transitive dependencies (if any) will not be available。解决方式:清除所有的Maven依赖的缓存,重新打包。问题根源:Mav...原创 2019-05-13 16:46:30 · 12567 阅读 · 2 评论 -
解决FastJSON反序列化顺序问题
fastjson默认在序列化时是按照字段的字母顺序进行序列化的,这样序列化出来的Json数据中字段的顺序就与类中定义的字段顺序不一致了。默认按字母排序序列化的速度会快一些,但是有时候我们并不希望按照字母顺序进行序列化。现在提供几种方式来支持自定义序列化顺序。自己设置排序规则,通过JSONType的orders来指定排序规则:// 设置排序规则@JSONType(orders={"user_...原创 2019-07-22 09:43:52 · 3629 阅读 · 1 评论 -
Spring Boot 学习系列
第一篇:快速创建一个简单的应用 第二篇:配置文件相关知识 第三篇:日志配置 第四篇:构建一个Restful API以及集成Mybatis访问数据库 第五篇:使用Redis 第六篇:使用Redis实现消息队列 第七篇:使用Thymelaef模板 第八篇:集成MongoDB 第九篇:使用定时任务 第十篇:使用RabbitMQ收发消息...原创 2018-07-04 17:12:50 · 163 阅读 · 0 评论