lmb55的专栏

大道至简...

Java知识体系

Java知识体系: 1、JDK 第一级别:精读源码 该级别包含的包如下: java.io java.lang java.util 第二级别:深刻理解 该级别包含的包如下: java.lang.reflect java.net javax.net.* java.nio.* ...

2018-03-02 21:52:34

阅读数 311

评论数 0

在springboot中使用springsecurity实现安全控制

我们在编写web应用时经常要对一些页面做安全控制,比如:对于没有访问权限的用户需要转到登录表单页面。要实现访问控制方法的多种多样,可以通过AOP、拦截器实现,也可以通过框架实现(如:Apache shiro、spring security)。 本文主要学习一下在springboot中使用sprin...

2019-05-21 20:16:03

阅读数 3

评论数 0

如何在项目启动时就执行某些操作

参考资料:如何在项目启动时就执行某些操作 在实际的项目开发中经常会遇到一些需要在项目启动的时候进行初始化操作的需求,比如初始化线程池,配置某些对象的序列化和反序列化方式,加载黑名单白名单,加载权限应用,加载组织架构到缓存等等。这篇文章就来总结一下如何在项目初始化时进行一些资源操作。 方法一:@Po...

2019-05-21 19:49:17

阅读数 8

评论数 0

自定义类型处理器的应用

问题描述: 一个JSON字符串在转对象的时候报JSON解析异常的错误,我仔细看了一下错误堆栈,是枚举导致的数组越界问题。 [ { "fee":0, "amount":15, "orderNo...

2019-05-20 19:34:42

阅读数 124

评论数 0

由防重复点击引发的幂等性问题思考

HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用。举个最简单的例子,那就是支付,用户购买商品使用约支付,支付扣款成功,但是返回结果的时...

2019-05-20 19:16:12

阅读数 19

评论数 0

MyBatis自定义类型处理器 TypeHandler

在项目开发中经常会遇到一个问题: 当我们在javabean中自定义了枚举类型或者其它某个类型,但是在数据库中存储时往往需要转换成数据库对应的类型,并且在从数据库中取出来时也需要将数据库类型转换为javabean中的对应类型。比如:javabean中字段类型为Date,数据库中存储的是varchar...

2019-05-20 18:52:38

阅读数 24

评论数 0

jdk1.8新特性(五)——Stream

转载自:https://mp.weixin.qq.com/s/adKZrOe6nFEmuADHijsAtA 在Java中,集合和数组是我们经常会用到的数据结构,需要经常对他们做增、删、改、查、聚合、统计、过滤等操作。相比之下,关系型数据库中也同样有这些操作,但是在Java 8之前,集合和数组的处理...

2019-03-14 19:29:48

阅读数 73

评论数 0

基于SLF4J MDC机制实现日志的链路追踪

request 的inputStream和response 的outputStream默认情况下是只能读一次, 不可重复读;这就导致要获取请求体或者响应体信息时必须要声明包裹类wrapper; spring为此提供了两个对应的包裹类ContentCachingRequestWrapper和Cont...

2019-03-12 12:08:16

阅读数 207

评论数 0

jdk1.8新特性(四)——Optional

在我们的开发中,NullPointerException可谓是随时随处可见,为了避免空指针异常,我们常常需要进行一 些防御式的检查,所以在代码中常常可见if(obj != null) 这样的判断。JDK1.8为我们提供了 一个Optional类,Optional类能让我们省掉繁琐的非空的判断。 O...

2019-02-21 20:20:03

阅读数 397

评论数 0

Jdk1.8新特性(三)——方法引用::

Lambda表达式可以用来创建匿名方法,有时候使用lambda表达式仅仅是调用一个已存在的方法: Arrays.sort(stringsArray,(s1,s2)->s1.compareToIgnoreCase(s2)); 在java8中,可以直接通过方法...

2019-02-21 19:51:27

阅读数 147

评论数 0

Jdk1.8新特性(二)——lambda表达式(参数列表)->{}和函数式接口@FunctionalInterface

Jdk1.8新增lambda表达式是为了简化代码,主要用于简化匿名实现类,为其提供一种更加简洁的写法。Lambda表达式在swift语言中被称为代码块,lambda表达式可以认为是一种特殊的接口,是匿名实现类的简写,该接口必须只有一个抽象方法。 作用: 1)简化匿名实现类的书写,实现接口抽象方法;...

2019-02-21 19:38:08

阅读数 101

评论数 0

Jdk1.8新特性(一) 接口的default方法

Jdk1.8之前的接口中通常只声明方法的签名,方法的具体实现在子类中进行。Jdk1.8打破了这样的用法:接口中可以实现具体的方法体,只需要加上关键字static或者default修饰即可。 1)使用static来修饰的称之为静态方法,静态方法通过接口名来调用; 2)使用default来修饰的称之为...

