Java
20230528 java.beans.FeatureDescriptor
介绍 java.beans.FeatureDescriptor public class FeatureDescriptor PropertyDescriptor、EventSetDescriptor 和 MethodDescriptor 等的公共基类 API getName setName programmatic name getDisplayName setDisplayName
20230528 java.beans.EventSetDescriptor
介绍 java.beans.EventSetDescriptor public class EventSetDescriptor extends FeatureDescriptor API 构造器 EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, S
20230528 java.beans.BeanInfo
介绍 java.beans.BeanInfo public interface BeanInfo 用于暴露 JavaBean 的属性、方法和事件等信息。它定义了访问 JavaBean 元数据和自省能力的标准方法,通过它可以查询 JavaBean 中的属性、方法、事件及其特征描述,以及如何访问和操作它们。 JavaBean 自省机制是 JavaBeans 规范的一部分,允许程序在运行时来分析 Ja
SpringSecurity自定义AuthenticationSuccessHandler不起作用无效被忽略,设置successHandler无效,successhandler不执行
登录时,自定义登录成功的handler不会执行,已经在security中配置了处理器,代码如下 handler security配置 原因是使用了自定义的handler,就不要设置跳转默认成功页了 参考java - Spring boot AuthenticationSuccessHandler ignore - Stack Overflow Your is overriden by de
20230628 java.net.http.HttpResponse
介绍 java.net.http.HttpResponse public interface HttpResponse API public uri URI request HttpRequest statusCode 状态码 version HTTP 版本 headers HTTP Header 信息 body Body previousR
20230628 java.net.http.HttpRequest
介绍 java.net.http.HttpRequest public abstract class HttpRequest API Builder uri expectContinue 请求服务器在发送正文之前确认请求 默认禁用 如果启用,则在客户端发送请求正文之前,请求服务器发送错误响应或100 Continue响应。这意味着在收到此临时响应之前,不会调用该请求的请求发布者。
js模板引擎4--构造渲染函数
在上一篇中我们已经将模板解析为了一条条的js语句,那么只要把这些语句连起来,构造一个可执行函数,然后传入模板数据,就可以得到填充过数据的html片段。 用例子测试一下: 生成的渲染函数如下(没有格式化): 传入数据试试: 输出结果(格式化后): 至此,我们已经初步实现了js模板引擎的功能。 把前面的代码优化一下: 遗留问题 前面提到的问题有两个: 模板内声明的变量会被作为$DATA的
Java中的ThreadLocal详解
一、ThreadLocal简介 多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步措施才能保证线程安全性。ThreadLocal是除了加锁这种同步方式之外的一种保证一种规避多线程访问出现线程不安全的方法,当我们在创建一个变量后,如果每个线程对其进行访问的时候访问的都是线程自己
Java实现学生信息管理系统读取Excel数据
场景案例: 假设有一个学生信息管理系统,需要从Excel文件中读取学生的姓名、年龄、成绩等数据,并将这些数据存储到系统中进行进一步的处理和管理。 具体来说,在数据导入/导出系统中调用这个函数,并传入Excel文件作为参数,就可以得到包含学生信息的结果。然后,可以对这个结果进行进一步的处理,比如将学生数据存储到数据库中或进行其他业务逻辑操作。 在Java开发的学生信息管理
全网最详细SpringCloud-实用篇
SpringCloud-实用篇 学习安排 技术分类 1.微服务 ①架构对比 架构 单体架构 分布式架构 描述 将业务的所有功能集中在一个项目中开发,打成一个包部署。 根据业务功能对系统做拆分,每个业务功能模块作为独立项目开发。 图示 优点 架构简单、部署成本低 降低服务耦合、有利于服务升级和拓展 缺点 耦合度高(维护困难、升级困难) 服务调用关系错
Java8 使用 stream().filter()过滤List对象(查找符合条件的对象集合)
内容简介 本文主要说明在Java8及以上版本中,使用stream().filter()来过滤一个List对象,查找符合条件的对象集合。 List对象类(StudentInfo) 测试数据 输出Students列表 输出结果如下图: 使用filter()过滤List 结果如下图:
【Kafka3.0】broker、producer、consumer详解
目录1. 什么是kafka?1.1 消息队列应用场景1.2 消息队列的两种模式2. kafka基础架构🚩3. kafka集群搭建安装环境准备修改server.properties配置环境变量zk集群启停脚本kafka启停脚本4. kafka命令行操作主题命令行【topic】生产者命令行【producer】消费者命令行【consumer】5. kafka生产者生产者消息发送流程发送原理普通的异步发送
docker中安装jdk
jdk(全称为Java Development Kit) 是SunMicrosystems针对Java开发员的产品,它是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。 JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Ja
敏感信息加密打印日志
原有切面形式对controller进来的请求记录日志,但对于一些敏感信息,比如密码、手机号打印在日志中存在泄露风险 由于应用中已经使用了AOP的方式记录请求日志,所以直接从切面判断并且将内容转密文打印。为了更加方便、灵活的设置需要遮掩的字段内容,采用注解的方式将需要遮掩的字段标记,在切面中进行识别处理 需要处理字段标记注解 应用拦截请求日志代码 demo 效果
SpringBoot 支持 超大上G,多附件上传
前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方式来学习文件上传的原理与实践。该博客重在实践。 一. Http协议原理简介 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式
java 基础 -- 泛型(Generics)
泛型(Generics) 泛型通过在编译时检测到更多的代码 bug 从而使你的代码更加稳定。 泛型的作用 概括地说,泛型支持类型(类和接口)在定义类,接口和方法时作为参数。就像在方法声明中使用的形式参数(formal parameters),类型参数提供了一种输入可以不同但代码可以重用的方式。所不同的是,形式参数的输入是值,类型参数输入的是类型参数。 使用泛型对比非泛型代码有很多好处: 在编译时
mall :rabbit项目源码解析
目录一、mall开源项目1.1 来源1.2 项目转移1.3 项目克隆二、RabbitMQ 消息中间件2.1 rabbit简介2.2 分布式后端项目的使用流程2.3 分布式后端项目的使用场景三、安装RabbitMQ(Win10)3.1安装erLang语言,配置环境变量3.2 安装RabbitMQ服务端3.3 测试安装效果四、源码解析4.1 集成与配置4.1.1 导入依赖4.1.2 添加配置4.1.3
网页全终端h5浏览器视频流解决方案RTSP/FLV/HLS
背景 项目上需要基于视频巡检,在线勘查填写定制表单,减少巡检成本。 巡检根据不同的筛选项精准获取视频播放地址,查看视频,根据直播在线情况,验收现场。 本文着重讲前端部分视频流展示解决方案。 调研 流媒体(streaming media)是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术与过程,此技术使得数据包得以像流水一样发送;如果不使用此技术,就必须在使用前
科幻速递:核废水排海后十年
注:本故事纯属虚构,如有雷同纯属巧合。 核能大国崛起 1983 年,对于曾经在世界核武大战中唯一存活的 R 国来说,他们认为自身已经具有了核感染的强大免疫能力和核意外发生时的紧急处理能力。为了保持世界前三大经济体之一的宝座,决定常规化创造和使用核能,举国向核能发展。但是基于当前已有的技术,并不能完全消除核废料对地球环境的损害。 逐渐发现疑似变异的生物 1990 年始,在东海、龙子洞海底火山群、南
项目总结 通用 CRUD 前端项目 stateful-backend-frontend
前言 学习程序员鱼皮API 开放平台项目开源项目:https://github.com/liyupi/yuapi-backend-public 通过开源项目中给出的前端技术栈,倒推 stateful-backend 的前端实现 前端技术选型 React 18 Ant Design Pro 5.x 脚手架 Ant Design & Procomponents 组件库 Umi 4 前端框架
GitHub Actions CI/CD 工作流实战
1. 什么是 GitHub Actions 与 workflow ? GitHub Actions 是 GitHub 提供的一种持续集成(CI)和持续部署(CD)的工具,用于自动化软件开发过程中的各种任务和工作流。GitHub Action Workflow 是一组定义在存储库中的自动化任务,可以根据不同的事件(例如代码推送、拉取请求、问题创建等)触发执行。 每个 GitHub Action Wo
进程调度的原理和算法探析
进程的调度 进程的调度是由操作系统完成的,其目的是为了在一个进程占用CPU执行自己的操作后,选择下一个进程来占用CPU。调度发生的原因很简单,每个进程都希望能够占用CPU进行工作。因此,调度程序会进行上下文切换,并选择一个进程来执行其功能。 那么,什么时候进行调度呢?调度的原则又是什么呢? 什么时候调度进程 进程的调度可以理解为在进程的状态发生变化时进行。以下是一些进程状态的示例: 就绪态 -&
js 函数的保护函数 防止toString检测
js 函数的保护函数 防止toString检测 let catvm = {}; (() => { "use strict"; const $toString = Function.toString; const myFunction_toString_symbol = Symbol('('.concat('', ')_', (Math.random() + '').
JS判断变量是否存在或已定义
前言:因需求修改了公共文件,导致引入公共文件的部分页面因未引入来源js会报错,所以需要在公共文件中增加判断变量是否存在。 为了确保代码的可靠性,应该对变量的定义进行检查,从而避免代码在运行时执行错误或不可预期的错误。 一、typeof 二、使用try/catch 三、使用in运算符 in运算符被用来检测对象是否包含某个属性,如果变量未定义,则in运算符将返回false。 四、使用
vue2.0截图 html2canvas or dom-to-image 并解决openlayers截图空白问题
1.版本 "dom-to-image": "^2.6.0", // or "html2canvas": "^1.4.1", 2.引入 3.dom结构 4.调用 or 5.base64转blob js base64转blob 6.解决openlayers截图空白问题 引入天地图图层导致空白问题解决方式:
摸鱼神器:不藏了,程序员上班看小说工具,拿去吧不谢。
前言 大家好,我是一名工作快10年,但练习摸鱼时长两年半的Java程序员。 我会唱,跳,rap,还会打篮球,特长是当小黑子。 这两年半我一直用一款摸鱼神器来看小说,领导站我背后都发现不了。 今天,我不藏了,分享给大家。 千万要看到最后,我的摸鱼思路绝对会打开你的编程新思维。 正文 1、效果 这款工具在Windows和mac下都很友好,看小说大体效果是这样。 mac To
算法刷题:递归、栈、队列(8.29,持续更)
汉诺塔问题 最小栈 目录最小栈额外空间(O(N))辅助栈解法双值域节点链表解法无额外空间差分解法 最小栈 额外空间(O(N)) 辅助栈解法 双值域节点链表解法 无额外空间 差分解法