自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 mybatis中使用枚举值表示常量

枚举类${@枚举类全限定名@枚举对象.属性的get方法()}内部枚举类${@外部类全限定名$枚举类名@枚举对象.属性的get方法()}

2019-12-16 20:09:55 565

原创 spring单测时出现卡住不动的情况

报错:Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory...root of factory hierarchy解决方案:设置JVM参数即可:

2019-09-06 15:59:18 1163

原创 git操作遇见fatal: Exiting because of unfinished merge.错误

解决方案:将git add .添加到缓存的文件commit即可或者将修改文件放弃直接reset

2019-08-29 21:08:51 6253

原创 maven项目编译时出现java.lang.OutOfMemoryError: GC overhead limit exceeded

在maven项目编译的时候可能出现内存异常报错信息:系统资源不足。有关详细信息, 请参阅以下堆栈跟踪。java.lang.OutOfMemoryError: GC overhead limit exceeded at com.sun.tools.javac.file.ZipFileIndex$ZipDirectory.readEntry(ZipFileIndex.java:669)...

2019-08-29 11:01:27 2994

原创 maven项目中pom.xml文件中<project>标签报错

报错信息:java.lang.StackOverflowError less... (Ctrl+F1)Inspection info: Inspects a Maven model for resolution problems.java.lang.StackOverflowError报错截图:解决方案:pom.xml中依赖的包有问题,采用排除法排除相关依赖包即可...

2019-08-28 21:42:05 3124 2

原创 IDEA或单测运行报Command line is too long解法

这个问题很简单,直接修改项目下 .idea\workspace.xml,找到标签<component name="PropertiesComponent">, 在标签里第一行加一行<property name="dynamic.classpath" value="true" />...

2019-08-28 11:16:59 269

原创 JVM之java内存区域与内存溢出异常

前言:之前也研究过JVM好久了,但是一直没有写博客,而是都是自己做的笔记,现在开始慢慢从笔记上总结下然后输出一些博客吧,也算是重新温故下知识点运行时数据区域:java虚拟机在执行Java程序时将其所管理的内存划分为若干不同的数据区域,包括:堆 栈 方法区 程序计数器PC 本地方法栈程序计数器:程序计数器是一块较小的内存空间,它可以看做当前线程正在执行的字节码的行号指示...

2019-08-25 19:45:13 122

原创 Mybatis源码学习之路三反射模块核心类Reflector类详解

前言:Reflector是Mybatis中反射模块的基础,每个Reflector对象都对应一个类,而Reflector中缓存了反射操作需要使用的类的原信息本片博客详解了下Reflector中各个方法是如何将属性中所需的信息进行填充的,代码中都写入的比较详细的注释Reflector类解析:类成员变量解析://对应的Class类型private final Class<?...

2019-08-17 21:37:27 255

原创 Mybatis源码学习之路二解析器模块

