自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Eclipse的egit插件提示文件有改动,但实际并没改动

如题。今天在提交功能代码的时候发现有一堆文件有改动,但是点进去比较却是和最新版本一模一样的,问题在哪呢?首先看看是不是换行符的问题。再比较一下本地文件和远程文件,换行符不一样的话就改成一样的,具体怎么改百度,不多说。但是我这里的换行符都是一样的,而且以前没出现过这个情况。后面我想起前几天本机安装了git客户端,是不是这个设置出了问题。经过查找,发现autocrlf的默认值有问题,改为false即可。autocrlf =true 表示要求git在提交时将crlf转换为lf,而在检

2021-02-02 16:21:29 655

原创 AngularJs的$watch为什么第一次就会触发?

工作中遇到的问题,记录一下。AngularJs的$watch是什么东西?这里引用一下别人的资料:所以根据文档上的说明,很容易就会联想到,只要new值和old值不一样,那么就会触发回调函数,但是本人在写代码时,发现第一次就会触发,第一次难道不是null或者undefined吗?为什么也会触发?带着这个疑问,我翻了一遍源码:1.先看$digest...

2021-01-15 12:02:13 410

原创 关于sql在数据库执行很快,在mybatis执行很慢的问题

如标题所述,最近碰到了这个问题,一般出现这种问题,一个特征就是sql写的很长,而且很多if标签和占位符#{}。1、用到的where条件字段存在隐式转换举个例子,sql有个时间字段,数据库是date类型,java实体里是util.date类型,这样的话,mybatis会把实体的时间字段转为timestamp类型,导致你的时间字段用不到索引,这样就走了错误的执行计划。解决办法就是字段类型统一。2、数据倾斜(skew data)的列上用到占位符这里牵扯到了变量窥探的东西,Oracle在处理带有绑定

2020-11-03 14:18:11 15423

原创 在angular的$eval里添加断点会发生什么

工作中无聊发现的一个问题,感觉还挺有意思,懒得去找源码了,随便记录一下。在页面上有一个button,绑定了ng-click事件,然后我在里面打了断点发现会报错:Error: [$rootScope:inprog] http://errors.angularjs.org/1.2.25/$rootScope/inprog?p0=%24apply at at m at k.$apply at HTMLDivElement.<anonymous> at...

2020-10-26 10:32:26 240

原创 记录jqGrid分组功能的一些坑

还是公司魔改的jqGrid,这次在用jqgrid的grouping分组功能时候遇到了一些问题,如下:1、rownumbers显示序号为true时,页面无反应,序号列不出现。2、在列的自定义格式化中,如果动态添加html片段,ng-click事件无反应。3、表头和表格数据无法对齐,列越多,这种状况越恶劣。网上资料太少,撸了一遍源码。。。。首先去找buildColMenu方法。就是根据配置的参数创建表头菜单。在方法里找到了这个意思是你开启了表格分组,那么grid的序号列就变.

2020-05-09 16:29:49 577 2

原创 关于jqGrid:探索gridComplete和loadComplete的执行顺序

