自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CatalpaFlat的博客

一个具有强迫症的程序猿

原创 Spring AOP @PathVariable和@RequestParam 参数进行校验(valid)

在上一篇文http://blog.csdn.net/dushiwodecuo/article/details/79080237,通过AOP对@RequestBody注解进行的参数进行校验 那么对于 @PathVariable和@RequestParam 却没有对应的spring mvc 默认...

2018-01-20 16:50:17 4120 0

原创 Spring AOP 实现“切面式”valid校验

why: 为什么要用aop实现校验? answer: spring mvc 默认自带的校验机制 @Valid + BindingResult, 但这种默认实现都得在Controller方法的中去接收BindingResult,从而进行校验. eg: if (...

2018-01-16 22:57:30 2252 0

原创 Gradle构建SpringBoot并打包可运行的jar配置

使用Gradle构建项目,继承了Ant的灵活和Maven的生命周期管理,不再使用XML作为配置文件格式,采用了DSL格式,使得脚本更加简洁。 构建环境: 1. jdk1.6以上,此处使用1.8 2. Gradle 4.4.1 3. SpringBoot 4. idea...

2018-01-05 16:15:33 9233 1

原创 Spring Security TokenStore实现3+1详解

TokenStore:Persistence interface for OAuth2 tokens.(对于OAuth2令牌持久化接口) 官方文档 TokenStore 的默认实现有三种: - InMemoryTokenStore - JdbcTokenStore -...

2017-12-29 11:03:55 10059 6

原创 Spring Security 核心过滤器链分析

前言: 在熟悉Spring Security的使用和基本操作后,有时根据项目需求,我们需要在security原有的过滤器链中,添加符合我们自己的过滤器来实现功能时,我们就必须得先了解security的核心过滤链的流程和每个过滤器的各自功能,以此,我们才可以在特点的过滤器前后加入属于我们项...

2017-12-27 15:49:37 14463 0

原创 Spring Security OAuth2 深入解析

Spring Security OAuth2 深入解析一、OAuth2 概要1.1.OAuth2基本流程话不多说,先上图: 分析一波: client:第三方应用(即App或向外提供接口) Resource Owner:资源所有者(即用户) Authentication Server:授权...

2017-12-22 16:10:31 5829 2

原创 spring security 自定义认证登录

spring security 自定义认证登录1.概要1.1.简介spring security是一种基于 Spring AOP 和 Servlet 过滤器的安全框架,以此来管理权限认证等。 1.2.spring security 自定义认证流程1)认证过程 生成未认证的Authenticatio...

2017-12-21 17:38:05 2916 0

原创 Spring AOP 后置通知修改响应httpstatus

Spring AOP 后置通知修改响应httpstatus1.定义Aspect/** * 响应体切面 * 后置通知修改httpstatus * * @author : CatalpaFlat */ @Component @Aspect public class ApiResponseAs...

2017-12-16 10:13:13 1294 0

原创 SSM框架极简便携式集成Quartz任务调度

SSM框架整合Quartz任务调度SSM集成Quartz,实际操作只需两步: 1.配置自定义的Job(添加job的相关属性,修改任务方法) 2.将Job注册到JobRegister 即可在项目中运行属于你的Quartz任务调度,方便实用,易于操作。1.添加maven依赖<depende...

2017-11-17 11:39:42 978 0

原创 自定义Quartz超实用工具类

自定义Quartz超实用工具类1.添加maven依赖<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz --> <dependency> <groupId>org.quart...

2017-11-17 11:12:28 602 0

原创 深入解读Quartz任务调度器

深入解读Quartz任务调度器1.Quartz简介1.1.概要  Quartz是OpenSymphony提供的强大的开源任务调度框架。     官网:http://www.quartz-scheduler.org   纯Java实现,精细控制排程。 1.2.Quartz特点 强大的调度能力 ...

2017-11-15 17:26:12 1642 1

原创 SSM框架基于swagger2实现API管理

SSM框架基于swagger实现API管理swagger官网: https://swagger.io/docs/ 1.添加maven依赖<!--swagger--> <dependency> <groupId>io.springfox</group...

2017-11-14 14:21:16 2077 0

原创 SSM框架 基于spring-AOP 实现requet参数日志记录

