Java
文章平均质量分 74
Java日常开发,Spring Boot,Spring Cloud,Java 中间件,架构设计
davidullua
前华为人,ATM架构师,日常开发经验分享,互联网架构分享
展开
-
IntelliJ IDEA 中找不到 protocol buffer 生成的 Java 类的解决方法
IntelliJ Idea 中找不到 protocol buffer 生成的 class 类,而在命令行使用 mvn build, mvn package 项目是可以正常编译的。原创 2022-12-04 20:25:25 · 2513 阅读 · 0 评论 -
三个步骤使用 maven release 管理 Java 项目的版本号
在多模块的 maven 项目中,模块的版本号升级,如果使用手工方式管理,很花时间,容易出错。 各个模块直接有依赖关系,更新版本号容易改漏。正确的做法是使用 mvn release 插件。这个插件不需要安装。 只需要在工程的 pom.xml 中设置项目的代码库地址即可。原创 2022-10-09 08:30:00 · 3423 阅读 · 0 评论 -
Spring Boot 应用启动时 java.lang.reflect.InaccessibleObjectException 问题的解决
Spring Boot 的应用启动的时候遇到下面的错误 java.lang.reflect.InaccessibleObjectException: Unable to make private native ... accessible原创 2022-06-08 18:44:20 · 13128 阅读 · 2 评论 -
K8S 中创建 etcd 集群
单节点 etcd 服务, k8s中启动etcd集群,创建 root 用户, 启用鉴权; 通过命令行客户端访问数据。原创 2022-01-08 16:56:28 · 2125 阅读 · 0 评论 -
使用 JKube 构建Springboot应用的Docker镜像
JKube 省去了配置 Dockerfile, k8s manifest 的过程。自动化了 docker 镜像的构建。极大提高了 Java 应用云原生环境集成的效率。使用 JKube 来构建 Java 应用的镜像, 只需要引入 kubernetes-maven-plugin 就可以了。原创 2022-01-07 22:58:06 · 1221 阅读 · 0 评论 -
如何签名(Presign)一个AWS S3文件
如何使用 amazon aws sdk 签名(Presign)一个S3文件原创 2021-12-17 10:11:25 · 2838 阅读 · 0 评论 -
SpringBoot 应用从 JDK 8 升级到 JDK 11+遇到的问题与方案
最近把应用从 JDK 8 升级到 JDK 14, 遇到不少问题 。这些问题是 从 JDK 8 升级到 JDK 11+ (或者 JDK 9+)都容易遇到的问题。 做一个总结分享1.BASE64Decoder Not found原先的代码:import sun.misc.BASE64Decoder;BASE64Decoder decoder = new BASE64Decoder();byte[] b = decoder.decodeBuffer(s);改成 JDK 新版原创 2021-06-29 10:53:19 · 1962 阅读 · 0 评论 -
如何使用 Elastic Search Low Level API 构造请求进行搜索
场景:需要在客户端构造请求调解, 调用 Elastic Search 的 API 取到结果,并且能够使用 ES 的授权机制。方案:在原创 2021-06-01 11:03:16 · 1428 阅读 · 1 评论 -
如何从 json 源文件自动生成 Java 代码
## 场景:Restful 服务返回 Json 文件。需要定义对应的 Java 类。以便直接将返回的数据转换为 Java 类。 如 Elastic Search Low Level API 返回的 Json。 在 Kibana 后台访问 ES 返回的格式即是 Low Level API返回的 JSON.方案:1.使用 jsonschema2pojo 命令行.https://github.com/joelittlejohn/jsonschema2pojo/wiki/Getting...原创 2021-05-31 20:57:39 · 2517 阅读 · 0 评论 -
重新打包 SpringBoot 应用 Jar包
有时候我们需要更改 SpringBoot 应用 Jar 包的配置文件内容,第一反应是先解压, 修改解压后的文件内容,然后再重新打包。就是先 unzip,然后再用 jar 命令指定Manifest文件(在manifest文件中指定Main-Class)或者直接指定执行的类来重新打包。简单一点的方法是 解压出来 jar 包中的配置文件, 更新配置文件, 然后使用 jar 命令来更新原始 jar包中的配置文件:1. unzip ../my-boot-app.jar2.vim BOOT-INF/c.原创 2021-05-08 08:31:11 · 1346 阅读 · 0 评论 -
SSRF 漏洞的原理以及 Java 中的处理
SSRF 漏洞的原理以及 Java 中的处理SSRF漏洞的原理有漏洞的 Java 代码示例Java 中如何避免 SSRF开源项目SSRF漏洞的原理SSRF(Server-Side Request Forgery:服务器端请求伪造) 是由攻击者构造非授权的 URL, 由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。比如黑客攻击公司内部的论坛, Wiki, 工作流, 项目管理等系统. 大量的内部系统都提供内部匿名的访问方式, 不需要登陆即可以从内网访问到.当一个原创 2021-01-17 22:02:48 · 3433 阅读 · 0 评论 -
奇异的java异常:java.lang.ClassFormatError: Truncated class file
今天运行java时,彭到java.lang.ClassFormatError: Truncated class file的异常,大致是这个样子的堆栈:Exception in thread XXX java.lang.ClassFormatError: Truncated class fileat java.lang.ClassLoader.defineClass1(Native Me...2010-09-16 16:57:25 · 5009 阅读 · 0 评论 -
rsync maven中央仓库的几点经验
经过近1个月的断断续续的日夜工作,俺的机器终于把maven的中央仓库的jar包全部sync下来了。 总结几点经验:1.rsync的时候排除掉那些压缩包, --exclude "*.zip" --exclude "*.gz" --exclude "*.war" --exclude "*.bz" --exclude "*.bz2"。 这些压缩文件通常都没什么用。2.限制一下下载速度,貌...2010-09-13 11:50:54 · 545 阅读 · 1 评论