Java
java练习:使用Stream
package com.example.ss_0203_array.test.test_0830; import java.util.ArrayList; import java.util.Collections; import java.util.stream.Stream; public class test3 { public static void main(String[]
【校招VIP】测试计划之测试分类
考点介绍: 本专题主要介绍了软件测试在不同场景下的划分。并且讲解了基于软件测试的划分衍生出的常见面试题。 测试分类也是校招里面考察的一个重点。 一、考点试题 1.软件测试按开发阶段划分为哪几类?你认为这几类中最重要的是哪个? 解答:(1)根据开发阶段分为5类: 分别为:单元测试、集成测试、系统测试、验收测试、回归测试...... 2.谈谈α和β测试是什么,两者区别是什么? 解答:(1)α测试: 首
Vue3中watch的用法
在Vue3中,watch 选项的用法与之前版本的Vue略有不同。Vue3中使用了Composition API,在组合式API中,watch 选项被替换成了一个新的函数 watchEffect 和一个新的函数 watch。下面是关于 watchEffect 和 watch 的用法说明: watch 和watchEffect watchEffect 函数: watchEffec
【深度思考】如何优雅的实现脱敏?
最近做了个脱敏的需求,要对系统中的敏感信息,如手机号、车牌号、身份证号、银行卡号等进行脱敏显示。 效果类似下面这样: 简单来说,就是对敏感信息中的某几位进行掩码显示,常见的一般是使用*。 本篇文章就来讲解下在项目中该如何优雅的实现脱敏。 1. 工具类 首先,需要明确下脱敏规则: 手机号 显示前3位和后4位,中间4位脱敏,如182****6791。 车牌号 显示前3位和后1位,其余位
【校招VIP】java语言考点之synchronized和volatile
考点介绍: synchronized和volatile两个关键字也是校招常考点之一。volatile可以禁止进行指令重排。synchronized可作用于一段代码或方法,既可以保证可见性,又能够保证原子性...... 一、考点题目 1、 Lock与synchronized的区别 解答:ReentrantLock 拥有Synchronized
Java NIO 图解 Netty 服务端启动的过程
一.启动概述 了解整体Netty常用的核心组件后,并且对比了传统IO模式。在对比过程中,找到了传统IO对应Netty中是如何实现的。最后我们了解到在netty中常用的那些组件。 本文在了解下这些核心组件的前提下,进一步了解组件如何在整个服务器启动过程如何被创建,如何组件之间配合来使用。首先也是先了解下大概服务端的启动过程,并且在了解过程中我们带着自己的问题去在学习过程中探寻答案。 1.1 启动概
国产工控SCADA组态软件哪个比较好用?
近些年,我国工业自动控制系统装置行业在市场需求增加的利好下发展迅速。组态软件已经逐渐“进化”,可以理解为当下最流行的“低代码可视化软件”,能够以搭积木的方式快速开发。 比如工业物联网,从单个设备的组态监控,到边缘网关组态监控和数据上传,到物联网云平台,再到数据分析和展示,每一个环节都离不开组态和快速开发。 随着信息技术和互联网技术的发展,工业互联网逐渐成
树莓派wiringPi库详解
树莓派wiringPi库详解 wiringPi是一个很棒的树莓派IO控制库,使用C语言开发,提供了丰富的接口:GPIO控制,中断,多线程,等等。java 的pi4j项目也是基于wiringPi的,我最近也在看源代码,到时候整理好了会放出来的。 下面开始wiringPi之旅吧! 安装 进入 wiringPi的github (https://git.drog
kafka安装以及参数
kafka 安装JDK 查看版本 kafka是分布式的,需要多台机器,并且保证机器之间是免密登录同时需要用zookeeper集群负责管理。 1、kafka版本选择,从官网下载即可,我这使用的是kafka_2.12-2.70.tgz 2、brokers 节点分配,注意一定是奇数台节点 3、解压 4、配置server.properties vim /home/kafka_
mybatis一对一接连查询
数据库中表一对一连接使用主键的形式连接,可以使用数据库内的连接数据库语言为:select *from user inner join user_info on user.id=user_info.id where id=#{id} 但只有查询出来的日志只能看见作为主类的字段信息,无法看见user_info的字段信息,需要我们将user_info的属性封装起来作为一个属性放入user的主类中。 &
SQL注入与JDBC PreparedStatement类
在《Java Tutorial》中是这样介绍JDBC PreparedStatement类对SQL注入的防止。 PreparedStatement最重要的优点是它们有助于防止SQL注入攻击。SQL注入是一种恶意利用在SQL语句中使用客户端提供的数据的应用程序的技术。攻击者通过提供特制的字符串输入来欺骗SQL引擎执行非预期命令,从而获得对数据库的未经授权的访问权限以查看或操作受限制的数据。SQL注
Chrome 手机端网页如何使用开发者模式
chrome 手机端网页如何调试 在Chrome手机端,你可以使用Chrome开发者工具来调试网页。下面是一些步骤: 首先,确保你的手机已经开启开发者模式。打开USB调试功能或可以通过USB连接或无线连接。 在电脑上打开Chrome浏览器,并输入地址 "chrome://inspect"。 在浏览器中的 "Devices" 下方,你应该能够找到连接的手机设备。确保已勾选 "Discov
js原生cookie的使用
原生cookie的使用通过document.cookie() 新增cookie document.cookie(name=value; path="/") 设置Cookie时,可以指定以下参数: name:Cookie的名称,是一个字符串。 value:Cookie的值,也是一个字符串。 expires:Cookie的过期时间,是一个Date对象或者是一个表示日期的字符串。当指定了一个
Eventsource
1、背景 当我使用chatGpt时,服务端可以实时像我推送答案。起初以为是用了websocket技术,但是后来发现是用了Eventsource 2、什么是Eventsource 不知道大家有没有见过 Content-Type:text/event-stream 的请求头,这是 HTML5 中的 EventSource 是一项强大的 API,通过服务器推送实现实时通信。 与 WebSocket 相比
Prototype Pattern —— Creational Class
Background knowledge 在Java中,Cloneable 接口是一个标记接口(Marker Interface),用于指示实现了该接口的类可以进行克隆操作。它并没有定义任何方法,只是起到一个标记的作用。 要实现克隆功能,需要满足以下两个条件: 类实现了 Cloneable 接口。 在类中重写 clone() 方法。 What is Prototype Pattern 原型模式
使用 IDEA 远程 Debug 调试
使用IDEA远程调试(一篇懂所有)背景有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 配置远程debug的服务,以springboot微服务为例(springcloud的应该差不多,我没研究过)。首先,启动springboot需要加上特定的参数。 1、IDEA设置高低版本的 IDEA 的设置可能界面有
flume安装配置与使用
1.安装包下载路径 2.安装环境 3.解压gz压缩包到3个机器节点 4.配置flume-env.sh 进入flume的conf目录下,复制flume-env.sh.template为flume-env.sh,并修改 添加JAVA_HOME环境变量 5.查看是否配置成功 6.测试flume 6.1新建一个flume-conf.properties文件 注:a1.sources.r1.
SpringBoot集成Shiro组件
项目使用的springboot 版本是 2.7.15 全部 pom.xml View Code 注意添加 如下依赖,在上面 已经 有了 DefaultConfig.java 配置 登录控制器 PassportController.java 测试业务控制器 JwtFilter.java 过滤器 普通过滤器 备注
SynThreadPool线程
SynThreadPool.addAuthorityChangeSynRunnable( new ManagerLogAccessSynRunnable(iManagerAccessLogService, logJsonObject)); package com.infosec.ztpdp.policycenter.thred; import java.util.Ar
2.x mybatis 使用sharedingJdbc分表组件时间类型LocalDateTime或LocalDate,把Timestamp转成LocalDateTime或LocalDate
可能发生的报错信息: 解决方案: 1.组件版本升级 mybatis-spring-boot-starter 升级至->2.1.1 com.alibaba.druid 升级至->1.2.1 mysql-connector-java 升级至->8.0.15; 2.编写 LocalDateTimeTypeHandler类 在自己项
了解 HarmonyOS
引言 在开始 HarmonyOS 开发之前,了解其背景、特点和架构是非常重要的。本章将为你提供一个全面的 HarmonyOS 概览。 目录 什么是 HarmonyOS HarmonyOS 的发展历程 HarmonyOS 的特点 HarmonyOS 的架构 HarmonyOS 与其他操作系统的比较 1. 什么是 HarmonyOS HarmonyOS 是华
破局主键重复问题的坎坷路
伴随着业务的不断发展,逐渐由单库单表向分库分表进行发展。在这个过程中不可避免的一个问题是确保主键要的唯一性,以便于后续的数据聚合、分析等等场景的使用。在进行分库分表的解决方案中有多种技术选型,大概分为两大类客户端分库分表、服务端分库分表。例如 Sharding-JDBC、ShardingSphere、 MyCat、 ShardingSphere-Proxy、Jproxy(京东内部已弃用)等等。 在
HTTP协议各种Content-Type对应的文件类型
Content-Type File-Type application/andrew-inset ez application/mac-binhex40 hqx application/mac-compactpro cpt application/mathml+xml mathml application/msword doc application/octet-s
Parameterized 中各方法的执行顺序
参数化测试(Parameterized Tests),即多次执行同一个测试方法,每次使用不同的参数。这里debug一个简单的例子来确定类中各方法的执行顺序。 执行顺序 附简单例子
has unsigned entries - org/bouncycastle/LICENSE.class
报错信息如下: cn.hutool.crypto.CryptoException: SecurityException: JCE cannot authenticate the provider BC at cn.hutool.crypto.SecureUtil.createCipher(SecureUtil.java:1017) at cn.hutool.crypto.CipherWrapper