SSM框架 基于spring-AOP 实现requet参数日志记录1.参数类型 from表单提交,可以从request的getParameterMap()获取 raw提交(对象类型提交),则得从request的getReade()或getInputStream() 2.添加maven依赖<d...

2017-11-13 10:58:27 1666 0

原创 SSM框架之SpringAOP快速搭建

SSM框架之SpringAOP快速搭建有关AOP的相关解析在该文章中以实例方式阐述: http://blog.csdn.net/dushiwodecuo/article/details/781808031.添加maven依赖<!--spring-aop--> <dependen...

2017-11-11 16:42:08 500 0

原创 自定义超实用Redis工具类(满足对象,list,map等类型)

自定义超实用Redis工具类(满足对象,list,map等类型)该工具类,可以存储对象、list,map等各种数据类型到Redis中,大大有效提高开发效率。1.添加maven依赖 <!--序列化工具--> <dependency> <gr...

2017-11-11 15:12:23 530 0

原创 SSM框架快速集成redis

SSM框架快速集成redis1.添加maven依赖<!-- config redis data and client jar--> <dependency> <groupId>org.springframework.data</groupId>...

2017-11-11 15:00:42 7668 4

原创 快速集成搭建SSM框架

快速集成搭建SSM框架附上项目结构图: 1.添加maven依赖<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-inst...

2017-11-10 00:00:48 289 0

原创 虚拟机CentOS6.7 快速安装redis

虚拟机CentOS6.7 快速安装redis1.配置编译环境yum -y install gcc-c++ 2.下载redis安装包wget http://download.redis.io/releases/redis-3.2.8.tar.gz 3.解压源码tar -zxvf redis-3.2....

2017-11-09 23:10:27 244 1

原创 虚拟机快速搭建CentOS,并解决网络问题

虚拟机快速搭建CentOS,并解决网络问题1.搭建环境: 虚拟机:VMware Workstation12 镜像:CentOS-6.7-x86_64-bin-DVD1.iso 网络设配器:NAT模式 主机:window7 Vmware提供了三种网络连接模式: 1.bridged(桥接模式):默认...

2017-11-09 20:06:43 219 0

原创 Nginx rewrite深入解读

