自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于XML的接口参数校验的一种方式

公司的接口又臭又长,同事提供了一个思路,采用xml进行不涉及业务的参数的校验。可以在excel上编辑,然后生成xml,校验器会自动对每个参数进行长度、数值、正则、必填等校验。解放双手,公司不怎么提倡创新,估计只有这一个项目会使用吧,不过有十几个接口,够用了。。。请求->Business->校验公共参数-》初始化校验器->校验非业务->校验业务。。。首先...

2020-03-21 18:16:23 1144

原创 《ProGit》读后感:我的git理解和常用Git命令

git 中文乱码输入:$env:LESSCHARSET=‘utf-8’ide中输入:LESSCHARSET=utf-8git 特点:本地存有所有的记录快照,而不是比较差异。而且一般只添加数据。所以:1.命令运行都比较快2.通过任意本地快照都可以恢复git服务器数据3.本地的任何操作只要提交到了本地快照中,基本没有无法恢复的情况git 的三种状态(commited\modified\stage):执行git status 就可以看到,在我的理解中文件应该还有两种状态【modified】 -

2022-02-25 17:25:08 304

原创 通过velocity自定义模板字符串实现可配置的外部调用查询接口

背景公司的系统被其他很多行内系统调用,查询某一个实体信息但是由于安全管控,每个系统调用我们系统获得的字段是不一样的。目前有两种方案可以实施:1.利用行内的数仓系统,将表备份,然后通过数据交换平台sftp作业的方式,由我方通过自动任务上传,第三方拉取。这样对接系统调用链变长,数据是T+1到达没有时效性,每对接一个系统就要写一个针对该系统所需字段的逻辑,不易扩展。好处是直接用文件传输,行内数仓和调度系统实现,数据也有备份,不用扯皮,自动任务定时上传,读取流量压力在数仓和sftp平台。实际这种方法可.

2021-08-26 10:17:37 601

原创 利用Idea进行swing项目覆盖性简单测试

最近升级了2020版的idea,里面有个官方中文插件,身为英语小白的我果断尝试了一下,找找里面的好玩的功能。原来自己曾经写过一个生成代码的小工具,是基于swing的。https://github.com/howroad/cdwriter就测试一下这个小工具的代码覆盖率。众所周知,代码覆盖率是基于junit单元测试的,一般情况下需要写很多测试方法才可以测试覆盖率。本着能不写就不写...

2020-04-22 11:37:39 826 1

原创 ORA-01400:无法将NULL插入,ORACLE中DAFAULT和DAFAULT ON NULL的区别

建表:create table aims_test(id number(16),birthday date default on null sysdate not null,happlybirth date default sysdate not null,happyday date default on null sysdate)insert into aims_test...

2020-04-16 14:16:51 799

原创 内部类有什么用,内部类的应用场景Demo

