自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (2)
  • 收藏
  • 关注

原创 JAVA项目不同环境使用不同依赖包的处理

背景:项目是通过jenkis打包,通过K8S更新,从开发环境推送到测试环境,再推送UAT环境,最后推送生产环境。项目中与某银行对接,银行给的SDK包在测试,UAT,生产环境上都不一样,先把不同的包分别增加以test,uat,prod后缀命名artifactId上传到maven私库。方案一:修改pom文件依赖,每次都从开发环境一路更新到对应的环境,此方案的缺点有2个,第一点是很麻烦,每次都得改pom文件依赖,得重新打包更新。

2024-04-26 15:26:29 645 2

原创 tomcat读取指定目录的配置文件

在生产环境下,为了保证配置文件不被随意修改,一般项目部署的时候都需要把代码与配置文件分离,如把配置文件放到tomcat的conf目录下,让tomcat读取配置文件需要在tomcat的bin目录的catalina.sh文件里增加 CLASSPATH=/home/hycs/invoice-admin/conf 如果tomcat的项目需要指定特定的版本,则在catalina.sh文件里增加expor...

2020-03-29 22:12:34 2821

原创 java.security.InvalidKeyException: Illegal key size错误

新使用了AES的256位密钥加解密,项目上线后发现生产在加密的时候报java.security.InvalidKeyException: Illegal key size错误,而本地和测试环境都是没问题的。产生错误原因:为了数据代码在传输过程中的安全,很多时候我们都会将要传输的数据进行加密,然后等对方拿到后再解密使用。我们在使用AES加解密的时候,在遇到128位密钥加解密的时候,没有进行什么特...

2020-03-26 18:32:31 39909 45

原创 在Java项目进行增量更新的时候出现java.lang.NoSuchMethodError的问题的原因

在对某个bean类的属性修改了类型,然后将编译后的class拷贝到发布的项目中替换掉原先的class文件,运行项目后可能会报出java.lang.NoSuchMethodError错误。 此错误是因为引用这个修改类的类没有进行重新编译与替换更新导致的,Java在编译的时候确定方法的签名,引用类在编译时使用修改前的类的方法进行签名,而此时修改的bean类的属性已经修改了...

2020-03-25 18:43:43 421

原创 mysql大批量数据插入优化

目前在项目中发现一张700万的表,插入10万条数据通过Mybatis的批量插入大概需要3分钟左右,耗时太长。现在通过mysql的LOAD DATA LOCAL INFILE命令进行优化插入。最后测试10万条数据批量插入大概在3秒左右的时间。定义命令执行语句public interface FastBatchInsertSqlConstants { String VERIFY_O...

2020-03-19 17:49:19 1296

原创  通过反射获取对象某个属性的值

通过反射获取对象某个属性的值public class DataLinkAspect { private static String[] types = { "java.lang.Integer", "java.lang.Double", "java.lang.Float", "java.lang.Long", "java.lang.Short", "java.lang.Byte...

2020-03-19 16:49:07 1544

原创 项目里时间与linux系统时间不一致问题

Java运行打印日志与系统时间不一致问题解决方法:1.修改/etc/sysconfig/clock文件,若没有该文件则创建。#编辑/etc/sysconfig/clockvim /etc/sysconfig/clock#添加如下内容ZONE="Asia/Shanghai"UTC=falseARC=false如果没权限修改,需使用sudovim /etc/sysconfi...

2020-03-16 20:43:38 1781 1

原创 记一次想利用分布式锁解决数据并发安全问题,但最后因为事务导致失败的问题

在生产上发现有Expectedoneresult(ornull)tobereturnedbyselectOne(),butfound:2的报错,后面定位到如下代码,首先进行数据库查询,如果查询不到调百度的ip定位接口,然后再插入到数据库。此处如果有多个线程先进行查询,然后再插入,又因为数据库中IP字段没有设置唯一索引,导致数据库中IP相同的数据会有多条。@Servi...

2019-03-25 17:51:27 707 1

原创 java获取本地机器IP地址和访问的端口

Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces(); while (allNetInterfaces.hasMoreElements()){ NetworkInterface netInterface = (NetworkInterfac...

2019-03-25 11:44:13 2137

DBImport 数据库数据导出,表设计导出与数据库文档生成工具

一款支持从一种数据库中反向工程生成多种数据库脚本和多数据库间批量互导数据功能的小工具。 功能1:反向工程,从任意一种数据库生成另外一种数据库脚本 功能2:导数据功能:从任意一种数据库导数据到另外一种数据库 功能3:生成数据库设计文档,从任意一种数据库生成任意的数据库类型数据库文档

2019-03-14

线程分析工具jca436.jar

IBM 线程和监控堆分析器,能找到死锁,线程挂死等问题,可分析javacore文件等。

2019-03-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除