自定义博客皮肤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)
  • 资源 (16)
  • 收藏
  • 关注

原创 clickhouse使用问题记录

重启完以后,你按照书上的sql去查询system.part_log表,但是却报错了,提示system.part_log doesn't exist,说这个表不存在。在《ClickHouse原理解析与应用实战》一书244页,也就是副本与分片这一章,作者在介绍分布式表引擎写入的核心流程时,对含有副本的分布式表介绍了2种方式:(1)通过Distributed表引擎自身完成副本的写入 (2)通过ReplicatedMergeTree复制数据。这么配置以后,重启集群,然后就可以了。...

2022-08-08 01:27:37 582 1

原创 maven多环境打包实现web.xml和context.xml中的占位符变量替换

在springboot或传统springmvc的tomcat项目中,为了实现spring容器文件中的变量替换,我们通常可以在项目的resource目录下新建几个环境目录,例如rd、test、dev、stress、online等等,然后再在对应的环境目录下放一些数据库的配置文件(例如jdbc.properties)、redis的配置文件(例如redis.properties)等等,当然你也可以直接使用一个config.properties(里面包含了数据库和redis以及其他的变量定义)。这样做...

2020-08-04 14:01:20 2060 1

原创 使用Java mail 发送日历邮件出现的乱码问题解决

想要使用Java通过程序来实现发送日历邮件的功能有两种途径:一是调用ews(即Exchange WebService API)接口协议;二是通过第三方开源组件iCal4j来实现。其中通过iCal4j又可以分为两种形式:(1)通过自定义iCal4j中的各个组件使用iCalendar数据流生成*.ics文件,完事之后还要删除ics文件,比较麻烦,但是自定义性和灵活性强,功能丰富。(2)通过日历邮件协议定义的标准的文本格式来发送,形如: String calendarCon...

2020-05-25 00:49:55 1116

原创 javax.naming.NameNotFoundException: Name LoginAuthenticationServlet is not bound in this Context