2019-02-21 19:24:13

阅读数 73

评论数 0

insert返回主键 — mybatis selectKey

日常项目开发中,经常会用到一个场景:在表中新增一条数据,需要得到该条数据的主键ID。如何不额外写一条查询语句来得到新增数据的主键ID呢?mybatis的selectKey实现了这个功能。 mybatis的selectKey在不同数据库中的用法有点区别: oracle中的用法 &l...

2019-02-13 00:29:12

阅读数 50

评论数 0

当我谈跑步时我谈些什么——村上春树

1、痛楚难以避免,而磨难可以选择。 2、心灵所受的伤,便是人为了某种自立性不得不支付给世界的代价。 3、无论做什么事,一旦去做,我非得全力以赴不可,否则不得安心。 4、“我们还安心,可以从头再来。”我对妻子说。她答道:“好。” 5、年轻的时候姑且不论,人生中总有一个先后顺序,也就是如何安排时间和能...

2019-02-12 22:42:08

阅读数 43

评论数 0

读段永平的博客有感

1、知道错的绝不做 2、发现错的立即改,不管多大的代价都是最小的代价 。 3、做对的事并把事情做对 4、如何克服“因怕把事情做错而不敢做对的事情的恐惧?对对的事情有truly believe。 5、做对的事情+把事情做对=复利 ps:复利其实就是利滚利,即把上一期的本金和利息作 为下一期的本金来计...

2019-02-12 22:33:27

阅读数 47

评论数 0

Left join后用and和where的区别

Left join左连接,得到的是左表的所有数据拼接右表符合on条件的数据。 on后用and连接,都作为on条件。 on后用where连接,where作为筛选条件,则是匹配两个条件相同的结果集。on后用where连接,where作为筛选条件,则是匹配两个条件相同的结果集。 如下图一,on后的a...

2018-12-18 22:03:06

阅读数 126

评论数 0

消息推送的实现方式

最近再做一个在线签约系统,其中有一个需求是实现“消息推送”,接下来这段时间好好研究一下相关的技术实现。目前已知的实现消息推送以及消息队列有以下几种方式: 1、基于 AJAX 的长轮询(long-polling)方式 2、websocket 3、RabbitMQ ...

2018-10-18 22:44:07

阅读数 233

评论数 0

【SpringBoot】SpingBoot整合AOP

说起spring,我们知道其最核心的两个功能就是AOP(面向切面)和IOC(控制反转),这边文章来总结一下SpringBoot如何整合使用AOP。 一、示例应用场景:对所有的web请求做切面来记录日志。 1、pom中引入SpringBoot的web模块和使用AOP相关的依赖: 其...

2018-09-07 00:47:33

阅读数 26170

评论数 14

【SpringBoot】在SpringBoot中使用Ehcache

SpringBoot提供了对缓存的支持,通过在启动类中添加@EnableCaching注解自动化配置合适的缓存管理器(CacheManager),Spring Boot根据下面的顺序去侦测缓存提供者: * Generic * JCache (JSR-107) * EhCache ...

2018-09-04 23:14:53

阅读数 1277

评论数 0

【zTree】基于zTree动态生成树节点的一些应用

最近项目中需要用到zTree动态构建树节点,实现树节点的增删改查,以及点击树节点展示树节点对应的页面。趁着这个机会把zTree的用法大概看了一遍,代码示例见我的Github:基于zTree动态生成树节点的一些应用 实现效果如下: 主界面: 树节点的搜索(根据节点名称模糊匹配子节点): ...

2018-08-30 00:55:25

阅读数 366

评论数 0

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