公司框架用的jqGrid,复习一遍读源码的过程前面的初始化流程就不说了,直接从populate方法开始,这是填充数据的方法。完整的方法就不截了,只截主要的片段。 dt = ts.p.datatype.toLowerCase(); switch(dt) { case "json": case "jsonp": case "xml": case "script": $.ajax($.extend({

2020-05-09 15:43:48 1741

原创 关于双重for循环效率的一些思考

又回想起了当初写双重for循环的时候,以前看过相关文章,说是外小内大性能会比外大内小性能好,几乎99%的文章都是这么说的。那么现在2020年这个结论还对吗,自己用jdk1.8试了试,例子的话就直接搬 @云海天教程网 的《Java for循环性能优化实现解析》里面的例子了。public class sss { public static void main(String[] args) ...

2020-04-20 00:38:02 1069

原创 JAVA异常:Unsupported major.minor version 52.0

现象:本来项目好好的跑着,然后pull了一波,重启发现报错了:Class XXX :Unsupported major.minor version 52.0百度了一波,是因为经过高版本jdk编译后的class在低版本的jdk环境中运行爆出的错误。实践:我的环境是1.7,项目是1.7,一开始我还觉得这不是一样的吗,怎么还报错?原因是报错的Class XXX这个类是经过1.8编译的...

2020-03-27 09:26:19 227

原创 JDWP on getting class status, jvmtiError=JVMTI_ERROR_WRONG_PHASE(112)

现象:用maven插件clean install后发现项目没有成功编译class文件,而且在控制台报了JDWP on getting class status, jvmtiError=JVMTI_ERROR_WRONG_PHASE(112)错误。猜想:首先肯定是因为报错了,所以class文件没有编译成功。实践:最后发现是因为eclipse的配置项里的java compiler版...

2020-03-10 18:51:06 969

原创 由InputStream.read返回int值所引发的一系列问题

年末了,真的很闲,今天朋友问InputStream.read为什么返回int的-1而不是byte的-1。这么经典的面试题我想应该都知道,二进制流嘛,byte取值范围-128~127,如果用byte的-1,根本不知道到底读没读完,而int取值范围-2147483648~2147483647,包含了byte范围,byte的-1转为int是255。然后又问为什么不用char类型,因为char取值范围...

2019-12-30 18:59:00 276

原创 Jenkins构建项目时出现package not exist和cannot find symbol

最近用Jenkins自动化打包时,一直报错,以前都是正常的,如图:这个cannot find symbol错误大概率是因为package not exist这个问题导致的,那么具体先解决package not exist问题。首先本地肯定是能打包的,就是用平台自动打包就出现了这个问题,询问了平台组,说是jar包冲突,但是这个错误一看就不像是冲突。由于当时急着打包所以采取了野蛮处理,因为...

2019-12-27 16:37:51 5651 1

原创 jersey访问路径是如何匹配并访问的(二)

上一篇说明了jersey是怎么通过@path去初始化一些相关类的,那么继续看源码,看请求是如何去匹配并访问的。那么开始从请求的入口DispatcherServlet的doService方法开始吧protected void doService(HttpServletRequest request, HttpServletResponse response) throws ...

2019-12-10 17:59:24 641

原创 jersey访问路径是如何匹配并访问的(一)

上周同事遇到了一个问题,就是明明路径存在,但是却报出404未找到路径,但是不是所有的路径都404,网上查了很多关于jersey的资料,好像也没说全,这次就自己查看一下源码,看看它到底是怎么去匹配的。举一个例子:http:127.0.0.1:8080/dsj/dsjql/v1/UnittypeCount/getList能访问成功;http:127.0.0.1:8080/dsj/dsj...

2019-12-10 15:31:54 983

原创 关于fastjson和jackson将json字符串解析成实体的过程(二)

把刚才那些报错的例子,用jackson处理,会发现全部成功,不会报错,测试例子:那现在看看jackson怎么处理的,进入readValue方法:进入_jsonFactory.createJsonParser(content):其实就是根据json字符串转换成一个流,并生成一个jsonParser:而TypeFactory.type(valueType)方法会...

2019-11-11 12:53:15 861

原创 关于fastjson和jackson将json字符串解析成实体的过程(一)

上周和别的公司接口对接,遇到了一个问题。我这边用的aes,不足16倍数后补0(java没有zeropadding,需要自己通过nopadding实现),然后加密再转base64传过去,对方也是先收到base64解密,再aes解密,转json。这时候对方报错说我传的数据有乱码,然后我这边测试了一下,传的json原数据是没乱码的,但是因为不足16倍数,需要补0,所以解密的时候可能会在json字符串后面...

2019-11-11 10:55:55 939

原创 java.lang.NoClassDefFoundError: Could not initialize class

昨天做一项目,windows下功能正常,但是linux错误。具体报的java.lang.NoClassDefFoundError: Could not initialize class com.chinacreator.tysf.util.JDBCUtils。直译过来就是没有找到类定义错误,导致这个错误有很多原因这里就不说了,网上都有,就说一下我们现场怎么出现的,然后怎么解决的吧。Dao层调用...

2019-10-25 10:37:02 855

原创 Oracle:cost耗费高的sql执行比cost耗费慢的效率快

今天无聊拿以前的sql测试了一下性能。两种不同实现的sql,也就是A用union all拼接的,B也是union all,但是用with as把公用的部分提取了。然后看了一下执行计划,b的cost在100w+,a的cost在一二十多万吧,但是b的速度零点几秒,a在1秒多。百度了一波,先说结论:统计信息过旧。当前用户下的统计信息各种都是激活的,可用的,但是不知道为什么统计信息没更新。百度好像说,...

2019-02-26 18:14:06 2398

原创 oracle删除大量数据

A表有几十万测试数据,然后想删除。用的delete,很慢,然后采用了以下方法:1.把表名改成别的,比如表A改成 A_bak。2.把需要的数据插入该表。两种方式:create table A as select * fromA_bak 后面可带where条件这种一般把A表当临时表,无索引无主键无外键等等insert into Aselect * fromA_bak 后面...

2019-02-22 16:23:40 1717

原创 SVN "xxx.java" which is not part of the commit; both sides of the move must be committed together

今天提交svn报错。百度了一下,改了文件名或者删了文件都有可能出现这个错误,很多博客写的解决办法也很多,就是直接提交上一级文件夹就行了,如果还是有文件冲突报错,那是因为svn里有一份A文件,你已经改名成了B文件,导致的冲突,解决办法就是1.去svn把A文件删掉,再提交B文件。2.直接选中项目,svn team 提交,会自动把A文件筛选出来(A文件前带-号,在资源库同步时报错百分之百是因为这个带-号...

2019-01-02 15:36:22 3662

原创 eclipse使用的git插件pull失败,commit tree断节

标题我不知道怎么描述。在使用eclipse的git插件时候,发现pull一直失败,原因是本地仓库有尚未提交的内容,而这一部分尚未提交的内容是我和另一个同事同一时间push导致的错误,他把我的覆盖掉了,我的内容并没有push到远程仓库,但是提交到了我的本地仓库,而我能读取到他所提交的内容,但是文件都是?号,变成了我这里的新文件了,并且导致我的commit tree断节了,而且跟远程库比还有文件冲突,...

2018-11-22 09:22:43 1041

原创 mybatis一直报无效的关系运算符

这个代码在数据库是可以跑的,然后在eclipse上运行就不行,我一直以为是to_date写法不对,又以为是between and有问题,最后发现是a.ACCEPT_TIME as a between这里有问题,这里字段不能写别名,要不然直接是识别a between and 了。 这种错误一般都是mapper.xml的sql语句问题。...

2018-11-14 14:07:51 1396

原创 数据库导dmp文件出现的信息无限重复问题

窗口一直重复出现这种信息是因为impdp.bat命名错误,不能使用这种命名,导出expdp一样,改个名字就好了。如果dmp文件过大,复制到远程服务器地址报错‘复制文件或文件夹出错’,可以复制压缩包过去。记录一下。...

2018-11-14 14:06:04 316

原创 maven clean后install会报错

原因:jdk版本没有指定,mvn install无法正常编译java文件两种解决办法:1、在项目配置文件里指定确定的java版本。改为2、直接手动eclipse编译

2018-11-14 14:02:16 406

空空如也

空空如也

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

TA关注的人

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