自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis分布式锁 - SpringBoot 2.0以上适用

SpringBoot2.0以后,redis 的库替换为了lettuce ,分享基于redis一个分布式锁实现,特点:1/ 非重入,等待锁时使用线程sleep2/使用 redis的 SETNX 带过期时间的方法3/使用ThreadLocal保存锁的值,在锁超时时,防止删除其他线程的锁,使用lua 脚本保证原子性;实现如下,欢迎提出指正:package...

2019-03-04 18:02:47 2605 5

原创 Spring 之 BeanPostProcessor

将实现了BeanPostProcessor接口的类定义为bean,将拥有预处理和后处理bean的能力。Example:public class ThymeleafSecurityDialectProcessor implements BeanPostProcessor { private static final Logger logger = LoggerFactory.ge...

2018-11-06 11:04:34 232

原创 Spring-@Import 之ImportSelector

使用@Import注解里面的类,如果实现了ImportSelector接口,会调用其方法,按照结果注册bean。public interface ImportSelector { String[] selectImports(AnnotationMetadata var1);}public class JpaContextImportSelector implements I...

2018-11-06 11:01:13 709

原创 Spring-@Import 之ImportBeanDefinitionRegistrar

参考:https://www.cnblogs.com/zzq-include/p/8004506.html使用@Import注解,如果改类实现了ImportBeanDefinitionRegistrar接口,则会调用该接口方法,而不是该实现类注册为bean.public interface ImportBeanDefinitionRegistrar { void regist...

2018-11-06 10:54:26 1511

原创 CAS 5.3 集成 OAuth2.0 客户端简要解析

1 前言CAS和 oauth2.0 不做介绍,自行查找资料。在cas5 中,提供了集成第三方oauth登陆(如微信、qq等) 的方法,这些功能是基于 Pac4j 包实现的。有一些文章提供了配置方法,本文将对流程做一些补充和分析。参考:http://www.ibloger.net/article/3142.html2 流程基本流程图大致如下。一般会先在第三方网站得到appid...

2018-09-21 14:15:38 7386 1

原创 GenericJackson2JsonRedisSerializer 反序列化问题

在使用Spring-data-redis 时, 很多文章都推荐使用GenericJackson2JsonRedisSerializer 作为redisTemplate 的序列化执行器,然而,在遇到类中有 LocalDateTime 等类型时, 反序列化会有问题,大概错误提示为:org.springframework.data.redis.serializer.SerializationEx...

2018-08-28 17:11:25 35705 6

原创 Java Fork/Join 思考与文件统计例子

了解了一下Java 的Fork/Join体系,原理不懂,体会:1 .主要需要实现类:如果需要返回类型,则用RecursiveTask<T>,  在compute中返回值,大概逻辑是: return .使用invokeAll(task1,task2) 且 最后 task1.join()+task2.join如果不需要返回值,可以继承RecursiveAction,直接invokeAll ...

2018-06-29 23:57:10 565

原创 【半原创】springboot 1.X 集成Quartz.

springboot 1.X 集成Quartz.〇, 个人理解,欢迎指正一,本文主要解决的问题查找了一些资料相关资料,发现要么写得太肤浅,要么没有解决一些实际问题。故在别人的基础上抄了一抄,梳理了一下有了此文。背景跳过,这里主要介绍使用sring集成Quartz 的代码,使用spring+Quartz的JDBC持久化任务特性:主要解决的问题:A.任务涉及到的数据库事务问题 (Quartz的Job任...

2018-04-17 09:29:15 1247

原创 JAVA8 Lambda_Stream 简单操作记录

直接上代码:package com.test.lambda;import java.util.*;import java.util.stream.Collectors;public class StreamTest { public static void main(String[] args) { List list = Arrays.asList

2018-02-06 17:47:59 232

原创 Jsonp

Jsonp 理解1、最近稍微看了下jsonp的东西,整理如下。2、服务端代码大概可以写成这样: @GetMapping("/iojsonp") def iop(@RequestParam String jsonpFunctionName,@RequestParam Integer id){ return "${jsonpFunctionName}({id

2017-12-27 10:57:30 651

原创 数据库结果映射ResultMapping小工具EasyQuery

数据库结果映射工具,EasyQuery.在代码中直接传sql 语句,返回 Map 或者实体。支持直接实体操作save(object), get(Class, Object), delete(object),支持编程事务,支持spring事务支持实体生成,自定义PagePlugin 分页查询详见GitHub : https://github.com/woodyDM/EasyQuery目前仅在Mysql / Java1.8 测试.

2017-10-29 14:00:45 787

原创 SpringMVC自定义错误页面

0、springboot 项目中,使用过@Controllerclass ErrorController extends BasicErrorController 的方式进行处理1、在SpringMVC中,实现class MyExceptionHandler implements HandlerExceptionResolver ,然后在配置文件里面@Bean 即可。重载

2017-08-08 15:14:36 548

转载 springboot 使用mybatis (xml Mapper)

1、POMdependency> groupId>org.mybatis.spring.bootgroupId> artifactId>mybatis-spring-boot-starterartifactId> version>1.3.0version>dependency>dependency> groupId>org.springframewo

2017-06-24 19:21:31 3775

原创 阿里云安装搭建gogs

第一次弄,瞎jiba 整,先记录下来。整了个阿里云,为ubuntu系统 ,外网 ip为XXXXX,然后登录后,开整。sudo apt-get updatesudo apt-get upgradesudo adduser git //创建用户 ,可能有一大堆密码之类的。 密码 *******git --version //检查git是否安装成功sudo a

2017-05-13 19:48:10 1707 1

空空如也

空空如也

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

TA关注的人

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