错误堆栈如下所示:javax.naming.NameNotFoundException: Name LoginAuthenticationServlet is not bound in this Context at org.apache.naming.NamingContext.lookup(NamingContext.java:770) at org.apache.naming.NamingContext.lookup(NamingContext.java...

2020-05-19 00:50:41 520

原创 TypeError [ERR_INVALID_CALLBACK]: Callback must be a function错误解决

在《oAuth2实战》一书中,作者岁数代码使用了node.js语言来描述。在oAuth中有4种角色:资源拥有者、客户端、授权服务器和受保护资源,资源拥有者就是人,所以每个场景联系都是三个组件,换成node.js即三个js文件,在三个窗口依次启动client.js、authorizationServer.js、protectedResource.js,当启动完以后,首先点击getOAuthToken,拿到令牌以后,点击getProtectedResource报错了,受保护资源端错误如下所示:...

2020-05-18 23:14:46 4303 2

原创 Is the byte array a result of corresponding serialization for DefaultDeserializer?;EOFException

异常堆栈信息:org.springframework.data.redis.serializer.SerializationException: Cannot deserialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Fail...

2020-05-08 17:06:39 9537

原创 无法访问org.apache.http.annotation.ThreadSafe 找不到org.apache.http.annotation.ThreadSafe的类文件

明天更新

2019-12-30 22:39:14 5169

原创 java通过JByteMod-1.8.2修改jar包中的源码并重新保存jar

刚接手了一个新项目,项目中的很多功能是通过引入第三方jar包来实现功能的,由于业务需要,要修改jar包中的源码才能实现所期望的功能,我先说一下我采用过的方法: 1.第一种是将jar包中需要修改的类文件反编译,修改后再编译成class文件重新打包。这种方式对我不可用,原因是我要修改的类文件大量引用了其他jar包中的类,这样一来为了修改一个类,你得把所有涉及到的其他类都得拿过...

2019-11-30 23:44:44 4865

原创 hibernate的validate注解与@RequestParam注解搭配使用实现参数不为空的条件下才校验

项目中一个接口有几个参数,其中有必填的也有可选的,要求使用hibernate的validate注解实现参数校验,必填参数好说,可选参数无法实现这两个校验:一是参数为空的条件下什么也不做;二是参数不为空的条件下,参数是否符合取值范围 如果只使用validate注解,只能实现第二条,即一个@NotBlank注解,上面再加一个@Pattern注解或其他注解限制取值范围。对于...

2019-10-15 11:11:21 4873

原创 jquery dataTable标题和列内容居中

标题居中需要在全局css文件中定义table的样式,假设在一个html的div中这样定义一个dataTable:<table class="table table-striped table-bordered table-hover" id="datatable"> <thead>...

2019-09-02 20:16:04 7304

原创 springboot2.0中@ResponseBody返回null值转空字符串的问题

最近正在做一个后台管理系统的项目,前端是基于Metronic的Bootstrap开发框架,管理后台大部分是将服务端查询的数据显示在表格中,由于某些字段可能为空,显示在表格中为null,不太优雅,所以想显示成空字符串或者“-”,服务端是spring boot2.0,过滤null值为空字符串一般是在序列化的时候设置值。 controller层使用@ResponseBody...

2019-08-29 22:57:23 3032

原创 hibernate的validate注解异常在不同版本下的全局捕获方式

在最开始的时候,web项目中接口的第一步几乎都是判断参数的合法性,例如值是否为null等等。因为有guava的工具包,刚开始手写校验参数还OK,例如: if (StringUtils.isBlank(name)) { return "name不能为空";} 随着项目功能接口变多,这种写法越来越麻烦;hibernate出了一种注解,可以很方便...

2019-07-31 23:11:08 1226

原创 JAVA 利用反射执行带有泛型参数的方法

虽然本文旨在说明如何利用反射执行带有泛型参数的方法,但是还是先来看下这个议题的背景吧,我们的服务要接入公司里面另一个平台的一个服务,我们的服务是Java语言开发,他们的服务是PHP开发,虽然远程过程调用无关乎语言,但是在传参方面遇到了一些小问题;除此之外,还记得远程过程调用需要客户端的存根和服务器端的骨架嘛,当然这都是后话了。 1.先来看下他们的接口地址:http://...

2019-04-30 23:13:07 4953

原创 velocity模板路径在不同项目中的获取问题

以前就遇到过在linux上和在windows上获取文件路径的方式不一样;因为我平常在windows上开发项目,最后部署到docker容器中就会报无法找到模板路径;我在windows本地是以springboot项目启动,部署到docker中是以jar包方式启动,可见这两种方式会影响模板路径的获取。 这次的问题跟以前稍微不一样,都是部署在docker中,以前是war包运行,现在...

2019-03-16 16:03:30 2952

原创 sequelize常见API使用

     1.对查询出来的属性起别名// 第一种:根据id查询一条记录 const favors = await UserModel.findOne({ attributes: [['user_favorites', 'userFavors']], //将user_favorites属性重命名为userFavors where: { id: `${id}`...

2019-02-11 19:40:12 9997 2

原创 element-ui表格组件el-table实现行编辑与新增功能

       element前端ui组件挺美观的,我们也使用了他们的table组件,但是默认没有提供行编辑功能,我们可以通过将table的每个单元格换成input框来巧妙实现。默认每个单元格就是一个template数据填充,不可编辑;我们可以在template里面包裹一个input框来实现单元格可编辑;等每一个单元格都可编辑的时候,我们可以在每一行后面加一个按钮来控制只可编辑当前行。     ...

2019-01-31 22:59:26 23434 10

原创 使用sequelize实现关联查询

       关联查询包含一对多和多对一的映射关系,一对多的API为belongsTo,多对一的API为hasMany。使用sequelize进行关联查询时,要根据具体情况选择用哪一个映射关系,因为这其中涉及左右连接、内外连接的性能问题。下面来看一个一对多的例子,当然你可以将这个例子反过来多对一,但是性能会差很多。所以我们要根据数据库表的设计来选择谁关联谁       假设有一个Student...

2019-01-31 22:56:30 23861 7

原创 orm框架sequelize的where条件接受动态参数传入

      在nodejs项目中,接口会接收从前台传来的查询参数,接口里面根据请求参数动态查询数据库,例如分页参数等等;sequelize官方文档中并没有提及如何做,不过可以利用sequelize的特性去巧妙实现。下面介绍两种方式:      先来看第一种方式:由于sequelize的where查询条件本身就是一个对象object,所以我们可以利用这种特性,提前根据请求参数以及各种条件判断来构...

2018-12-11 16:07:16 14388 4

原创 guava缓存编写单元测试遇到的问题

      通常编写单元测试主要是针对service类,因为主要的业务逻辑都在service层;单元测试往往要求达到一定的覆盖率,主要包括方法覆盖率和分支覆盖率。分支覆盖率只要是指业务逻辑中的各种情况(例如if...else...等等),各种条件下如果都能执行到,那么你的测试覆盖率一定会非常高。      现在来看一个例子,我的业务逻辑中使用了多级缓存,首先从guava中读取,如果没有再从re...

2018-11-30 21:18:57 1133

原创 一次http请求删除cookie时遇到拦截器拦截到两次的问题

     在一次http请求的业务逻辑中,如果程序代码有删除cookie的地方,那么必须等到response返回给浏览器或客户端后才会真正的删除,代码中cookie.setMaxAge(0)只是添加指令,只有客户端收到指令以后才会删除。     在此我分享一个案例,当时代码遇到的一种奇怪的现象,不过现在知道原因了,我的项目是一个web项目,里面有一个拦截器,主要是preHandle这个方法里面...

2018-11-30 21:17:39 1404

原创 Typescript与orm框架sequelize语法冲突的问题

      如果不想在nodejs中大量的手写sql,就可以采用orm框架sequelize,它非常类似于Java的JPA,让你的代码看起来更规范简洁高效。不过在采用sequelize编写的过程中遇到了一些问题,而网上的资料又太少;不是没有去sequelize官网看过,主要是官网的API示例都是针对一般的js语法,而我的项目使用了TypeScript,有好多地方功能虽然可以正常执行,但是代码下面会...

2018-11-30 21:14:19 3599

原创 在idea中启动nodejs项目后访问报错:Error: template not found: index.html

      以前一直用idea开发Java项目,最近团队要开发一个nodejs项目,有的人用的是VSCode,而我不想换开发工具了,幸好idea有nodejs插件,安装完以后导入项目即可,电脑上一定要提前安装好nodejs环境,安装好以后,idea的nodejs插件就会自动找到本地node安装路径,自动配置好。项目采用nodejs+typescript+express。       项目启动前...

2018-10-29 19:43:05 3857

原创 在idea中使用JaCoCo插件统计单元测试覆盖率

        在后台工程师开发完新代码交给QA进行测试时,软件测试人员一般都会要求后台开发对单元测试的覆盖率达到一定的标准;例如我们的标准是分支覆盖率达到50%以上,函数覆盖率达到50%以上。        在idea中查看覆盖率挺简单的,idea中支持三种插件来查看覆盖率,每种插件统计明细各有千秋,分别是idea自带插件、JaCoCo、Emma。         在idea中打开一个测...

2018-09-25 11:36:34 46747 28

原创 SpringBoot项目中使用webservice调用远程服务

        有一个webservice项目,对外提供资源查询服务,使用了Apache的cxf框架,soap协议。如今都使用微服务,在一个springboot项目中需要远程调用这个资源查询服务,RPC的一种,既然是RPC,就需要有客户端的存根(stub)和服务端的骨架(skeleton)来完成调用,将webservice项目打成jar作为依赖引入当前springboot项目。        ...

2018-08-31 20:16:27 33160

原创 使用HttpClient模拟访问带有嵌套对象参数的接口

    项目中涉及到外部服务调用时,会使用到postman来模拟测试,例如一个接口如下:@RequestMapping("/test")public void test(@RequestBody User user){}    User类的属性包括id、name、age三个属性,那么当你使用postman调用接口时,就可以使用这三个参数传进去,它会自动映射到User对象中,或者使用...

2018-07-31 10:37:33 3904 2

原创 使用selenium模拟浏览器操作页面及问题处理(采用Java语言)

     有一个需求是:页面上有一批测试数据要删除,一共10万条数据,每页显示20条,一共5000页,手动删除的操作一般是先点击全选本页20条,点击"删除"按钮,再点击弹出"确认"按钮完成一次操作。人工点击太费时费力,本来写了一个js脚本,每隔10秒定时去操作,把脚本放在当前页面的浏览器控制台执行,不一会浏览器就卡死了。这时selenium就派上用场了   所需依赖:&lt;dependency&...

2018-06-15 17:21:12 2478 3

原创 采用velocity模板引擎作为Java邮件模板

     获取邮件模板public String getMailContent(String name, String tel) throws IOException { StringWriter stringWriter = new StringWriter(); // velocity引擎 VelocityEngine velocityEngine = new Velo...

2018-06-01 10:48:28 2602

原创 idea中导入sbt多模块项目遇到的问题解决方案

     在《Akka入门与实践》一书第二章-----Actor与并发,作者使用了两个项目,一个是服务端,一个是客户端,而客户端要依赖服务端,所以客户端算是一个多模块项目,整个项目都是用sbt工具构建的。这有点类似于maven多模块项目,一个maven项目要依赖另一个maven项目,那首先要将被依赖的maven项目安装到本地仓库(例如mvn  install);sbt项目也是如此,不过有几个问题需...

2018-05-11 17:20:09 3019

原创 关于在idea中导入sbt项目出现的问题

   sbt即Simple Build Tool——简单构建工具,sbt是scala项目的首选构建工具,也是play框架和activator实际使用的构建工具。在《Akka入门与实践》一书中随书源码项目全部使用sbt构建,而我在导入sbt项目时出现了好多问题,特此记录:    1.安装sbt    我们要使用sbt,就必须首先在本地安装一份,官网下载zip包,解压到一个目录就行;其次要在idea中...

2018-05-07 12:37:30 16345 1

原创 Can not deserialize instance of java.util.ArrayList out of VALUE_STRING token at

     我有如下一个接口,接口参数是一个实体类User,user实体包含email和List&lt;tastes&gt; 等属性@RequestMapping(value = "/users", method = RequestMethod.POST)public ResponseEntity&lt;User&gt; createUser(@RequestBody User user) {pu...

2018-04-28 13:18:26 26568 2

原创 关于idea导入gradle工程,出现sync failed的问题

     在《精通Spring MVC4》这本书中,作者通篇采用gradle来作为项目构建工具,当我们下载下来随书源码后,想导入到idea中,发现idea控制台正在syncing,在第三步configure时一直出错;有时候依赖下载不下来,你到maven中央仓库查看发现有这个依赖,但是gradle就是下载不下来,这些情况的解决方法就是在导入已存在gradle项目时,先build一下:    点击i...

2018-04-28 12:37:14 37279

原创 Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'

     Spring Security 4.0之后,引入了CSRF,默认是开启。不得不说,CSRF和RESTful技术有冲突。CSRF默认支持的方法: GET|HEAD|TRACE|OPTIONS,不支持POST。       解决方法有两种:       第一种是在spring security的配置类中将csrf功能禁用,如下@Overrideprotected void configur...

2018-04-27 19:28:39 8484

原创 EL1007E:(pos 0): Property or field 'year' cannot be found on null

    在《Neo4j全栈开发》一书第172页,页面采用的是thymeleaf模版引擎,页面中用到了thymeleaf标签语言strings的substring函数和length函数,使用中应该在strings前面加上#号,书中有一个加错了地方:    其中playoff.year前面的#号应该放在后面的strings.substring前面,但是书中放错了,程序就报错了。正确语法如下:&lt;s...

2018-04-19 19:44:08 11060

原创 自定义jqgrid的一些小技巧(五)

1.jqgrid编辑行、保存行、取消编辑,jqgrid编辑一行数据是分两步的,先编辑,再保存,点保存的时候才会向后台发请求,想自定义这些过程,请参考这一篇https://blog.csdn.net/dreamstar613/article/details/54613032和这一篇https://blog.csdn.net/zacry/article/details/425082172.jqgrid...

2018-04-03 19:23:47 1656

原创 自定义jqgrid的一些小技巧(四)

1.在使用jqgrid自带的行编辑时,如何获得正在编辑的单元格的值呢?   方案一:通过单元格input框来获取他的值,关键是要找准input元素的id值的规律//行ID和列名字,决定了一个单元格的位置,从而可以取出单元格的值var strValue=$("#grid").jqGrid("getCell",rowId,"表格列的名字");  如上所示是获取某一个单元格的内容,但是当你把值打印出来...

2018-04-03 18:38:02 1314

原创 自定义jqgrid的一些小技巧(三)

1.jqgrid在填充数据的时候,如果你的实体中有一个主键字段为id,那么jqgrid会自动将id映射为rowId行键,这样就很方便了,与数据库记录一一对应,请与序列号区别开。如果你的实体中的主键字段名不是id,而是userId或其他什么的名字,你要注意小心了,这时就映射不上了,jqgrid会将序列号作为rowId,此时与数据库记录号不对应了,所以操作时要小心了,那么如何让其他字段作为jqgrid...

2018-04-03 16:19:42 1062

原创 自定义jqgrid的一些小技巧(二)

1.jqgrid动态显示隐藏某一列。例如我们不想要那个方框列,用来勾选的多选框列,而想添加一个序号列,从1到n的自增列,那么就可以这样做:jQuery(user_selector).setGridParam().hideCol("cb").trigger("reloadGrid"); //隐藏jQuery("#grid_id").setGridParam().showCol("cb").trigg...

2018-04-03 15:46:13 1418

原创 自定义jqgrid的一些小技巧(一)

    项目要改版,于是在网上找到了一款素材,表格为jqgrid,主题样式为ace风格;看起来简洁自然,不过第一次接触jqgrid,想弄明白还是花费了很大功夫。现在整理记录一下使用过程中根据需求自定义jqgrid的一些方法:原型形如:1.不想要每一行最左边的“铅笔”(编辑按钮)和“垃圾箱”(删除按钮)怎么办?   解决方法:就是将colNames和colModel里的第一项去掉,如下红框所示,除了...

2018-04-03 15:05:00 1963

原创 让jQuery中对话框dialog的title支持html代码块

    有时候在使用dialog对话框的时候,想让对话框的标题好看一点,例如设置个字体大小、颜色呀、加个图标呀什么的。在网上搜都说jQuery的dialog支持title为html,于是我也试了一下:$( "#dialog-confirm" ).dialog({ resizable: false, modal: true, title: "&lt;div class='wi...

2018-03-30 20:01:21 3678

原创 在eclipse中使用protobuf-dt插件进行序列化时遇到的问题

      使用protobuf-dt插件比在命令行使用命令方便,但是这个插件的下载地址要翻墙,速度也不理想,所以我在资源里上传了一份,下载地址为:protobuf-dt   ,这是一个zip包,安装方式以eclipse-4.4-luna-sr2为例,在eclipse菜单栏点击“Help"----&gt;"Install New Software",弹出如下界面:    点击"Add"按钮,出现如...

2018-02-09 15:40:41 2166

neo4j-windows64-3.3.4

在neo4j官网下载特别慢,所以我下载下来供大家使用;是windows64位,解压缩版,不用安装

2018-04-10

protobuf-dt

eclipse中使用protobuf序列化的插件

2018-02-09

Elasticsearch学习资料整理

整理的elasticsearch学习资料大全,包含elasticsearch-2.x和5.x,不同版本下安全机制,如何与springboot集成,elasticsearch的jdbc插件、安装出现错误分析等等

2018-01-12

kafka2.11demo

kafka最新版2.11操作示例,两个生产者示例,一个消费者示例

2017-11-22

魅族视频扩展插件

魅族手机自带视频软件有的格式不支持,或者支持的不是很好,可以安装这个软件

2017-11-07

Java p2p技术内幕

Java p2p技术内幕,不过内容有点老,是外国人写的,国内翻译的,本来想设为免费的,发现csdn下载现在最少要设为2分

2017-10-17

logstash-input-jdbc-4.2.3离线安装包

这个资源可以直接使用 ./logstash-plugin install file:///path/to/logstash-input-jdbc-4.2.3.zip 这种命令安装;不需要联网;适用于logstash-5.5.3左右版本使用

2017-10-11

kafka-manager-1.3.3.13

kafka集群管理界面

2017-08-15

kafka-manager-1.3.3.13.zip

自己编译的话需要sbt插件,sbt编译的时候各种报错,配置问题、版本问题、镜像问题真的好麻烦。最后终于编译成功了,分享给大家

2017-08-14

报表工具Highcharts

需要引入highcharts库文件,由于highcharts是构建在jQuery、MooTools、Prototype等等第三方Javascript库之上,因此,不同的系统可以根据本身的代码结构来选用一种第三方库,这个demo采用的是jQuery;项目是web项目,是个servlet

2017-07-17

批量生成access.log的demo

这个demo是一个批量生成nginx日志文件的工具类,当然跟真实的稍微有点区别,你可以改进一下,使他更完美,里面包含一个txt文件,你可以看到效果

2017-07-17

达内安卓酷跑allrun(完整版)

我上传了两个allrun项目,请大家下载这个完整版,不要下载我资源里的另一个,这个内容多一些

2017-07-11

inotify-java-2.1.jar

inotify能够对文件系统进行监控,书上举的例子都是c++使用inotify的例子,难道没有Java版吗,肯定有,只不过要自己编译,在网上找到别人的博客有,但是人家不愿意分享,我就只能自己编译了,压缩包里有编译好的jar包,也有源码,你也可以自己编译,还附带so文件,最新版编译时只支持Java1.7

2017-07-10

达内安卓项目酷跑allrun源码

达内安卓最后一个完整项目,张久军老师的酷跑项目

2017-01-08

java操作考勤机完整版代码示例

代码中包含用java语言连接中控考勤机下载用户信息、考勤记录和指纹信息,上传用户信息和指纹信息,更改等等,存储数据库等等

2016-03-02

java开发二维码所需QRCode.jar包,附带demo

现在什么都可以制作成二维码了,比如名片、链接等等,java要使用二维码功能,就必须导这个包,我写了个小示例程序,欢迎下载

2016-03-01

空空如也

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

TA关注的人

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