Java

挑战前端基础120题--垃圾回收机制?

1. 什么是垃圾回收机制? 简称GC,内存管理自动运行,找到不被使用的变量,进行垃圾回收 释放内存; 补充点:JS变量分为:全局变量 & 局部变量; 全局变量的生命周期是一直存在直到页面被销毁。局部变量一般定义在函数内部,他的生命周期从函数被调用开始,直到函数运行结束。等到局部变量不被使用,就会被释放从而被垃圾回收; 2.为什么要进行垃圾回收? 为了防止内存泄漏,造成程序卡顿和奔溃;一般分

mysql 货币类型 选择

结论:我们的选择是int 和 bigint ,以分为单位来存; 一个外国人的视频 讲解了,我直接按重点截图了,连接地址:【在MySQL中存储货币的正确方式:不要使用 float 或 double ,要用 decimal 或 integer/bigint !】https://www.bilibili.com/video/BV15N4y147YE?vd_source=025a1c967fa95b3dc

数组处理,去重&合并相同key的值

背景: 上游返回的 skuIdList 存在相同的Id,skuCount数组与skuID一一对应 处理结果:skuIdList 去重,对应的count总和要加起来,对应的 originalPriceList 和 subtotalPriceList 不变代码: import groovy.json.JsonSlurper def skuIdList = new JsonSlurper().parse

SpringMVC学习总结 + 【手写SpringMVC底层机制核心】

SpringMVC笔记 SpringMVC介绍 基本介绍 SpringMVC 是WEB 层框架, 接管了Web 层组件, 支持MVC 的开发模式/开发架构 SpringMVC 通过注解,让POJO 成为控制器,不需要继承类或者实现接口 SpringMVC 采用低耦合的组件设计方式,具有更好扩展和灵活性. 支持REST 格式的URL 请求. Spring MVC和Spring之间的关系 Spr

dbt is_incremental macro 简单说明

