自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牛奋lch

先要学会做一个好人,才能成为一个有用的人……

原创 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)异常问题解决汇总

最近在使用Mybatis的过程中,遇到了这个异常,通过http://ljhzzyx.blog.163.com/blog/static/38380312201412453629988/这个博客里面的方法还是没有解决问题,为了方便大家看,遂将该博客中的解决方法复制过来了。最后还是将遇到的问题解决了,方...

2018-03-13 09:14:00 1590 4

原创 storm中如何使用BaseWindowedBolt的ack机制

最近有个需求,在WindowedBolt中需要对每个tuple进行ack,如果异常则进行fail,如是,我按照普通Bolt的写法,却始终实现不了上面的功能,代码如下: List<Tuple> tupleList = inputWindow.get(); try { ...

2018-03-13 09:12:29 916 0

原创 使用JsonView,减少vo的数量

前言: 在我们的开发中,经常会有这样的情景,后台从数据库中查询到前端需要的数据后,就会返回给前端,此时,我们就会封装一个vo,用来传输结果,例如一个StudentVo类,里面有姓名,班级,年级等信息,另一个业务接口需要的字段和StudentVo类里面的字段类似,只是多了两个字段而已,一般的做法是,...

2017-12-09 10:03:09 1524 3

原创 spring boot--使用异步请求,提高系统的吞吐量

前言: 在我们的实际生产中,常常会遇到下面的这种情况,某个请求非常耗时(大约5s返回),当大量的访问该请求的时候,再请求其他服务时,会造成没有连接使用的情况,造成这种现象的主要原因是,我们的容器(tomcat)中线程的数量是一定的,例如500个,当这500个线程都用来请求服务的时候,再有请求进来,...

2017-12-07 19:29:42 17669 2

原创 spring boot整合quartz实现多个定时任务

最近收到了很多封邮件,都是想知道spring boot整合quartz如何实现多个定时任务的,由于本人生产上并没有使用到多个定时任务,这里给个实现的思路。 1、新建两个定时任务,如下: public class ScheduledJob implements Job{ @Override...

2017-11-15 18:22:24 7892 2

原创 spring boot--整合spring session实现session共享以及cookie丢失问题解决

spring session可以利用redis透明的存储并共享web应用的HttpSession,当结合spring boot使用时,更是大大的节省了我们整合的时间。 1 添加pom依赖 org.springframework.boot spring-boot-starter-...

2017-11-06 14:49:24 24187 6

原创 微服务间调用导致的Could not write content: Infinite recursion (StackOverflowError)问题

最近在开发中遇到了一个奇葩的问题,

2017-11-01 17:47:13 2959 0

原创 ELk Stack-5.0.0-Logstash的安装以及logstash-input-plugin-file使用

Logstash下载地址:https://www.elastic.co/downloads/logstash Logstash官方文档:https://www.elastic.co/guide/en/logstash/current/index.html 1、下载安装 下载下来后,直接解压并进...

2017-09-29 16:02:57 731 0

原创 springboot-加载自定义的properties文件

在我们的开发中,有很多配置文件是需要分开配置的,例如kafka.properties,amq.properties等,那这些自定义的配置文件,怎么加载到对应的类里面了,下面就来说说这个问题。 在src/main/resources目录下新建一个config文件夹,用来存放我们的propertie...

2017-09-26 20:43:34 21586 1

原创 NAT模式下,让虚拟机联网

今天遇到一个问题,在使用make命令编译redis安装包的时候,直接报了个gcc :command not found,于是确定gcc没有安装,于是又使用yum install gcc安装gcc的时候,又报一些依赖的包找不到,为了不一个个的下载这些包,于是必须让虚拟机能够上网。 步骤一:共享In...

2017-09-22 17:23:58 609 0

原创 使用Junit做参数化测试

很多时候,我们在开发中写单元测试的时候,当对同一个方法的不同边界取值时,需要写多个单元测试来达到分支覆盖的效果,例如测试两个数相除,至少需要测试以下几个情况: 1、被除数为0的情况 2、除数为整数的情况 3、除数为小数的情况 所以,我们至少需要写三个单元测试。 下面来介绍一下使用Juni...

2017-09-20 19:52:29 2376 1

原创 NAT模式下Linux系统的虚拟机的安装配置

最近被问道,虚拟机ping不通宿主机的问题,下面对这个问题进行一下总结。 环境: 虚拟机三台:该网段可以按需进行分配,此处的虚拟机网段为192.168.2.0,网关为192.168.2.1(这两点需要在后面的虚拟网络中进行配置) 192.168.2.108 192.168.2.109 192.16...

2017-09-20 14:13:13 526 0

原创 java中OutOfMemoryError异常总结

最近在生产中,接连出现了OutOfMemoryError的异常,现将相关总结如下: 1 java.lang.OutOfMemoryError: unable to create new native thread 这个异常是由于操作系统没有足够的资源来创建新的线程造成的。系统创建线程时,除了要在...

2017-09-04 22:04:32 781 0

原创 junit单元测试报java.lang.NoSuchMethodError: org.junit.runner.Description.createSuiteDescription

解决方案一: 去掉junit-dep依赖 junit junit-dep 该异常很大一部分都可以通过这个方案解决,如果pom依赖中存在junit-dep则去掉,如果没有依赖这个包,则尝试方案二。 解决方案二: 调高junit的依赖版本,一般升级到4.12或以上版本。

2017-08-30 16:54:53 1573 0

原创 spring boot整合Cucumber(BDD)

1、新建一个springboot工程工程结构如下: 2、添加pom依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSche...

2017-08-29 18:23:32 4328 2

原创 使用spring事件驱动机制,实现权限信息的自动收集存库

最近在做权限管理,希望能够在容器初始化后,自动的将所有Controller上的url进行收集,并存放到权限表中,从而代替人工配置的方式。实现思路如下:                              spring事件驱动机制+注解来实现。 spring事件驱动机制 spring在容器初始...

2017-08-25 12:15:08 4642 6

原创 spring boot解决第三方jar包依赖的问题

在我们的开发中,通过会依赖第三方的jar包,而这些jar包由于还处于测试或开发阶段,并没有放到maven库中,这个时候,如果我们还按照原来spring boot的方式打包的话,第三方jar包是打不进来的,所有很多时候,我们在本地测试,开发没问题,一部署到服务器上,就报ClassNotFound异常...

2017-08-11 18:41:48 6452 0

转载 幂等性和高并发在电商系统中的使用

幂等和高并发在电商系统中的使用 在Java web项目开发中,经常会听到在做订单系统中生成订单的时候,要做幂等性控制和并发控制,特对此部分内容作出总结,在高并发场景下,代码层面需要实现并发控制;但是幂等性,其实更多的是系统的接口对外的一种承诺,承诺一次请求和多次请求会返回同样的数据。关于幂等性将...

2017-08-10 18:14:34 1313 0

原创 spring boot中统一异常处理

在前面的博客中,Spring Boot整合jpa,Shiro进行权限管理 异常都是直接返回到页面上,这样做既不安全,也不友好,所以在返回给页面之前,我们需要对异常信息进行统一的处理,该部分的处理思路和spring mvc的处理思路是一致的。 下面,我们来对前面的示例进行改造,从而能够支持统一的异...

2017-08-09 12:03:54 4481 0

原创 spring boot整合Shiro实现单点登录

前面的博客中,我们说道了Shiro的两个最大的特点,认证和授权,而单点登录也是属于认证的一部分,默认情况下,Shiro已经为我们实现了和Cas的集成,我们加入集成的一些配置就ok了。 1、加入shiro-cas包 org.apache.shiro ...

2017-08-07 17:35:31 34957 43

原创 spring boot整合redis实现shiro的分布式session共享

我们知道,shiro是通过SessionManager来管理Session的,而对于Session的操作则是通过SessionDao来实现的,默认的情况下,shiro实现了两种SessionDao,分别为CachingSessionDAO和MemorySessionDAO,当我们使用EhCache...

2017-08-07 08:34:41 17201 10

原创 spring boot使用内嵌的tomcat解决不安全的HTTP方法安全漏洞

最近项目开发完毕,在进行安全测试的时候,爆出了一个中级安全漏洞--不安全的HTTP方法,如果对这个安全漏洞有不明白的地方,可以自行问度娘。 1、传统Web项目的解决方案 在不使用spring boot的情况下,有两种解决方案1、在过滤器中进行拦截,对于不是http安全的方法直接给前端返回错误信息;...

2017-08-04 11:47:07 6572 1

原创 spring boot整合redis,实现shiro的CacheManager

接着上一篇博客来讲:Spring Boot整合jpa,Shiro进行权限管理 Shiro默认整合了EhCache,来实现缓存,如果我们想用redis替换EhCache来实现缓存怎么做了?我们可以从Shiro的源码来找到一些端倪。我们可以模拟EhCacheManager的实现方式,EhCacheM...

2017-08-03 17:45:17 10538 1

转载 Spring Boot整合jpa,Shiro进行权限管理

转:http://412887952-qq-com.iteye.com/blog/2299777 本来想写一篇spring boot整合Shiro实现权限验证的文章,发现这篇写的非常不错,就直接借鉴了! (1). Shiro简单介绍 Shiro是Apache下的一...

2017-07-27 12:24:37 8541 11

原创 spring cloud config实现datasource的热部署

关于spring cloud config的基本使用,前面的博客中已经说过了,如果不了解的话,请先看以前的博客 spring cloud config整合gitlab搭建分布式的配置中心 spring cloud config分布式配置中心的高可用 今天,我们的重点是如何实现数据源的...

2017-07-19 19:48:44 10183 9

原创 spring boot部署中一个斜杠引发的血案--org.thymeleaf.exceptions.TemplateInputException

异常现象:在本地打包部署完全没有问题,资源文件也都可以映射上,但是打包成jar包部署到服务器上时,就一直报异常,异常信息如下: 严重: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw e...

2017-07-19 15:55:05 42259 6

原创 spring boot-部署时报org.springframework.beans.factory.BeanCreationNotAllowedException异常

今天在本机测试的时候,一直报这个异常: org.springframework.beans.factory.BeanCreationNotAllowedException: Error creating bean with name 'org.springframework.cloud...

2017-07-05 15:50:10 13898 5

原创 spring boot jpa-java.lang.IllegalArgumentException: Not a managed type异常问题解决方法

最近遇到一个问题:在生产中有两个模块,一个模块负责定时任务,并负责存库,另一个模块则负责读取数据库,并展示,由于是两个不同的模块,所以每个模块中都有一部分entity是公用的,导致整个系统的代码重复率偏高,所以决定将公共部分的entity提取出来,放到一个公共的模块当中,然后运行以前的代码,结果就...

2017-07-02 12:03:37 13868 6

原创 sentinel directive while not in sentinel mode问题解决方案

今天部署redis的哨兵模式的时候,由于自己的粗心大意,导致部署的时候一致报如下的错误: *** FATAL CONFIG FILE ERROR *** Reading the configuration file, at line 2 >>> 'sentinel m...

2017-06-28 15:02:26 14368 0

原创 Hystrix系列-5-Hystrix的资源隔离策略

Hystrix的资源隔离策略有两种,分别为:线程池和信号量。说到资源隔离,那我们就要明白,我们为什么需要资源隔离。 在一个分布式系统中,服务之间都是相互调用的,如下图所示: 例如,我们容器(Tomcat)配置的线程个数为1000,服务A-服务R,其中服务I的并发量非常的大,需要500个...

2017-06-25 18:57:32 13770 6

原创 Hystrix系列-4-Hystrix的动态配置

Hystrix默认使用Archaius来实现的动态配置,我们在上节中,使用了代码的方式来实现配置,这节,我们使用Hystrix的动态配置来实现。 1、实现一个Command,代码如下: package com.example.demo.hystrix.command; import org.ap...

2017-06-25 16:29:28 6925 5

原创 Hystrix系列-3-Hystrix的配置-通过代码构造配置

一、首先我们来实现一个HystrixCommand,示例代码如下: package com.example.demo.hystrix.command; import org.apache.http.HttpEntity; import org.apache.http.client.method...

2017-06-25 15:40:39 1546 0

原创 Hystrix系列-2-HystrixObservableCommand的使用

在前面一节中HystrixCommand的使用,下面,我们来介绍HystrixObservableCommand的使用。HystrixObservableCommand的作用仍然是用来做资源隔离的,后面会介绍和HystrixCommand的区别,先看用法,示例代码如下: /** * Hystri...

2017-06-25 14:46:24 4586 1

原创 spring boot-整合CAS Client实现单点登陆验证

实现方式一:使用第三方的starter 1、依赖的jar net.unicon.cas cas-client-autoconfig-support 1.4.0-GA 2、增加配置文件 cas.server-...

2017-06-13 18:07:05 26728 10

原创 Linux后台运行java的jar包

前言 需要执行的jar为:sysrd-test.jar,并已经上传到了Linux服务器上! 直接运行方式 java -jar sysrd-test.jar通过这种方式部署的时候,SecureCRT的shell是被锁定的,我们无法再执行其他的操作,如下: [root@48 opt]# java ...

2017-05-25 19:53:34 3932 0

原创 spring boot-同时使用jms的Queue(队列)和Topic(发布订阅)

前言 前面有一篇博客讲到了spring boot整合jms的使用http://blog.csdn.net/liuchuanhong1/article/details/54603546 但是最近遇到一个需求,需要同时使用jms的队列和topic,于是就有了下面的测试代码: 消费者代码 @Compo...

2017-05-25 19:52:23 4296 8

原创 spring boot-使用Filter实现Header认证

前言 假设客户端在http请求中,已经加入了Header的认证信息,例如: HttpPost post = new HttpPost("http://localhost:8990/sendMail"); StringEntity entity = new StringE...

2017-05-23 12:02:36 21111 10

原创 使用jodd-email实现邮件发送

最近接到一个新的任务,需要提供一个公共的邮件服务接口给客户端使用,目前需要提供两种访问方式:1、WebService方式;2、Restful方式。在选用具体的邮件发送工具时,放弃了javamail而是选择了jodd-email来实现邮件发送。 jodd简介 jodd下有一系列非常好用的工具集,如下...

2017-05-22 19:13:58 2666 0

原创 spring boot-实现WebService(CXF实现)的拦截器(Interceptor)

拦截器(Interceptor)是CXF功能最主要的扩展点,可以在不对核心模块进行修改的情况下,动态添加很多功能。拦截器和JAX-WS Handler、Filter的功能类似,当服务被调用时,就会创建一个拦截器链(Interceptor Chain),拦截器链在服务输入(IN)或输出(OUT)阶段...

2017-05-22 19:12:58 3943 0

转载 git常用命令汇总

原文地址:http://blog.csdn.net/crper/article/details/50269227 简而言之 Git是由Linux kernel创立者 Linux Torvalds 开发的(因为BitKeeper的问题),属于DVCS(分布式版本控制) Github 是一个开源项...

2017-05-22 14:32:03 524 0

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