随笔分类 - Java
大叔也学学java,跟跟风...
摘要:由于我的jboss项目去在容器中运行的,所以我习惯上把这些扩展功能添加到cli文件 ,然后在Dockerfile里把它们进行添加,动态为主程序添加功能。 * Dockerfile ``` FROM jboss/keycloak:14.0.0 USER root # 日志 ADD log4.cli /
阅读全文
摘要:2021-12-10日左右,java的log4j框架出现了一个大漏洞,对服务器案例引起了不小的影响,当然只对于log4j的日志使用者来说,如果你是spring框架,用的是logback,不存在这个问题。 RMI和JNDI RMI(Remote Method Invocation) 即Java远程方法
阅读全文
摘要:之前写过基于keycloak11.0.3版的[微信认证](https://www.cnblogs.com/lori/p/14274547.html)的实现,而在升级到keycloak14.0.0之后,这个认证出现了问题,原因是因为人家keycloak内部源码又变了。 * 影响类文件 `server-
阅读全文
摘要:maven对项目进行打包之后,可以将打包好的jar和某些资源文件复制到指定位置,例如你的项目结构是services父项目下有个子项目,service-1,它在打包之后,希望把jar和templates文件夹复制到父项目services的target目录,这就可以使用maven的两个插件来完成。 ma
阅读全文
摘要:# keycloak11.0.3 由于`undertow`不支持中文的cookie,所以如果使用记住密码功能时,存储的`KEYCLOAK_REMEMBER_ME`会出现错误,导致应用程序崩溃。 * 原码 。 数据结构 优先级队列底层的数据结构其实是一颗二叉堆,什么是二叉
阅读全文
摘要:# 情况 使用hutool的HttpUtil来获取远程的网页,类似爬虫,获取到的内容是GBK的,我们把它直接使用response.charset("UTF-8");最后输出body()之后发现是乱码 工具 <dependency> <groupId>cn.hutool</groupId> <arti
阅读全文
摘要:上一次写了关于《FunctionalInterface~一个批量处理数据的类》和《Future和Callable实现大任务的并行处理》的文章,本讲主要结合实际应用,来封装一个集合并行处理组件,我们的集合分为数据库查询出现的分页集合;还有一个是内存的集合,今天主要说一下内存集合的并行处理。 场景介绍
阅读全文
摘要:我不知道为什么kc没有为对应的查询字段加索引,导致我们在使用kc时,当用户表数据量达到几十万时,出现所有增删改接口缓慢的问题,这个问题的原因,我找了好长时间,我在大数据量时找这个缓慢原因过程 查看mysql的并发数的限制 查看top产生的cpu,内在的使用情况 查看客户端到kc端,kc端到数据库的网
阅读全文
摘要:java的enum类型,与C#不一样,它就是一个类,它可以实现接口,并且,可以通过的不同的枚举值来实现一个接口,这就是枚举的多态性。 下面的例子,在Hello接口有方法print,在枚举Strategy中,通过不同的枚举值分别实现了Hello接口,如下代码 enum Strategy impleme
阅读全文
摘要:对于KC的后台或者接口的操作,当用户,组,角色这些实体状态发生改变时,KC会对外发布事件,而这些事件处理程序我们是可以在后台配置的,默认继承了jboss-logging日志事件,而我们可以在事件管理中去配置自己的事件处理程序。 keycloak事件驱动设计模式 事件处理程序SPI 实现EventLi
阅读全文
摘要:kafka需要zookeeper的支持,我们可以使用docker-compose简单的部署一个环境,在部署时,kafka需要我们为它配置一个hostname,这个名称是每个kafka节点(broken)的名称,也是很容易被忽视的地方,通过kafka客户端工具可以看到你当前部署kafka时的hosts
阅读全文
摘要:Callable是一个泛型接口,也是一个FunctionalInterface,即函数式接口,它可以使用在Lambda表达式上,即现在比较流行的函数式编程,其实java8之后,封装了好多函数式接口,今天说的Callable它是一个带有返回值的接口,它主要和Future一起使用,用在并行计算上;并行计
阅读全文
摘要:@RequestParam中的Date类型的参数,如果前端给一个2001-01-01在后端默认是不认的,我们在后端需要对这种情况进行适配,我们可以通过@ControllerAdvice注解来拦截请求,然后对Date参数进行转换,最终实现我们的需求。 实现org.springframework.cor
阅读全文
摘要:keycloak我们都以docker为例子,来讲一下https的部署。 https更安全,加密传输 kc有些cookies,需要https的支持 nginx部署 upstream keycloak { server 192.168.*.*:8080; } server { server_name k
阅读全文
摘要:keycloak提供多种认证提供者,如用户名密码的方式,第三方社区的方式,一般来说,第三方社区的方式都是符合oauth2标准的,第三方社区像github,google,weixin之类的都需要你去申请个appid,appsecret,而这些信息我们不要硬编码,kc为我们提供了一种配置的方式,在kc管
阅读全文
摘要:实事上keycloak框架使用了freemaker进行页面部署,在页面上使用了vue进行了渲染,还是比较跟的上技术前沿的,只不过,keycloak没有使用spring框架,可能是因为它是redhat公司推出的产品吧。 依赖引用 <dependency> <groupId>org.springfram
阅读全文
摘要:使用自定义证书 需要先生成一对证书,其中.crt文件是公钥,也叫证书,在浏览器上可以看到;.key文件是私钥,由网站服务器自己保留。 keycloak ssl keycloak的ssl默认有自己的自签名证书,这个如果涉及到你的程序调用kc的接口,kc使用自定义证书是不行的,你调不通,使用使用正规的证
阅读全文