java
文章平均质量分 53
goodjob110
程序猿
展开
-
性能跟踪三板斧
JVM调试工具#jps查看所有的jvm进程,包括进程ID,进程启动的路径等等。我自己也用PS,即:ps -ef | grep java#jstack观察jvm中当前所有线程的运行情况和线程当前状态。系统崩溃了?如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。系统hung住了?jstack工具还可以附属到正在运行的java程序中,看到当原创 2021-08-30 09:46:24 · 1135 阅读 · 0 评论 -
RestEasy 3.x 系列:使用Hibernate_Validator进行数据校验
使用Hibernate_Validator进行数据校验,好处不言而喻:规范统一,低耦合度。1.pom.xml<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5....原创 2018-12-04 10:08:59 · 1489 阅读 · 2 评论 -
springboot项目后台启动jar 和开机启动
1.注册服务,开机启动添加服务vim /etc/systemd/system/admin.service复制粘贴以下内容:[Unit]Description=config serviceAfter=syslog.target [Service]Type=simpleExecStart=/usr/develop/java/jdk1.8.0_221/bin/java -jar -Xms3072m -Xmx3072m -XX:CompressedClassSpaceSize=1原创 2021-08-18 10:19:31 · 231 阅读 · 0 评论 -
Zuul切换Thread隔离模式的正确方法
默认情况下,Zuul的隔离策略是SEMAPHORE 。但一些场景下,我们可能需要将隔离策略改为THREAD 设置zuul.ribbonIsolationStrategy=THREAD 即可(注意:execution.isolation.strategy=THREAD这个配置不会生效)。当 zuul.ribbonIsolationStrategy=THREAD 时,Hystrix的线程隔离策略将会作用于所有路由。此时,HystrixThreadPoolKey 默认为“RibbonCommand”。这意味着原创 2021-05-31 16:49:38 · 397 阅读 · 0 评论 -
@FeignClient注解 中属性 contextId使用
一、概述如果我们使用Feign定义了两个接口,但是目标服务是同一个,那么在SpringBoot启动时就会遇到一个问题:Description:The bean 'optimization-user.FeignClientSpecification', defined in null, could not be registered. A bean with that name has already been defined in null and overriding is disabled.原创 2021-05-27 10:14:36 · 6909 阅读 · 1 评论 -
Docker容器部署CDH
Docker容器部署CDH文章目录Docker容器部署CDH一、 概述1.1目的1.2 linux服务1.3 容器服务1.4 端口相关二、 具体操作流程2.1 安装docker[绿色安装]2.1.1解压docker压缩包2.1.2复制docker 部署文件夹2.1.3启动docker服务2.1.3.1 方式一:直接启动docker服务2.1.3.2 方式二:自定义docker服务2.1.4测试安装是否成功2.1.4.1方式一 docker -v2.1.4.2方式二 docker info2.1.4.3 方原创 2021-05-17 14:02:57 · 3524 阅读 · 0 评论 -
修改jar文件,重新打包
目录一、报错二 、处理方案2.1方案一:2.1.1解压jar文件2.1.2修改解压后后的文件2.1.3 重新打包2.2方案二:一、报错Caused by: java.io.IOException: Unable to open nested jar file 'BOOT-INF/lib/xxxx-0.0.1-SNAPSHOT.jar' at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(.原创 2021-05-17 10:25:51 · 608 阅读 · 0 评论 -
Linux 杀掉所有Java进程
目录一、 Linux查看所有Java进程二、使用awk分割结果,获取PID三、杀死进程 kill -9 PID一、 Linux查看所有Java进程ps -ef | grep java | grep -v grep(是在列出的进程中去除含有关键字"grep"的进程)二、使用awk分割结果,获取PIDawk '{print $2}'ps -ef | grep java | grep -v grep |awk '{print $2}'三、杀死进程 kil...原创 2021-02-24 17:43:19 · 6999 阅读 · 0 评论 -
Spring Cloud.Finchley版 Gateway整合Swagger聚合微服务系统API文档
一、概述版本说明:SpringBoot2:2.0.5.RELEASE,Spring Cloud.Finchley版;说明:Spring Cloud Gateway替换Zuul的时候发现Swagger并不支持以WebFlux为底层的Gateway,无法集成,运行报错;二、网关配置2.1 pom文件:<dependencies> <dependency> <groupId>org.springframework..原创 2020-12-08 09:43:14 · 477 阅读 · 0 评论 -
springboot Validation
项目源码:https://github.com/leijihui/springboot-validation简单使用Java API规范(JSR303)定义了Bean校验的标准validation-api,但没有提供实现。hibernate validation是对这个规范的实现,并增加了校验注解如@Email、@Length等。Spring Validation是对hibernate validation的二次封装,用于支持spring mvc参数自动校验。接下来,我们以spri...原创 2020-11-04 16:18:55 · 2929 阅读 · 0 评论 -
没有外网,IDEA如何离线使用maven仓库?
我们开发涉密项目的时,需要在内网的环境下调试程序,这时候一个比较头疼的问题是无法下载相关的maven依赖,导致项目无法编译启动。怎么解决这个问题呢?第一步,将相关的maven依赖在外网的环境中下载好,然后将整个repository打包后拷贝到内网的机器上并解压:第二步,将maven的配置文件settings.xml拷贝一份出来,在localRepository中配置本地仓库的地址。例如我刚才拷贝出来的仓库放在D:/repository下,然后配置下本地的镜像,本地仓库的地址一定要配置正确。&l转载 2020-08-28 09:55:50 · 2654 阅读 · 1 评论 -
SpringBoot 对Future模式的支持
一.概述 我们在实际项目中有些复杂运算、耗时操作,就可以利用多线程来充分利用CPU,提高系统吞吐量。SpringBoot对多线程支持非常好,对我们的开发非常便捷。 Future模式是多线程开发中非常常见的一种设计模式。核心思想是异步调用。当我们执行一个方法时,方法中有多个耗时任务需要同时去做,而且又不着急等待这个结果时可以让客户端立即返回然后,后台慢慢去计算任务。 当我们做一件事的时...原创 2020-02-11 10:40:48 · 1004 阅读 · 0 评论 -
SpringBoot2.1监听的使用
一.概述监听的用途很多,根据业务需要可以选择适当的监听来完成想要处理的功能,这里使用监听来完成业务的解耦。用户注册流程:①数据入库 -> ②发送激活用户邮件 -> ③赠送初始积分当用户注册时,主流程其实只需完成①数据入库,然后返回注册成功信息给用户,主流程其实就可以结束了,如果②和③也跟①写到一起,那么注册耗时将变长,用户体验变差,这时需要进行业务的拆分,主流程只需要完成①...原创 2020-02-10 15:22:30 · 298 阅读 · 0 评论 -
java----监听器的作用
一.Web监听器导图祥解二.Web监听器2.1 什么是web监听器? web监听器是一种Servlet中的特殊的类,它们能帮助开发者监听web中的特定事件,比如ServletContext,HttpSession,ServletRequest的创建和销毁;变量的创建、销毁和修改等。可以在某些动作前后增加处理,实现监控。2.1 监听器常用的用途 通常使用Web监听器做以...转载 2020-02-10 15:13:41 · 2484 阅读 · 0 评论 -
2018年支持java8的Java反编译工具汇总
大多商业软件,会对程序进行加密、加壳等安全措施以防范软件被破解,从而使得反编译越来越难。反编译是一个对目标可执行程序进行逆向分析,从而得到源代码的过程。尤其是像Java这样的运行在虚拟机上的编程语言,更容易进行反编译得到源代码。 我们知道,在代码支撑方面,JDK 1.7引入了字符串Switch、泛型接口改进等新功能,1.8增加了lambda表达式、方法传递、多重注解等新特性,这使得...原创 2018-11-22 09:37:38 · 2411 阅读 · 0 评论 -
java反编译工具
介绍Java 反编译工具有很多种,以下介绍其中一些工具jadjad 是一款使用非常广泛地 Java 反编译工具,官网 http://www.varaneckas.com/jad 提供下载批量反编译 .class 示例jad.exe -r -ff -d src -s java classes/**/*.class其中 -r 表示恢复源文件的目录结构,-ff 表示将类属性定义...原创 2018-11-22 09:35:45 · 705 阅读 · 0 评论 -
IDEA GsonFormat插件 Json字符串自动生成实体类
安装不用说,plugins里搜索GsonFormat,install完重启IDEA。初始状态,一段json: { "id": 0, "title_hello": "aaa", "children": [ { "id": 9, "title_hell.原创 2018-11-23 16:24:42 · 1247 阅读 · 0 评论 -
Idea中GsonFormat插件安装
插件地址:https://plugins.jetbrains.com/idea/plugin/7654-gsonformat这个教程主要是学习IntelliJ IDEA 如何通过GsonFormat插件将JSONObject格式的String 解析成实体。一般来说IDEA的插件安装非常简单,对于很多插件来说,只要你知道插件的名字就可以在IDEA里面直接安装。File->Sett...原创 2018-11-23 16:27:42 · 45433 阅读 · 2 评论