内部类大概有四种:1.方法里面定义的局部内部类2.成员变量级别的内部类3.静态内部类4.匿名内部类应用:1.方法内部的局部内部类 public void test(String str){ //已经不需要final修饰符了 int i = 10; //Java 8更加智能:如果局部变量被匿名内部类访问,那么该局部变量相当于自动使用了final修...

2020-04-01 16:27:17 813 1

原创 redis复习

类型 string(字符串) hash(键值对)list(数组)set(集合)zset(有序集合) <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> ...

2020-03-25 19:19:32 162

原创 java获得文件的方法整理

直接放结论:最佳实践:Class.class.getResourceAsStream()理由:可以得到各种各样的,而且还可以读取jar包里的文件。需要注意的是当用Class类的getResource或者getResourceAsStream的时候如果要取绝对路径,那么要加上“/”如果使用ClassLoader类的这两个同名的方法,那么不能加“/”! 返回 空参数 ...

2020-03-23 14:50:45 320

原创 ibatis couldn't get property “xxx” from Null reference NoPointerException...

找了几个小时,结果发现是Dao层参数没有传!值得记录!

2020-03-10 15:03:06 356

原创 ibatis使用iterate嵌套isNotEmpty的时候报错Error getting ordinal list from JavaBean. Cause java.lang.NumberForm

Error getting ordinal list from JavaBean. Cause java.lang.NumberFormatExcept原因:ibatis的bug导致iterater里面不支持这种写法,升级到2.3以上的版本就可以了。 <!-- 保存或修改账户清理信息集合 --> <update id="saveOrUpdateAccou...

2020-03-04 17:23:13 1637

原创 正则只保留括号里的内容

场景:公司框架有一个前台导出功能,实际上是把HTML结构通过正则去掉一些没用的样式,然后由统一的工具导出。但是不支持列表为下拉的样式,比如这种:观察了工具:是这样的<%@page contentType="text/html;charset=GB2312"%><%@ page import="java.util.regex.*" %><jsp:u...

2020-03-04 17:19:01 1722

原创 table如何正确的隐藏一列

需要注意:因为兼容问题使用jquery的hidehide()在IE下改变了表结构,导致获得的cellIndex不准确改变宽度高度为0的试了,不可以$(function(){ var isCleanList = $("[id$='isCleanList']").val(); if(isCleanList == '1'){ //查询已清理账户 }else{ // 查...

2020-03-03 15:25:30 3762

原创 oracle明明设置了default值却提示ORA-04100无法将null值插入

解决办法:字段需要加上on null属性。例如:ALTER TABLE UM_AIMS_EBANK ADD (ABOLISHMENT_FLAG NUMBER DEFAULT ON NULL 0 NOT NULL)

2020-02-28 09:05:42 2697

原创 可执行jar包中 自定义编译器 编译文件时报错:错误: 编码GBK的不可映射字符

自己写的jar,在idea或者其他ide上面运行正常,打成可执行jar包在windows下运行时报错。错误: 编码GBK的不可映射字符问题原因是编译时没有选择正确的编译参数,javac有几个参数 -encoding表示了编译的编码所以在编译器执行时应当指明成对应的编码。解决办法:如果是手动编译的 就在javac后面加上参数 -encoding UTF-8如果是使用自...

2020-02-20 15:35:37 718

原创 使用shade打包后报错Error: A JNI error has occurred, please check your installation and try again

命令行运行发现原因是因为我使用了一个包来检测文件的编码。<dependency> <groupId>org.apache.any23</groupId> <artifactId>apache-any23-encoding</artifactId> <version>1.1</versi...

2020-01-14 17:31:06 465

原创 ibatis报错:无效的列索引——注释引起的问题

原因是注释引起的,也有可能是中文原因会导致报错的写法:红色写法会报错,要修改为蓝色的,另外<!---->这种格式仿佛也有问题。 <!-- 同步cnaps数据,不存在则新增,每次处理i条 --> <update id="syncNapsToAssisiatebank" parameterClass="java.lang.Integer">...

2019-07-29 14:21:33 587

原创 IE Ajax设置同步不起作用,打开F12成功,关闭失败

代码如下:/** * 检查数据库中是否有重复的名称 * @returns */function checkRepeat(){ var mouldId = $("[id$='info.mouldId']").val(); var mouldName = $("[id$='info.mouldName']").val(); var result = true; if(mouldI...

2019-07-13 15:58:39 703

转载 简单读取CSV文件的工具

参考:https://github.com/vegaasen/knowit-julekalenderpackage com.nstc.aims.controller.business.recordmould;import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.Closeable...

2019-06-13 15:29:06 1356

原创 复制属性的工具类

在开发中进行遇到值对象和实体间的数据复制.其中最常用的为Apache BeanUtilsBean的copyProperties.本次测试发现该工具可兼容大部分数据格式,但在Java.sql.Date和java.util.Date复制时,原数据如为空将发送报错.通过注册BeanUtilsBean的转换器,简单封装copyProperties方法.完成效果: 调用封装后的工具类方法复制...

2019-06-08 11:03:35 880

原创 Spring切面AOP目标类被多次代理导致通知被多次执行

1.首先写了一个环绕通知package com.nstc.aims.interceptor;import java.io.PrintStream;import java.lang.reflect.Method;import org.aopalliance.intercept.MethodInterceptor;import org.aopalliance.intercept.Met...

2019-06-05 11:32:23 4424 1

原创 POI 2.5.1读取日期格式

日期也是数值类型,中文日期带年月日的,在HSSFDateUtil.isCellDateFormatted(cell)中读取不出来,所以手动判断 // 数值类型(取值用cell.getNumericCellValue() 或cell.getDateCellValue()) case HSSFCell.CELL_TYPE_NUMERIC: i...

2019-06-04 09:51:03 990

原创 正则匹配数字逗号字符串,并转为Integer数组

RecordMould recordMould = buildRecordMould(); //获得逗号字符串 String sheetIds = CastUtil.toNotNullString(aims_recordmould_info.get("sheetList")); List<Integer> ids = n...

2019-05-31 18:18:21 1690

原创 Oracle + Ibatis使用Blob二进制进行下载和使用文件流进行下载

数据库:使用BLOB存放二进制流,BLOB转换为java类型为byte[]DECLARE CNT INTEGER;BEGIN SELECT COUNT(0) INTO CNT FROM USER_ALL_TABLES WHERE TABLE_NAME = UPPER('G_ATTACH_BYTE'); IF CNT = 0 THEN EXECUTE ...

2019-05-30 19:03:20 464

原创 win7不打重复开相同的文件夹

在工作中经常遇到打开多个文件夹的情况,有时候一个文件夹打开多次会重复出现在任务栏中,给查找带来很大的阻碍,如图:圈出的都是被重复打开的文件夹解决方法:计算机——组织——文件夹选项——选择在不同窗口打开不同文件夹——确定经过测试,只有对用户自己点击才有效,使用eclipse等工具的快捷键alt + shift + w 等打开还是不管用。。。如图:烦!!!...

2019-05-30 18:06:08 4612

原创 【最佳实践】Merge Into 批量新增并修改删除数据

使用环境IBATIS + ORACLE页面:建表语句:--序列DECLARE CNT INTEGER;BEGIN SELECT COUNT(0) INTO CNT FROM USER_SEQUENCES WHERE SEQUENCE_NAME = UPPER('SEQ_AIMS_FILE_CONTROL'); IF CNT = 0 THEN ...

2019-05-28 18:45:29 5499

原创 oracle左右连接的另一种显示方法—括号加号

select *from aleft join b on a.id = b.ida是主表用(+)表示select *from a,bwhere a.id = b.id(+)

2019-05-28 15:08:56 573

原创 Oracle级联删除

<!-- 根据关系删除附件信息表 --> <delete id="deleteAttachByRelation" parameterClass="com.nstc.aims.model.scope.AttachRelationScope"> DELETE G_ATTACH A WHERE 1 = 1 AND EXISTS ( ...

2019-05-27 18:35:23 866

原创 IDEA 修改ES版本

项目中使用IE9 和Chrome 不使用ES5的严格模式

2019-05-21 09:18:49 2685

原创 PowerDesigner 导出Oracle模型图

0.提前装好驱动,配置好登录文件1.新建一个物理模型2.导出表3.选择数据库选择表执行下面的代码:'******************************************************************************'* File: comment2code.vbs'* Purpose: 在P...

2019-05-17 16:34:21 1139

原创 IDEA 导出UML类图

设置成白色背景更方便截图。1.设置-Tools-Diagrams2.选择需要展示的类,注意不要选择包然后按crtl + shift + alt + u4.选择显示关系,这个关系只会显示选中的类的依赖...

2019-05-17 16:22:59 13250

原创 Eclipse SVN 切换帐号

1.最简单的方式是 找到svn 的settings 找到saved Data -》clear2.去eclipse的目录删除文件3.去windows的c盘删除文件方法1最好用

2019-05-06 15:27:09 1311

原创 oracle + ibatis 批量新增数据的几种方法整理

循环插入太耽误时间,业务需要批量新增数据,网上大概有说了四种方法。#1.(错误的方法)INSERT INTO XXX(XXX,XXX) VALUES (XXX,XXX),(YYY,YYY),(ZZZ,ZZZ)把上面的语句用iterate标签写成ibatis的格式,但实际上oracle不支持这种方式。#2.(没有使用序列时可以使用的方法)INSERT ALLINTO XXX...

2019-04-29 14:20:14 1394 1

转载 【转】批量删除项目中的.svn文件和.svn文件夹

注:.svn文件可以直接搜索*.svn删除,文件夹比较麻烦,用下面的方法。使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除:1、打开要删除.svn文件的最外层文件夹,按ctrl+f,打开文件搜索窗口;2、在窗口左边点击选择"所有文件和文件夹",在"这里寻找"会自动选中刚才打开的"最...

2019-04-26 09:28:47 840

原创 Maven添加本地jar包到仓库

2019-04-26 09:26:29 167

原创 得到当前运行目录的几种方式

System.out.println(DBUtil.class.getClassLoader().getResource().getPath() + db.properties); System.out.println(Thread.currentThread().getContextClassLoader().getResource().toString());...

2019-04-01 09:34:03 1512

原创 读写Properties文件

Properties pro = new Properties(); InputStream in = null; try { in = CommonSettings.class.getResourceAsStream("settings.properties"); pro.load...

2019-03-14 16:00:57 716

原创 获取jar包内的文件夹内的文件

jar包内的文件不能通过绝对路径获取。经过查找资料我使用如下方式解决:总结就是先获得jar包的绝对路径,然后得到所有的JarEntry(必须要加过滤条件,引用的jar包的文件也在这里面),然后通过InputStream is = WriteUtil.class.getClassLoader().getResourceAsStream(jarEntry.getName());获得文件输出...

2019-03-14 15:59:20 4830

原创 JS常用方法整理

1.数组查找时,使用($.inArray(ele,arr) != -1)来代替indexOf,因为indexOf在IE下会报找不到的错。2.正则匹配写法是/^\d+$/.test(cltNos[i]),而不是xxx.matches(reg)3.寻找同胞元素$obj.siblings();4.字符串截取substring截头不截尾var str = "AAA_BBB_CCC_DDD...

2019-03-13 17:12:46 179

原创 MzTreeView1.0点击下级按钮默认选中上级修改,MzTreeView1.0获得选中的数据

公司有一个树状图控件是基于【梅花雪】的MzTreeView1.0实现的,而且使用的是比较老旧的版本。点击下级按钮默认选中上级修改,如图当选者下级单位的时候上级单位自动被勾选了。解决方法:全部代码://点击树的子节点MzTreeView.prototype.checkChild = function(id){ this.selChild(id); var node...

2019-03-13 17:01:28 313

原创 反射修改不可变集合UnmodifiableList

项目中会返回不可改变的List值,对他进行操作会报错:例如        List&lt;Student&gt; list = new ArrayList&lt;Student&gt;();        list.add(new Student());        list = Collections.unmodifiableList(list);        System.out...

2019-02-26 16:12:18 2353 2

空空如也

空空如也

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

TA关注的人

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