随笔分类 -  Java

上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页
大叔也学学java,跟跟风...
摘要:# keycloak存到cookie中的值 * AUTH_SESSION_ID * KEYCLOAK_IDENTITY * KEYCLOAK_SESSION ## AUTH_SESSION_ID 用户的当前session_state,它是会话级的,关闭浏览器就没了 ## KEYCLOAK_IDENT 阅读全文
posted @ 2023-03-30 14:43 张占岭 阅读(815) 评论(0) 推荐(1) 编辑
摘要:安全配置Security Defenses 通过对Security Defenses的配置 ,可以对http头添加相应的安全配置 ,如CSP, X-Frame-Options, X-Content-Type-Option等 1 X-Frame-Options 推荐使用CSP,不建议使用X-Frame 阅读全文
posted @ 2023-03-21 18:34 张占岭 阅读(229) 评论(0) 推荐(0) 编辑
摘要:@ConditionalOnProperty注释在类或者bean方法上进行控制这个bean对象是否被注册,它是否被注册,完成依赖于ConditionalOnProperty里的value的值,为true时,表示被注册,为false表示不注册这个bean。而我们通过matchIfMissing来配置这 阅读全文
posted @ 2023-03-09 11:09 张占岭 阅读(713) 评论(0) 推荐(0) 编辑
摘要:我们都知道,在hystrix默认情况下,采用线程池的熔断方式,每个openfeign都有自己的线程,而这使得它无法获取主线程上的变量;现在有个现实的问题就是,当前端登录后,把token经过gateway传到服务A,服务A再调用服务B时,B是无法收到请求头里的token信息的;一种不太好的解决方案就是 阅读全文
posted @ 2023-02-24 11:01 张占岭 阅读(149) 评论(0) 推荐(0) 编辑
摘要:我们需要认清session会话和token令牌的区别,在keycloak中,他们是不同的两个概念,职责也不一样。 session【session_state】 它被保存到浏览器的cookie中,有4个会话属性,这主要基于高低版本浏览器和记住我功能考虑而设计的 按着kc系统获取会话的优先级,他们分别是 阅读全文
posted @ 2023-02-10 11:28 张占岭 阅读(1317) 评论(0) 推荐(0) 编辑
摘要:# JWT没有被持久化? * 我们总是说,JWT(json web token)是一个自解释的token,里面有用户相关的信息,它不需要被保存在服务端,降低了服务端的压力; * 同时有人会说,如果希望验证token的实时在线性,你用JWT怎么实现? * 有一些人直接会说,把这个JWT保存到redis 阅读全文
posted @ 2023-02-10 10:12 张占岭 阅读(322) 评论(0) 推荐(0) 编辑
摘要:spi是原生java的组件,通过META-INF/services目录进行注册,通过ServiceLoader进行加载,一般可以用在组件开发中,你在公用组件中封装好逻辑,将个性化的部分抽象出一个接口,接口通过spi的方式进行加载,在外部开发人员引用你的组件之后,通过实现接口来扩展个性化的功能,再通过 阅读全文
posted @ 2023-02-07 18:13 张占岭 阅读(126) 评论(0) 推荐(0) 编辑
摘要:1. 前言 WebMvcConfigurer配置类其实是Spring内部的一种配置方式,采用JavaBean的形式来代替传统的xml配置文件形式进行针对框架个性化定制,可以自定义一些Handler,Interceptor,ViewResolver,MessageConverter。基于java-ba 阅读全文
posted @ 2023-02-01 17:25 张占岭 阅读(585) 评论(1) 推荐(0) 编辑
摘要:上一篇说了关于MDC跨线程为null的理解,而本讲主要说一下,如何去解决它,事实上,Hystrix为我们留了这个口,我们只需要继承HystrixConcurrencyStrategy,然后重写wrapCallable方法,再把这个重写的对象注册到Hystrix里就可以了,跨线程共享数据,可以使用阿里 阅读全文
posted @ 2023-01-30 15:46 张占岭 阅读(399) 评论(0) 推荐(0) 编辑
摘要:MDC概念 MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 和 logback 提供的一种方便在多线程条件下记录日志的功能,也可以说是一种轻量级的日志跟踪工具。 MDC能做什么 那么通过MDC的概念,我们可以知道,MDC是应用内的线程级别,不是分布式的应用 阅读全文
posted @ 2023-01-29 17:11 张占岭 阅读(378) 评论(0) 推荐(0) 编辑
摘要:有时为了日志解耦,通常不把日志打到文件,而是直接打到kafka,而为了分析日志,我们可以通过sidecar的方式,把日志从kafka写入到es里,而通过kibana对日志进行分析。 我的k8s-fluentd的相关文章 k8s~部署EFK框架 k8s~为服务添加sidecar边斗 k8s~fluen 阅读全文
posted @ 2023-01-29 09:15 张占岭 阅读(473) 评论(0) 推荐(0) 编辑
摘要:对于logback的模板来说,我们是可以自定义的,同时它也提供了一些公开的常量,比如%level,%thread这些,我们如果希望自定义这些常量,需要实现ClassicConverter抽象类,重写它的convert方法。 系统变量 %thread 当前线程 %d{yyyy-MM-dd HH:mm: 阅读全文
posted @ 2023-01-28 09:31 张占岭 阅读(634) 评论(0) 推荐(0) 编辑
摘要:BeanFactory BeanFactory是Spring容器中的一个基本类也是很重要的一个类是Spring容器中的一个基本类也是很重要的一个类,在BeanFactory中可以创建和管理Spring容器中的Bean,它对于Bean的创建有一个统一的流程。 Spring的本质是一个bean工厂(be 阅读全文
posted @ 2023-01-19 16:24 张占岭 阅读(93) 评论(0) 推荐(0) 编辑
摘要:excel读出来的json,它是一个字符串,不是标准json,所以需要对字符串字段进行解析 复杂的excel如图 通过poi解析json,通过jackson完成对字段的解析 public static List<Map<String, Object>> read(String filePath) t 阅读全文
posted @ 2022-10-28 16:17 张占岭 阅读(179) 评论(0) 推荐(0) 编辑
摘要:redis-cluster是一个高可用,可分片的分布式redis集群解决方案,建议使用springboot2.3及以上版本的脚手架,如果是<2.3版本,你需要手动添加LettuceConnectionFactory来实现因为服务器宕机引起的节点感应功能;如果没有添加动态感应,那你的redis-clu 阅读全文
posted @ 2022-10-24 16:54 张占岭 阅读(615) 评论(0) 推荐(0) 编辑
摘要:# 一种互联网通信协议和标准 Request For Comments(RFC),是一系列以编号排定的文件。文件收集了有关互联网相关信息,以及UNIX和互联网社区的软件文件。RFC文件是由Internet Society(ISOC)赞助发行。基本的互联网通信协议都有在RFC文件内详细说明。RFC文件 阅读全文
posted @ 2022-10-13 08:58 张占岭 阅读(191) 评论(0) 推荐(0) 编辑
摘要:一个start包,它不需要有springboot启动类,它只提供一切公用的功能,被其它包依赖就行了,通过META-INF/spring.factories或者META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguratio 阅读全文
posted @ 2022-10-11 10:44 张占岭 阅读(549) 评论(0) 推荐(1) 编辑
摘要:# 17.1远程资源授权准备 ## 17.1.1认证和访问流程图 参考:http://www.zyiz.net/tech/detail-141309.html ![](https://img2022.cnblogs.com/blog/118538/202209/118538-202209211742 阅读全文
posted @ 2022-09-21 17:46 张占岭 阅读(340) 评论(0) 推荐(0) 编辑
摘要:配置类 @Data @ConfigurationProperties("auth") public class AuthProperties { private String title; } 配置类的注册,需要声明@RefreshScope @Configuration public class 阅读全文
posted @ 2022-09-21 15:36 张占岭 阅读(340) 评论(0) 推荐(0) 编辑
摘要:RedisTemplate默认使用二进制hex的方式进行持久化,它对象的值存储到redis里,当然,你的对象需要先实现java.io.Serializable接口,这种方式兼容性好,速度快,存储空间小;缺点就是没有可读性,所以就有了json的序列化方式,下面总结一下。 一 JdkSerializat 阅读全文
posted @ 2022-09-16 17:20 张占岭 阅读(2101) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页