摘要: [toc] 什么是JWT JWT(JSON Web Token)是一个开放标准(RFC 7519),它定义了一种紧凑且独立的方式,可以在各个系统之间用JSON作为对象安全地传输信息,并且可以保证所传输的信息不会被篡改。 JWT通常有两种应用场景: 授权。这是最常见的JWT使用场景。一旦用户登录,每个阅读全文
posted @ 2018-09-11 12:56 Decouple 阅读(817) 评论(3) 编辑
摘要: API开发中经常会遇到一些对请求数据进行验证的情况,这时候如果使用注解就有两个好处,一是验证逻辑和业务逻辑分离,代码清晰,二是验证逻辑可以轻松复用,只需要在要验证的地方加上注解就可以。 Java提供了一些基本的验证注解,比如 、`@Size`,但是更多情况下需要自定义验证逻辑,这时候就可以自己实现一阅读全文
posted @ 2018-08-16 01:23 Decouple 阅读(639) 评论(3) 编辑
摘要: SSH(Secure Shell)是一套协议标准,可以用来实现两台机器之间的安全登录以及安全的数据传送,其保证数据安全的原理是 非对称加密 。 传统的 对称加密 使用的是一套秘钥,数据的加密以及解密用的都是这一套秘钥,可想而知所有的客户端以及服务端都需要保存这套秘钥,泄露的风险很高,而一旦秘钥便泄露阅读全文
posted @ 2018-08-15 09:52 Decouple 阅读(2303) 评论(5) 编辑
摘要: 这篇文章的主题并非鼓励不使用继承,而是仅从使用继承带来的问题出发,讨论继承机制不太好的地方,从而在使用时慎重选择,避开可能遇到的坑。 JAVA中使用到继承就会有两个无法回避的缺点: 1. 打破了封装性,子类依赖于超类的实现细节,和超类耦合。 2. 超类更新后可能会导致错误。 继承打破了封装性 关于这阅读全文
posted @ 2018-05-24 10:56 Decouple 阅读(5102) 评论(41) 编辑
摘要: 在使用Spring时,可能会遇到这种情况:一个单例的Bean依赖另一个非单例的Bean。如果简单的使用自动装配来注入依赖,就可能会出现一些问题,如下所示: 单例的Class A 非单例的Class B 这里 采用了默认的单例scope,并依赖于 , 而 的scope是 ,因此不是单例的,这时候跑个测阅读全文
posted @ 2018-05-18 09:34 Decouple 阅读(1285) 评论(0) 编辑
摘要: 循环依赖 在使用Spring时,如果主要采用 的依赖注入方式,则可能会遇到循环依赖的情况,简而言之就是 的构造器依赖于 ,`Bean B Bean A BeanCurrentlyInCreationException`。 Class A Class B 测试 原因 这时候运行测试就会发现抛出了 异常阅读全文
posted @ 2018-05-17 00:17 Decouple 阅读(1414) 评论(0) 编辑
摘要: `Spring Security Filter Filter Filter Chain FilterChainProxy`。 如图所示。 实际上 下面可以有多条 ,来针对不同的URL做验证,而 中所拥有的 则会根据定义的服务自动增减。所以无需要显示再定义这些 ,除非想要实现自己的逻辑。 关键类 Au阅读全文
posted @ 2018-03-08 16:23 Decouple 阅读(2742) 评论(0) 编辑
摘要: 最初的代码 在最近的项目中,写出了这样的一段代码 然后在Code Review的时候被告知在多线程的情况下,这样写可能会导致 有多个实例。比如下面这种情况: |Time|Thread A| Thread B| |: :|: :|: :| |t1|A1 检查到instance为空|| |t2||B1 阅读全文
posted @ 2018-02-25 18:09 Decouple 阅读(3151) 评论(1) 编辑
摘要: Q: Throwable是不是受查异常? A: 是 在 "Java规范" 中,对非受查异常和受查异常的定义是这样的: The unchecked exception classes are the exception classes and the classes. The checked exce阅读全文
posted @ 2018-02-24 15:32 Decouple 阅读(1414) 评论(0) 编辑
摘要: 依赖引入 三个配置文件 测试阅读全文
posted @ 2018-01-29 21:17 Decouple 阅读(1196) 评论(0) 编辑