Java
yunzhonghefei
这个作者很懒,什么都没留下…
展开
-
javac 编译Java源代码时,添加依赖jar包
通过命令行来编译Java源文件时,需要依赖额外的jar包,可以进行这样设置:G:\D\Development\Mzywx\JavaDevelopment4\jdk1.6.0_45\bin\javac -encoding utf-8 -Djava.ext.dirs=ext_libs -d classes com\xxx\xxxx\*.java原创 2022-03-11 16:14:51 · 3582 阅读 · 0 评论 -
线上问题排查----------ORG.APACHE.CATALINA.CONNECTOR.CLIENTABORTEXCEPTION: JAVA.IO.IOEXCEPTION: BROKEN PIPE
今天公司技术支持的童鞋报告一个客户的服务不工作了,紧急求助,于是远程登陆上服务器排查问题。 查看采集数据的tomcat日志,习惯性的先翻到日志的最后去查看有没有异常的打印,果然发现了好几种异常信息,但是最多还是这个:24-Nov-2016 09:54:21.116 SEVERE [http-nio-8081-Acceptor-0] org.apache.tomcat.util.net.NioEndpoint$Acceptor.run Socket accept failed java.i...转载 2021-12-02 17:38:32 · 1239 阅读 · 0 评论 -
ElasticSearch
git ELK:https://github.com/ShayLau/ElasticSearch-demoElasticSearch download:https://www.elastic.co/cn/downloads/elasticsearchhttps://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-2-3ElasticSearch 文档:https://www.elastic.co/guide/cn/elas.原创 2021-10-13 18:06:14 · 90 阅读 · 0 评论 -
Logstash 导入数据到ES所遇到的问题和经验
Logstash 导入数据到Elastic所遇到的问题和经验,整理如下:1、导入中文乱码,需要在配置文件中,增加编码指定,具体可以参考:input { file { path => "F:/logstash-data-movie-latest/ml-latest/jsonResult.csv" start_position => "beginning" sincedb_path => "F:/logstash-data-movie-latest/ml-原创 2021-07-02 17:48:42 · 3709 阅读 · 1 评论 -
Linux 搭建Elastic所遇到的问题
1、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]解决方法:在/etc/sysctl.conf文件最后添加一行vm.max_map_count=262144重新加载文件,使生效:执行/sbin/sysctl -p 立即生效2、max file descriptors [4096] for elasticsearch process is too原创 2021-07-02 17:28:30 · 113 阅读 · 0 评论 -
向ElasticSearch中导入数据的几种方法
logstash 从mysql导出到es:input { jdbc { jdbc_driver_library => "./mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://xxxxxx.mysql.s...原创 2021-06-30 09:29:16 · 9945 阅读 · 3 评论 -
华为云各版本JDK高速下载通道
华为云各版本高速下载通道:https://repo.huaweicloud.com/java/jdk/原创 2021-06-29 16:09:19 · 354 阅读 · 0 评论 -
ElasticSearch
git ELK:https://github.com/ShayLau/ElasticSearch-demoElasticSearch download:https://www.elastic.co/cn/downloads/elasticsearchhttps://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-2-3ElasticSearch 文档:https://www.elastic.co/guide/cn/elas.原创 2021-06-23 16:48:11 · 86 阅读 · 2 评论 -
idea 项目依赖项都在,但总提示程序包找不到
问题如题:当是未进行截图,只进行问题描述,描述如下:maven的依赖项,按照上篇文章,idea 本地配置maven仓库后,仍然从C盘默认位置.m2下的仓库进行依赖进行设置后,依赖项已经全部正常,但是在启动服务时,又提示找不到xxx程序包,并且不止一个。在多次clean,重启后,问题依然。后按照如图所示进行处理:在弹出框中,输入 idea:idea 后回车,完成后,再次启动服务,一切正常。如果还不行,可以参考:IDEA 程序包不存在,找不到符号但是明明存在对应的j...原创 2021-05-23 14:24:43 · 1656 阅读 · 0 评论 -
idea 本地配置maven仓库后,仍然从C盘默认位置.m2下的仓库进行依赖
问题如题:本地导入新的项目,并在settings/maven中进行maven路径的设置,然后pom中一堆报错,找不到对应的依赖项,查看如图所示的依赖项:仍然是从C盘的默认位置进行依赖(图中的依赖后来已经调整正确),明显不正确。该问题从两个方面进行排查处理:1、很简单,在确认maven环境的正常配置后(包含idea中maven的配置,maven本身settings.xml的配置,如本地仓库,远程仓库等),还是不行,就重启idea,可以简单的关闭重启,也可以如图重启:2、重启之后,ide原创 2021-05-23 14:15:19 · 10493 阅读 · 2 评论 -
Idea设置JDK版本(在jdk版本超过java8时,使用Hutool工具包获取系统信息报错)
使用Hutoo工具包获取系统环境信息,在获取JavaInfo时,系统报错,看了一下源码,源码中硬编码了Java的版本信息,如图:初步判断为本地的jdk版本设置导致的问题。经过如下几个步骤,对jdk版本进行设置后,获取系统信息正常。总共分为3步:1、打开Settings2、Project Structure -->Project设置3、Project Structure -->Module设置...原创 2021-04-26 16:21:25 · 1810 阅读 · 0 评论 -
文件重命名失败问题,需要首先将文件流进行关闭
public static void main(String[] args) throws Exception{ File file = new File ("C:/Users/Administrator/Desktop/xxx.properties"); Properties properties = new Properties() ; FileInputStream fis = new Fi...原创 2021-04-25 09:26:40 · 412 阅读 · 0 评论 -
[Ljava.lang.Object;是什么?
对List进行反射获取其所有的方法签名,其中有一个toArray方法,打印出来的方法签名如下:add(java.lang.Object arg0)add(int arg0,java.lang.Object arg1)remove(java.lang.Object arg0)remove(int arg0)get(int arg0)equals(java.lang.Object arg0)hashCode()indexOf(java.lang.Object arg0)clear()is原创 2021-01-07 17:38:10 · 5030 阅读 · 0 评论 -
服务端JVM启动时参数优化
服务通过socket向外提供服务,后发现业务端经常反馈服务会频繁卡顿,从代码层面排查一番,没有大的收获之后,感觉可能是GC导致的用户线程停顿,于是先在服务启动时,增加GC日志打印:#!/bin/shexport CLASSPATH=""for jarpath in `ls /home/appname/lib/*.jar` do CLASSPATH=$CLASSPATH:$jarpathdoneexport CLASSPATH=$CLASSPATH:/home/appname/co...原创 2021-01-06 11:40:11 · 213 阅读 · 0 评论 -
String.format()方法使用说明
转载自:https://blog.csdn.net/thc1987/article/details/17528093/JDK1.5开始String类中提供了一个非常有用的方法String.format(String format, Object ... args)查看源码得知其实是调用了java.util.Formatter.format(String, Object...)方法 public static String format(String format, Object..转载 2020-12-31 09:46:26 · 259 阅读 · 0 评论 -
HashSet add() 方法底层调用HashMap时,存入的value为什么不是null?
看jdk源码,看到 LinkedHashSet时,说底层调用的LinkedHashMap进行存放数据,点入LinkedHashSet的add方法看了一下,看到如下代码: /** * Adds the specified element to this set if it is not already present. * More formally, adds the specified element <tt>e</tt> to this set i原创 2020-07-02 18:10:32 · 616 阅读 · 0 评论 -
通过编码在业务层面实现多源数据库,以及数据库的自动切换,保证业务系统的稳定
最近项目改造,需求是根据客户的要求,实现数据库的多活。不仅是需要主从同步,还需要在其中一个库挂了之后,自动切换到另外一个上边,对业务层面的影响尽可能的小,如果可以达到业务无感知切换,那就最好不过。需求分析:要实现这种需求,最好的方式,莫过于是从数据库底层入手,从数据库层面来达到主从复制,数据的一致性,同时实现自动切换。可用性会更高,效果方面应该是更有保障。但出于某些方面...原创 2020-04-26 22:18:46 · 283 阅读 · 0 评论 -
主流消息队列研究
先备注,逐步完善。ActiveMQ:RabbitMQ:ZeroMQ:Kafka:MetaMQ:RocketMQ:原创 2020-04-15 09:37:53 · 128 阅读 · 0 评论 -
Eclipse 中项目编译报错
表现:项目的左上角有红叉,但是项目中的代码没有任何报错。诊断:大概率是因为jdk版本不一致问题导致处理:1.首先看该两处是否一致,如果不一致,根据实际情况调整为版本一致:2.若以上两个配置相同,clean 或 maven update 之后,还是会报错,检查eclipse中.setting中的配置文件:.settings/org.eclipse.wst.comm...原创 2020-03-13 11:43:46 · 1053 阅读 · 0 评论 -
ArrayBlockingQueue take()操作
内部类实现Runable接口,通过while(true)循环来执行业务逻辑,首先通过ArrayBlockingQueue.take()来获取需要执行的任务,当队列为空,内部会进入空循环等待,避免过高耗费cpu。业务类:package com.java.innerclassthread ;import java.util.List;import java.util.concurr...原创 2019-11-27 16:31:04 · 7056 阅读 · 0 评论 -
Openfire集成实现方式
Openfire集成实现方式原创 2017-02-27 20:21:56 · 2364 阅读 · 0 评论 -
Maven项目不明原因报错
新进产品项目组,从svn检出项目,本地创建数据库,之后,运行,报错,首先报CGLIB确实,pom文件中确实没有,添加依赖.再运行,报spring包某类中缺失方法.项目clean和maven update project 数次无果之后,删除项目,从同事出直接拷贝一份正在运行的项目过来,解压导入,相同的错误仍然继续.有点奇怪.后来感觉可能是本地maven仓库的原因,备份并删除本地maven库.原创 2017-02-24 23:12:51 · 478 阅读 · 0 评论 -
win10环境下由JDK64位切换到32位后,不能正常启动
问题描述:win10环境下配置的jkd为64位,当配置32位jdk之后,不能正常启动.问题定位:在安装64位时,可能用的是安装包的方式进行安装,不是用的文件夹配置的方式,导致有文件写入system文件夹下.删除该多余文件后,32位可以正常启动.64位也可以正常启动.问题分析:可能是在安装jdk64位时,用的是安装包(exe)安装.之后使用绿色文件夹配置.原创 2017-03-27 14:32:30 · 2783 阅读 · 0 评论 -
Java String 和 byte[]中间的转换
转自 http://blog.csdn.net/llwan/article/details/7567906做JAVA经常会碰到中文乱码问题,还有各种编码的问题,特别是String类的内容需要重新编码的问题。要解决这些问题,必须了解清楚JAVA对于字符串是怎么处理的。 1. “字符”是由数字来表示的先来重新了解一下计算机是如何处理“字符”的,这个原理是大家必须记住的,特别是转载 2017-10-25 09:54:36 · 291 阅读 · 0 评论 -
one or more listeners failed to start
项目中集成了openoffice作为文档处理工具,今天找了一台服务器作为测试服务器,想要搭建一个测试环境,jdk,openoffice,tomcat环境装好之后,本地生成war包,放到服务器上,启动报错,查看 Catalina.out 文件,显示 one or more listeners failed to start。同时查看 localhost日志文件,显示spring在初始化时报错。之原创 2017-11-16 21:55:04 · 3135 阅读 · 1 评论 -
项目中执行cmd命令时报错(provider load failure,UNKNOWN ERROR 0XFFFFFFFF)
项目中有用到关闭浏览器的操作,正常执行浏览器退出 driver.quiet()方法时有时会出现异常,不能正常退出。这样浏览器再次启动时,因为指定的数据文件夹相同,会导致启动异常。解决方法是每次退出浏览器时,在调用driver.quiet()之后,同时调用cmd命令来关闭浏览器进程,这样就能在该用户下,确保每次都能正常退出。今天登陆到服务器看看运行状态,发现有很多的浏览器没有正常退出,观察日志发...原创 2018-10-10 18:25:08 · 3450 阅读 · 0 评论 -
java 直接内存
转自:https://blog.csdn.net/Dustin_CDS/article/details/50857727直接内存(Direct Memory)并不是虚拟机运行时数据区的一部分,也不是Java虚拟机规范中定义的内存区域,但是这部分内存也被频繁地使用,而且也可能导致OutOfMemoryError异常出现,所以我们放到这里一起讲解。在JDK 1.4中新加入了NIO(New In...转载 2019-01-17 17:05:56 · 466 阅读 · 0 评论 -
全面理解Java内存模型
转自:https://blog.csdn.net/suifeng3051/article/details/52611310Java内存模型即Java Memory Model,简称JMM。JMM定义了Java 虚拟机(JVM)在计算机内存(RAM)中的工作方式。JVM是整个计算机虚拟模型,所以JMM是隶属于JVM的。如果我们要想深入了解Java并发编程,就要先理解好Java内存模型。Jav...转载 2019-01-17 17:32:38 · 110 阅读 · 0 评论 -
volatile和synchronized的区别
转自:https://blog.csdn.net/suifeng3051/article/details/52611233volatile和synchronized特点首先需要理解线程安全的两个方面:执行控制和内存可见。执行控制的目的是控制代码执行(顺序)及是否可以并发执行。内存可见控制的是线程执行结果在内存中对其它线程的可见性。根据Java内存模型的实现,线程在具体执行时,会先拷贝...转载 2019-01-17 17:37:59 · 161 阅读 · 0 评论 -
Java进阶之博客大牛优秀好文之文章友情链接与好书推荐
转自:https://blog.csdn.net/chenchunlin526/article/details/58586906Java进阶之博客大牛优秀好文之文章友情链接与好书推荐-----心得体会、进阶修炼、职业规划、面试题目-----最新热门互联网技术经常读读系列http://coolshell.cn/featured http://blog.csdn.net/che...转载 2019-01-15 09:43:54 · 173 阅读 · 0 评论 -
HashMap中hash()分析
转自:Hollis_公众号Hollis你知道HashMap中hash方法的具体实现吗?你知道HashTable、ConcurrentHashMap中hash方法的实现以及原因吗?你知道为什么要这么实现吗?你知道为什么JDK 7和JDK 8中hash方法实现的不同以及区别吗?如果你不能很好的回答这些问题,那么你需要好好看看这篇文章。文中涉及到大量代码和计算机底层原理知识。绝对的干货满满。整个互联...转载 2019-01-16 13:22:18 · 454 阅读 · 2 评论 -
使用JSch通过sftp协议进行文件上传下载操作
1.添加依赖包 JSch2.源码package main;import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.List; import java.util.Properties; import java.util...原创 2019-01-22 11:52:40 · 649 阅读 · 0 评论 -
高并发下线程安全的单例模式(最全最经典)(转)
转自:mlinge-奋斗吧在所有的设计模式中,单例模式是我们在项目开发中最为常见的设计模式之一,而单例模式有很多种实现方式,你是否都了解呢?高并发下如何保证单例模式的线程安全性呢?如何保证序列化后的单例对象在反序列化后任然是单例的呢?这些问题在看了本文之后都会一一的告诉你答案,赶快来阅读吧!什么是单例模式?在文章开始之前我们还是有必要介绍一下什么是单例模式。单例模式是为确保一个类只有一个...转载 2019-03-29 14:24:05 · 131 阅读 · 0 评论 -
tomcat 频繁 down 掉 原因分析
转自:微信公众号_ 纯洁的微笑我们本身是一家互联网金融公司,公司的主流业务就是p2p,因为各种原因吧,15年底启动建设众筹平台。考虑到前期开发过程中的一些弊端和架构经验,本次架构引用了dubbo做soa服务的治理,web容器nginx+tomcat,后端语言采用java,框架选择spring+mybaits,前端模板引擎使用的是btl,app采用原生+h5的模式。这个架构可以参考我之前写的文章...转载 2019-03-28 11:11:42 · 2122 阅读 · 0 评论 -
Linux CPU占用率过高时问题排查
1.查看CPU占用率高的进程 1.1> top 1.2> 用ps -eo pid,pcpu | sort -n -k 2 2.确定高cpu消耗的线程 2.1>top -H 2.2>ps H -eo pid,tid,pcpu | sort -n -k 3 3.查看进程的线程 3.1>pstree -p pid...原创 2019-04-11 12:13:46 · 30860 阅读 · 1 评论 -
Java 集合类整理
1.Collection2.Map原创 2019-04-11 17:32:21 · 105 阅读 · 0 评论 -
引用final修饰的常量且常量发生改变时需注意重新编译
1.定义一个常量类public class Contansce { public static final int index = 100 ;}2.在测试类中引用该常量public class Test { public static final int i = Contansce.index ; public static void main(String[] args...原创 2019-04-08 16:10:30 · 423 阅读 · 0 评论 -
Java 设计模式
转 http://blog.csdn.net/qq_35101189/article/details/53229003设计模式;一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得那么复杂。后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把锁的模式,目的仅仅是着眼于解决现在的问题,而设计模式的转载 2016-12-12 18:11:22 · 261 阅读 · 0 评论