is_incremental macro 实际上就是一个判断,以下是实现的简单说明,官方文档也有说明 参考处理 逻辑 模型必须存在(数据库中),目的表也存在(数据库中),full-refresh 没有传递,模型配置了materialized='incremental' macro 实现 结合上边的逻辑发现是可以对应上的 {% macro is_incremental

MyBatis源码之前言—JDBC编码存在的问题和Mybatis的介绍

MyBatis源码之前言—JDBC编码存在的问题和Mybatis的介绍 为了方便操作,我们在sjdwz_test数据库下建立一张表: 数据如下: 实体类如下: JDBC操作数据库 我们先来回顾一下JDBC操作数据库的代码: 运行截图如下: 这段代码主要有如下四点问题: 结果集解析复杂,列名硬编码,sql变化导致解析代码变化,系统不易维护; sql语句硬编码,数据库配置硬编码,难以维护;

深入理解高级加密标准(Advanced Encryption Standard)

title: 深入理解高级加密标准(Advanced Encryption Standard) date: 2024/4/23 20:04:36 updated: 2024/4/23 20:04:36 tags: AES概述 加密原理 优势特点 算法详解 安全性 应用实践 案例分析 第一章:AES概述 AES的历史和背景 历史:  高级加密标准(Advanced Encryp

Flink生产问题记录

1.集群有2个flink版本,用application方式启动报错 Caused by: java.lang.ClassCastException: cannot assign instance of org.apache.commons.collections.map.LinkedMap to field org.apache.flink.streaming.connectors.kafka.F

挑战前端基础120题--JavaScript 中如何实现链式调用的函数?

一. 何为链式调用? 链式调用是一种简化过程的编码方式,使代码看起来更加简洁~它允许你通过在方法调用之间返回对象本身,从而连续地调用多个方法;比较常见的链式调用:jQuery, Promise等,通过多次书写.或()操作来调用。 二. 实现的原理? 每次执行完成后返回自己/新的自己,这样可以确保后续的方法仍然在当前环境下执行; 三. 如何实现? let p = { then() {

151. 反转字符串中的单词

题目链接:151. 反转字符串中的单词 这题主要是熟悉java一些库的调用,先放代码: 里面涉及到的三个方法,下边介绍。 1. trim() 方法用于删除字符串的头尾空白符 语法 返回值 删除头尾空白符的字符串。 实例 执行结果为: 原始值 :    www.runoob.com     删除头尾空白 :w

子类拥有父类对象所有的属性和方法,但无法访问

原链接 前言 JavaGuide中关于继承有如下描述: 子类拥有父类对象所有的属性和方法(包括私有属性和私有方法),但是父类中的私有属性和方法子类是无法访问,只是拥有。 尝试验证这一观点。 对象初始化 首先从对象初始化开始思考,一般继承某个父类的子类对象初始化时是按照以下顺序: 父类的静态变量和常量以及父类的静态代码块 子类的静态变量和常量以及子类的静态代码块 父类的变量赋默认值和父类代码块

@ComponentScan注解的实现,Spring扫描包的过程

相信接触过spring做开发的小伙伴们一定使用过@ComponentScan注解 @ComponentScan指定basePackage,将包下的类按照一定规则注册成Bean。 但是这个注解的其他参数,比如excludeFilters、includeFilters以及底层扫描的实现你有没有了解过? 1. 默认的扫描规则 当我们使用@ComponentScan没有指定excludeFilters、

JTCR-输入/输出:探究 java.io-19

I/O 流是一个逻辑实体,要么产生信息,要么消耗信息。 File File 类直接处理文件和文件系统,它描述文件自身的性质,获得、处理关联的磁盘文件。 Java 中,目录也作为 File 看待,只不过有一个额外的 list() 方法。构造器如下 dirPath 表示文件路径名,fileName 表示文件名或子目录名,dirObj 是一个表示目录的 File 对象,uriObj 是用于描述文件的

2024年4月23日第四十篇

今天主要完成了jwt令牌对用户的加密,使得数据库系统的安全性得到了提升, 使用这个来对用户进行加密,使用 加密,在对象上加上 然后在请求时调用 封装完成

72. 编辑距离(leetcode)

https://leetcode.cn/problems/edit-distance/description/?envType=study-plan-v2&envId=top-100-liked 这是一个难题,关于序列DP的,官方的题解较为难懂,这里有一位前辈解释的很好 这里的状态定义是: dp[i][j]表示word1的前i个字母,转换成 word2的前j个字母的最小步数 clas

异常机制(Exception)-(未完待续)

什么是异常 认识异常 实际生活中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求,你的程序要打开某个文件,这个文件可能不存在或者文件格式不对,你要读取数据集库的数据,数据可能是空的等等。我们的程序在跑着,内存或硬盘可能满了等等…… 软件程序在运行过程中,非常可能遇到刚刚提到的这些异常问题,我们叫异常,英文是:Exception。意思是例外,或者叫异常。我们要做的是

vis.js动态3d图形

代码案例 效果图 点击查看详情

MyBatis所有的jdbcType类型对应的javaType类型

来源:https://www.jb51.net/program/287517rew.htmMyBatis处理MySQL字段类型date与datetime1) DATETIME显示格式:yyyy-MM-dd HH:mm:ss时间范围:[ '1000-01-01 00:00:00'到'9999-12-31 23:59:59'] 2) DATE显示格式:yyyy-MM-dd时间范围:['1000-01-

并发编程(CountdownLatch)

CountDownLatch 是多线程控制的一种工具,它被称为 门阀、计数器或者 闭锁。这个工具经常用来用来协调多个线程之间的同步,或者说起到线程之间的通信 CountDownLatch 能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。它相当于是一个计数器,这个计数器的初始值就是线程的数量,每当一个任务完成后,计数器的值就会减一,当计数器的值为 0 时,表示所有的线程都已经任务了,然

24-自定义持久层框架

1. JDBC 的使用问题 代码示例: 下面剖开代码,逐个分析其中问题: (1)加载驱动,获取连接 存在问题1:数据库配置信息存在硬编码问题。 优化思路:使用配置文件! 存在问题2:频繁创建、释放数据库连接问题。 优化思路:使用数据连接池! (2)定义sql、设置参数、执行查询 存在问题3:SQL语句、设置参数、获取结果集参数均存在硬编码问题 。 优化思路:使用配置文件! (3)遍

Blob数据转String

import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class Test {  &nbs

vis.js表面值3d图形

代码案例 效果图 点击查看详情

Dynamics 365(三)WEB资源使用

在Dynamics 365 可以通过WEB资源 来对按钮/表单进行自定义控制 一、添加图片/网页/脚本 通过解决方案->Web资源->新增 进行  二、网页的使用 选择需要的实体窗体,插入Web资源 三、按钮配置 通过此页面>自定义->导入解决方案  可以看到有Home, Form和SubGri不同的按钮显示,可以操作标红区域进行按钮的添加

springboot~mybatis-plus中使用TypeHandler做类型映射

mybatis-plus中,如果数据表字段类型与java实体字段类型不一样,这时就需要做类型映射与转换了,我们一般可以实现TypeHandler接口,或者继承抽象类BaseTypeHandler,我们下面举例来说明一下它的使用方法。 场景 数据表里字段是varchar,java里是List集合,例如:我的爱好标签 数据表里字段是varchar,java里是个Map对象,例如:我曾经居住过的地方

vis.js可动的3d图形

代码案例 效果图 点击查看详情

elementplus中标签页操作

操作包括关闭所有、关闭其他、向右关闭、向左关闭 页面代码 在标签页中添加删除和获取当前页面路径方法,删除在pinia获取数据,获取当前页面在tab-change会有回调参数获取值 在下拉菜单中判断标签是否可以进行不同类型删除 保持只有一个下拉菜单,在打开其他的页面将之前的删除掉 pinia中方法 全部方法

vis.js造型曲面3d图形

代码案例 效果图 点击查看详情

Java并发工具类之LongAdder原理总结

出处: Java并发工具类之LongAdder原理总结 LongAdder实现原理图                                           &nbsp

如何画数据库ER图

ER图基本概念 ER图分为实体、属性、关系三个核心部分。在ER图中,实体是长方形,属性是椭圆形,关系为菱形。 实体(entity): 即数据模型中的数据对象(即数据表),用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等。 实体还会细分为弱实体和复合实体,一个实体必须依赖于另一个实体存在,那么前者

docker-compose 安装部署ElasticSearch 和 Kibana

项目需要搭建es环境,踩了一些坑,记录下 首选还是通过docker搭建,而通过docker最佳的部署方式就是docker compose 1.docker-compose.yml  经过权衡,我觉得es和kibana的配置文件都没必要映射出来,常用的参数在docker-compose.yml配置文件里指定即可,其他用默认的配置文件完全够用 这样做的好处就是不用操心配置文件的问题,以

<<  <  387  388  389  390  391  392  393  394  395  396  397  >  >>