Nginx rewrite深入解读1.什么是rewrite官方解读:nginx的重写模块(rewrite)是一个简单的正则表达式匹配与一个虚拟堆叠机结合。 个人解读:nginx的rewrite是结合正则表达式和标志位实现url重写、改变以及重定向。如:域名跳转,防盗链,反向代理,各种跳转(跳转维...

2017-11-02 11:36:16 244 0

原创 Nginx 日志配置详情解析

Nginx 日志配置详情解析  在使用nginx进行服务器管理时候,日志对于统计、审查、排错来说非常有利。   nginx日志相关的配置有:access_log(访问日志)、log_format(日志格式)、open_log_file_cache、log_not_found、log_subreq...

2017-11-01 12:36:30 284 0

原创 Nginx 的ngx_http_core_module模块

Nginx 的ngx_http_core_module模块ngx_http_core_module模块处理请求时,会有大量的变量,这些变量可以通过访问日志来记录,也可以用于其他nginx模块接收。在对请求做策略入改写等到都会使用到一些变量。以下为ngx_http_core_module模块提供的变...

2017-11-01 11:07:18 428 0

原创 Nginx 动态添加模块

Nginx 动态添加模块nginx模块依赖:nginx的一些模块需要第三方支持,例如gzip模块需要zlib库,rewrite模块需要pcre库,ssl功能需要openssl库。 根据需求添加不同模块 例添加echo模块:1.下载并安装nginx详情请看:http://blog.csdn.ne...

2017-11-01 10:36:54 1532 0

原创 Nginx location配置解析

Nginx location配置解析1.语法规则location [=|~|~*|^~]/uri/{...} = 表示精确匹配,这个优先级最高的 ^~ 表示uri以某个常规字符串开头,理解为匹配 url路径即可,Nginx不对url做编码,因此请求为/static/80%/aa,可以被规则^~/...

2017-10-31 17:40:56 249 0

原创 Nginx root&alias文件路径配置解析

Nginx root&alias文件路径配置解析 nginx在指定文件路径有两种方式root和alias,这两种的主要区别在于nginx如何解析location后面的uri,这会使两者分别以不同的方式请求映射到服务器的文件上。 1.root语法的使用【root】 语法: root pat...

2017-10-31 15:08:54 315 0

原创 Nginx配置多虚拟主机(即配置域名)

Nginx配置多虚拟主机(即配置域名)1.存放站点(即项目)站点的根目录和域名相同1.1.创建a域名存放地址mkdir -p /data/site/a.chen.com1.2.创建a域名的首页cd /data/site/a.chen.com touch inde.html echo 't...

2017-10-30 17:01:29 280 0

原创 服务器快速集成Nginx

服务器快速集成Nginx1.安装依赖1.1.pcre重定向依赖yum -y install pcre* PCRE(Perl Compatible Regular Expressions)是一个Perl库,不止具有http重定向依赖,还包括 perl 兼容的正则表达式库。nginx的http模块使用...

2017-10-30 15:24:23 369 0

原创 SpringBoot 集成WebSocket广播模式

SpringBoot 集成WebSocket广播模式1.添加maven依赖<!--thymeleaf模板依赖--> <dependency> <groupId>org.springframework.boot</groupId> &l...

2017-10-26 20:00:14 564 0

原创 SpringBoot 快速集成RabbitMQ

SpringBoot 快速集成RabbitMQ1.添加maven依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-st...

2017-10-25 15:47:51 227 1

原创 RabbitMQ 快速安装

RabbitMQ1.RabbitMQ概述  MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来...

2017-10-25 15:33:11 172 0

原创 SpringBoot 快速实现WebSocket

SpringBoot 快速实现WebSocket1.添加Maven依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s...

2017-10-25 10:41:00 1074 0

原创 SpringBoot 基于swagger实现RESTfulApi风格

SpringBoot 基于swagger实现RESTfulApi风格1、swagger概述  Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端...

2017-10-24 15:02:49 536 0

原创 SpringBoot 基于Redis快速实现消息队列

SpringBoot基于Redis快速实现消息队列一. 常用消息队列工具  目前常用的消息队列大概有三种类型,RabbitMQ等AMQP系列, Kafka, Redis等kev value系列,它们的使用场景分别是:   1.RabbitMQ: 相对重量级高并发的情况,比如数据的异步处理 任务的...

2017-10-24 11:54:03 17948 5

原创 分布式之消息中间件

分布式之消息中间件 目录 * 1.消息中间件概述 * 2.消息中间件使用场景 * 3.消息中间件原理 * 4.消息中间件传递模式   * 4.1点对点模式(PTP)   * 4.2发布-订阅模型(Pub/Sub) 1.消息中间件概述  消息中间件利用高效...

2017-10-23 16:21:07 435 0

原创 分布式之消息队列

分布式之消息队列 目录: * 1.消息队列概述 * 2.消息队列应用场景 * 2.1应用解耦 * 2.1.1传统模式 * 2.1.2使用消息队列 * 2.2异步处理消息 * 2.2.1传统模式 *...

2017-10-23 14:52:33 218 0

原创 浅谈Dubbo架构

1.Dubbo是什么 Dubbo是: 1)一款分布式服务框架 2)高性能和透明化的RPC远程服务调用方案 3)SOA服务治理方案 每天为2千多个服务提供大于30亿次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点以及别的公司的业务中。 2.Dubbo架构 Provider: 暴...

2017-10-11 09:18:46 558 0

原创 SpringBoot 自定义+动态切换数据源

1、添加maven依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> ...

2017-10-10 09:34:42 4602 1

原创 Spring AbstractRoutingDataSource抽象类剖析

1、扩展Spring的AbstractRoutingDataSource抽象类(该类充当了DataSource的路由中介, 能有在运行时, 根据某种key值来动态切换到真正的DataSource上。) 从AbstractRoutingDataSource的源码中:public abstract ...

2017-10-10 09:04:27 223 0

原创 SpringBoot 设置多数据源访问

1、添加maven依赖注入 <!--properties所需依赖--> <dependency> <groupId>org.springframework.boot</groupId> ...

2017-10-10 08:58:11 382 0

原创 SpringBoot 使用druid监控数据库

1、添加maven依赖注解<!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba<...

2017-10-10 08:51:10 462 0

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