一 前言Mybatis在初始化过程中处理mybatis-config.xml核心配置文件时,使用的是DOM解析方式,并结合使用XPath解析XML配置文件 Mybatis对XML解析功能进行了封装,由解析器模块提供支持,其中核心类为XPathParser,它封装了XPath、Document以及EntityResolver等二 基础知识XML解析常见的三种方式: DOM(Docume...

2019-08-13 21:47:48 166

原创 Mybatis源码学习之路一

一、前言工作三年了,各种开发框架也用的十分熟练。现在学习的时候渐渐也不满足使用上,所以开始涉猎源码,也是希望自己的技术能力能更近一步,自己想法也是从Mybatis框架源码开始,在博客上记录下,和大家一步进步二、ORM框架传统JDBC常见的步骤: 注册数据库驱动类 通过DriverManager打开数据库连接 通过连接创建相应的Statement 通过Statement执行相...

2019-08-11 22:42:11 216

原创 智能客服通信模块实现方式

一、前言不知不觉来到新公司已经快半年,经历了智能客服项目从刚开线时什么都不确定,到现在系统基本稳定并且扛过了大促时的高峰流量,这其中经历了很多艰辛,但是也的确收获了很多。特别是刚开始从原有阿里云客服流量全切我们系统时,很多问题都爆发了出来,由于是我负责核心通信模块的开发,自然也是由我去跟踪线上问题并解决。也是跳过了很多坑,在这里总结一下吧二、原有的通信架构在我没来之前,其实项目已经启动了...

2019-08-04 15:30:29 432

原创 Elasticsearch实战系列(八)--ES常见操作

查询ES下所有的索引 curl '192.168.160.128:9200/_cat/indices' 删除指定的索引 curl -XDELETE '192.168.160.128:9200/index1' 删除指定的多个索引 curl -XDELETE '192.168.160.128:9200/index1,index2' 删除所有索引 curl -XDELETE '...

2019-07-28 22:30:32 181

原创 Elasticsearch实战系列(七)--ES中字段的定义

一、字段的类型核心类型 字符串text和keyword 数值 日期 布尔 其它类型 核心类型派生的复杂类型数组 嵌套类型,它允许在文档中包含其它文档 字符串text和keyword 其中text分词用于全文检索,而keyword不分词用于聚合和排序 数值类型 可以是浮点数、也可以是非浮点数。如果不需要小数,可以选择byte、short、int或者lon...

2019-07-18 23:59:29 2836

原创 Elasticsearch实战系列(六)--ES的基本配置

一、ES配置文件ES配置相关的三个文件 elasticsearch.yml文件配置ES相关设置 jvm.option文件配置ES所运行的Java虚拟机即JVM log4j2.properties文件用于配置日志选项 ES日志记录通过3类文件组织 主要日志:放置综合信息,比如新的节点假如集群 慢搜索日志:默认情况下,如果一个查询花费的时间多于半秒,将进行记录 慢索引日志...

2019-07-10 21:13:08 341

原创 Elasticsearch实战系列(五)--搜索数据

一、前言搜索是ElasticSearch的终极目标,通常我们使用GET请求携带搜索条件进行搜索 curl '192.168.160.128:9200/testindex/testtype/_search?q=name:zhangsan' 其中: name为指定的字段,若直接q=zhangsan则表示查询所有字段,即_all字段 若需要指定结果数,可以使...

2019-07-10 16:47:47 171

原创 Elasticsearch实战系列(四)--索引数据简述

一、索引数据的方式直接使用cURL和REST API,发送json文档给ES进行索引,将会返回JSON应答 案例 curl -H "Content-Type: application/json" -XPUT '192.168.160.128:9200/testindex/testtype/1?pretty' -d '{"name":"zhangsan","age":"25"}'...

2019-07-10 14:39:07 450

原创 Elasticsearch实战系列(三)--CentOS7下安装ES

一、步骤使用wget命令获取es的tar包 解压该tar包 运行bin目录下的elasticserach脚本二、问题root账号不能执行elasticsearch脚本问题,解决方案 创建一个账户,并将解压后的目录所有人设置为该用户 切换到该用户进行启动ES 启动报错: ERROR: [4] bootstrap checks failed      [1]: ma...

2019-07-10 00:24:27 101

原创 Mac下VmWare Fusion虚拟机设置静态IP

一、查看Mac下两个虚拟网卡vmnet1和vmnet8的地址vmnet1网卡用于主机间通讯 vmnet8网卡用于nat通讯 命令:ifconfig二、查看Centos7系统中默认路由由于Vmware Fusion安装Centos7后默认采用dhcp通讯 此时可以采用route -n查看默认路由,我这里路由为192.168.1.2。网卡里面的网关和DNS都需要设置该IP三、修改网卡...

2019-07-09 23:17:35 1089

原创 Elasticsearch实战系列(二)--逻辑设计和物理设计

一 ES的逻辑设计什么是逻辑设计? 搜索应用应该注意的 ES的逻辑的设计是什么? 文档、类型、索引 用于索引和搜索的基本单位是文档。文档以类型来区分,类型包含若干文档。一个或多个类型存在于同一索引中 文档相当于行数据、类型相当于表、索引相当于数据库 如何确定ES中的某篇文档? 索引-类型-ID,其中id是一个字符串,并没有限制。 什么是文档? ES中索引和搜索...

2019-07-04 23:32:58 428

原创 Elasticsearch实战系列(一)---ES简介

1.什么是搜索引擎,能解决什么样的问题?快速的返回搜索结果或者相应的统计信息,即解决快速搜索的问题引擎可以快速的返回查询结果,而且这些结果都是相关的搜索引擎还能提供辅助搜索的功能,这些辅助功能包括识别错误输入,给出自动提示,并对结果进行分类2.什么是ES?ES是构建在Lucence基础之上的开源分布式搜素引擎,Lucene是个高性能的搜索引擎包,默认情况下将所有的数据全部进行索...

2019-07-04 16:14:38 386

原创 起始点

一 前言 今天是6月30号,自己工作也恰好三年了。这三年里经历过2份工作(最近刚换工作过了试用期),自己也顺利的从传统行业转战到互联网行业。说说自己的感想,并且给自己立点flag吧,毕竟未来的路还很长。二 现况 目前我们团队在做客服系统这一块,是一个新的团队。负责人挺nice的,一个经验丰富而且性格随和的资深工程师,觉得自己在这里可以学到很多(这也是为啥当初入职后有公司提供更...

2019-06-30 15:15:45 550

原创 java虚拟机运行时数据区域划分------java堆

Java虚拟在执行Java程序时会将其管理的内存划分为不同的数据区域,分别为: 虚拟机栈 堆 方法区 程序计数器 本地方法栈 对于大多数应用来说,堆是java虚拟机所管理内存最大的一块 生命周期:java堆在虚拟机启动的时候创建,被所有线程所共享 用途: java虚拟机规范中描述:所有的对象实例和数组都是在堆上分配内存,但是随着JIT即时编译的发展和逃逸分析技术的逐渐...

2018-09-02 17:51:41 115

原创 记一个问题

1.SSM框架在使用mybatis自己实现的二级缓存时出现错误Caused by: java.io.NotSerializableException: oracle.jdbc.driver.T4CConnection2.解决办法:采用ehcache作为二级缓存框架

2017-08-23 08:45:53 177

原创 XML学习笔记

序:很久没有用到XML了,很多东西都忘记了。最近重温了下,在这里记录下笔记。1.XML(Extensible Mark Language)(1)标准通用标记语言的子集(2)用于标记电子文件使其具有结构性的标记语言(3)适合万维网传输(4)标记数据,定义数据类型,允许用户自定义自己的标记语言的源语言2.设计宗旨(1)传输数据而非显示数据(2)XML仅仅为纯文本3.

2017-08-09 21:49:36 272

原创 jquery treeview初始化时收缩全部节点并显示指定节点

1.问题:treeview初始化时会默认展开所有节点,但是我需要初始化时只展开指定节点 项1 项1.1 项1.2 项1.3 项2 项2.1 项2.1.1 项2.1.2 项2.1.3 项

2017-07-17 15:14:01 3408 1

原创 java并发API中ThreadPoolExecutor类提供的执行所有任务和任一任务的2个方法整理

1.invokeAny(Collection> tasks):该方法接受一个任务列表作为参数,它运行任务列表中的任务,并返回第一个完成任务并且没有抛出异常的结果。重载方法invokeAny(Collection> tasks,long timeout, TimeUnit unit),该方法也执行所有任务,如果在给定的时间内某个任务已经完成,就返回i结果。2.invokeAll(Coll

2017-07-16 21:19:10 522

原创 java执行器框架执行任务并返回结果

1.java并发API提供了Callable接口和Future接口来实现执行任务并返回结果的功能2.callable接口:类似与runnable接口,该接口生命了call()方法,具体的操作逻辑定义在该方法中。该方法的返回值在Callable接口的泛型中进行定义。3.Future接口:该接口定义了相关方法来获取Callable对象产生的结果,并控制其状态。作用:

2017-07-16 15:02:27 366

原创 java线程执行器

1.简介:从Java5开始,java并发API提供了执行器框架(Executor Framwwork)。它围绕Executor接口,ExecutorService接口,以及实现类ThreadPoolExecutor进行展开。该机制分离了任务的创建和运行,我们只需要关注任务的创建,而不需要考虑线程的创建和执行。2.优势:(1)执行器使用了线程池来提高程序性能,线程重用的优点是减少了创建线

2017-07-16 14:17:21 296

原创 整理java7中几种常见同步辅助类-Exchanger

1.Exchanger1.1解释Exchanger类允许两个线程之间定义同步点,当2个线程都到达同步点时,它们交换数据结构1.2基本工作流程若使用其他的同步辅助类,第一个线程调用exchange()后会被Exchanger置入休眠,直到第二个线程到达同步点1.3常见方法exchange(V data,long time,TimeUnit uni)

2017-07-16 13:43:00 229

原创 整理java7中几种常见同步辅助类-Phaser

1.Phaser1.1解释phaser用于并发阶段任务的运行,适用于有并发任务且需要分解成多步执行。另外Phaser类的方法不需要进行异常处理,它们不响应中断异常。1.2基本工作流程Phaser在任务每一步结束的位置对线程进行同步,当所有线程都完成这一步时,才允许执行下一步1.3phaser的状态1.活跃态(active)2.终止态(termination)

2017-07-16 10:42:41 293

原创 java中操作Oracle clob数据出现的连接关闭问题

java.sql.SQLException: 关闭的连接 at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146) at oracle.jd

2017-07-07 19:31:46 3270

原创 整理java7中几种常见同步辅助类-CyclicBarrier

1.CyclicBarrier1.1解释CyclicBarrier常用于集合点的同步,它内部是一个计数器,这个计数器的值表示需要在集合点上进行同步的线程数。CyclicBarrier对象还有一个特殊的状态即损坏状态(Broken)。它相对于CountDownLatch有二个重要的改进:1.可以传入一个Runnable对象。当所有线程到达时,CyclicBarrier将Runnable对

2017-07-01 11:43:06 226

原创 整理java7中几种常见同步辅助类-CountDownLatch

1.CountDownLatch1.1解释CountDownLatch常用于等待多个并发事件的完成,它内部也是一个计数器,计数器的值就是线程要等待完成的操作的数目。计数器的初始值使用CountDownLatch对象初始化时传入的整数参数进行初始化。1.2基本工作流程当一个线程进入,遇到CountDownLatch的await()方法,该方法阻塞线程直至所有操作都完成,当某一个操

2017-07-01 11:18:10 282

原创 整理java7中几种常见同步辅助类-信号量

1.信号量(Semaphore)1.1解释信号量是一种计数器,用来保护一个或者多个共享资源的访问1.2基本工作流程若线程要访问一个共享资源,它需要先获取信号量,此时信号量会判断内部计数器是否大于0,若是,内部计数器减一。但若内部计数器等于0,信号量将线程置入休眠直至内部计数器大于0。1.3常见方法acquire():获取信号量,默认内部计数器减一acquireUnint

2017-07-01 11:09:07 264

原创 easyui accordion组件获取被选择Panel中的第一个元素

$('#easyuiAccordion').accordion({ onSelect:function (title,index) { var obj = $("#easyuiAccordion").accordion('getPanel',index); obj.context.firstElementChild.click();

2017-06-28 22:14:24 2067

原创 eclipse出现There are no resources that can be added or removed from the server

需要保证Tomcat中JRE运行环境和项目属性中facet中java版本一致window--->Server--->Runtime Environment--->选择相应Tomcat选择编辑:右击项目属性--->搜索facet:

2017-06-28 16:45:21 3938

原创 easui datagrid的formatter中返回linkButton的问题

在datagrid的formatter中直接返回return '修改'是不会生效的,解决办法一:1.format中返回的a标签制定class属性return 'easyui2.在datagrid中的onAfterRender事件中进行渲染$('#dataGridTable').datagrid("options").view.onAfterRender = function

2017-06-22 22:41:48 491

原创 记一个html问题

登陆js:function login(){ $.post('/home/login',getFormJson('loginForm'),function(data){ if(data.code == RETURN_CODE_SUCCESS){ layer.msg('登陆成功'); window.location.href =

2017-06-20 22:23:42 228

原创 ssm框架整合shiro框架未验证前filterChainDefinitions配置问题

刚开始ssm框架整合shiro时,登陆界面莫名报错,正确路径的js和css文件引入也无效。最后发现是shiro中filterChainDefinitions也要对请求的js和css设置anon,否则资源请求被限制 /home/toLogin=anon /home/login=anon

2017-06-15 22:46:41 429

原创 记:combotree中getValue和getText问题

$("#updateParentId").combotree({ url:'tree_data1.json', method:'get' }); $("#updateParentId").combotree('setValue','11'); alert($("#updateParentId").combotre

2017-06-08 22:36:58 3972

空空如也

空空如也

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

TA关注的人

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