Java

redis核心

一、Redis是什么? Redis是一个key-value存储系统,它支持存储的value类型相对更多,包括string、list、set、zset(sorted set --有序集合)和hash。 二、Redis都有哪些使用场景? Redis是基于内存的nosql数据库,可以通过新建线程的形式进行持久化,不影响Redis单线程的读写操作 通过list取最新的N条数据 模拟类似于token这种需

内存分配与回收策略

内存分配与回收策略 对象的内存分配,就是在堆上分配(也可能经过 JIT 编译后被拆散为标量类型并间接在栈上分配),对象主要分配在新生代的 Eden 区上,少数情况下可能直接分配在老年代,分配规则不固定,取决于当前使用的垃圾收集器组合以及相关的参数配置。 以下列举几条最普遍的内存分配规则,供大家学习。 对象优先在 Eden 分配 大多数情况下,对象在新生代 Eden 区中分配。当 Eden 区没有足

无意间做了个 web 版的 JVM 监控端前后端分离 React+Spring Boot

本来就是为了更多的了解 JMX,第一步就想把所有的 MBean 和属性都展示出来,开始在控制台输出,但是效果不好,内容太多太长,不够直观,然后就加了个 web 端的树形结构。然后做着做着突然发现,再稍微改改就能当个 web 版的简易监控端用了。 此工具只在 hotspot JVM 8 环境下测试过。可支持查看本地 JVM 和 远程 JVM 实时监控。 前端采用 React 16 + Antd +

JVM 性能调优

JVM 性能调优 在高性能硬件上部署程序,目前主要有两种方式: 通过 64 位 JDK 来使用大内存; 使用若干个 32 位虚拟机建立逻辑集群来利用硬件资源。 使用 64 位 JDK 管理大内存 堆内存变大后,虽然垃圾收集的频率减少了,但每次垃圾回收的时间变长。 如果堆内存为 14 G,那么每次 Full GC 将长达数十秒。如果 Full GC 频繁发生,那么对于一个网站来说是无法忍受的。

用颜色标记法,实现树的前中后序遍历

使用颜色标记法,实现树的前中后序遍历 package algorithm; import java.util.*; import java.util.function.BiConsumer; /** * 树的前中后序遍历 - 颜色标记法 */ public class TreeTraversal { // white - 未访问过的节点 private static fin

PTA4,5及期中总结

1,前言 PTA4,5还是继续之前的菜单计价程序,只是在1,2,3的基础上加以完善,增加了更多的新的功能,期中考试则是在测试考核面向对象及接口,继承和多态以及抽象类等等知识点、 2,设计与分析  菜单计价程序-4 类图      第一次的课程成绩统计程序较为直观,题目要求中直接给了相关的类图,以及需要构造的相关类,在按照土题目的相关要求即可较为完

1253. 重构 2 行二进制矩阵

1253. 重构 2 行二进制矩阵 题目 题解 使用贪心算法。 首先,一个肯定的点是: 当colsum的元素为2时,相同下标的两个二进制数组元素必须为1 当colsum的元素为0时,相同下标的两个二进制数组元素必须为0 如此一来,我们只需要决策,当colsum元素为1时,哪个数组的元素为1即可。而这一点的判断,则可以取决于对upper的判断,我们只需贪心地先试图填满upper数组,那么low

动态规划之多重背包

动态规划 之多重背包 问题 1.  问题描述及分析 动态规划是一种解决复杂问题的方法, 它将一个大问题分解为若干个子问题,通过求解子问题,从而得到原问题的最优解。动态规划的核心思想是避免重复计算,利用已有的结果进行状态转移。 背包问题是一类经典的动态规划问题, 它描述了如何在给定的背包容量和若干个物品的重量和价值的情况下,选择物品放入背包,使得物品的总价值最大。背包问题有多种变形,其中一

狂神javaday1:typora

一级标题 hello world hello world hello world hello world! 二级标题 引用 ???来自祖安的问候 分割线 超链接 去b站 列表 A B C A b c 表格 名字 性别 生日 张三 男 1997.7.1 代码

BabylonJS教程_编程入门自学教程_菜鸟教程-免费教程分享

教程简介 babylon.js是一款强大、漂亮、简单、开放的游戏和渲染引擎,以 Javascript 框架发布,用于构建HTML5、WebGL、WebVR和Web Audio的3D游戏和体验, 除了游戏用来在页面实现一些3D场景也是没问题的。 BabylonJS入门教程 - 从基本概念开始,简单易学地了解BabylonJS,其中包括简介,环境设置,概述,基本元素,材料,动画,相机,灯光,参数形状,

什么是Ajax?

一、Ajax简介 Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指⼀种创建交互式⽹⻚应⽤的⽹⻚开发技术。 Ajax 是⼀种⽤于创建快速动态⽹⻚的技术。 Ajax 是⼀种在⽆需重新加载整个⽹⻚的情况下,能够更新部分⽹⻚的技术。 通过在后台与服务器进⾏少量数据交换,Ajax 可以使⽹⻚实现异步更新。这意味着可以在不重新加载

JS解密为何会受到广大站长的欢迎

要了解JS解密为何会受到广大站长的欢迎,首先我们得从JS加密这块说起,为了保护自己的代码不被复制,所以大部分程序员都会对自己的代码进行各种加密,这个时候JS解密就成为了必不可少的工具了。 在了解JS解密之前一定要熟悉JS加密的原理,这样解密起来也就事半功倍了。 常用的js加密有哪些JavaScript的原生函数escape()和unescape()var code = 'console.log("

阿里云 ACK Pod重启:pod was OOM killed

原因为:limits和requests的值设定为一样的了, pod request达到了limit限制,kubelet会统计到request+缓存就超限,然后触发自动重启 resources: limits: memory: 4Gi requests: memory: 4Gi 调整为

前端知识点整理(二)——css

一、基本用法 1、css语法 选择器:要修饰的对象(东西) 属性名:修饰对象的哪一个属性(样式) 属性值:样式的取值 2、CSS应用方式 也称为CSS引用方式,有三种方式:内部样式、行内样式、外部样式 2.1 内部样式 也称为内嵌样式,在页面头部通过style标签定义 对当前页面中所有符合样式选择器的标签都起作用 2.2 行内样式 也称为嵌入样式,使用HTML标签的style属性定义 只对

java项目启动内存配置或启动日志,杀死进程

nohup java -Xloggc:./wse-gc-%t.log  -Xms512M -Xmx1024M   -jar zdhyw20230410.jar > nohup.out  2>&1 & nohup java -jar -Xms512M -Xmx1024M  zdhyw20230410.jar > no

基于SpringMVC搭建WebSocker

SpringMVC的搭建请参考我以前的文章 基于XML搭建SpringMVC项目 基于Spring注解搭建SpringMVC项目(推荐) 1.添加pom依赖 本文使用最新的Spring6,一些依赖的问题需要自行解决 2.添加Socket Handler,用于处理Socker消息的请求和发送。 3.添加Socket Interceptor,用于拦截握手前和握手后的一些操作 4.添加WebS

Java 必会10大的经典算法

Java 必会10大的经典算法   https://github.com/hustcc/JS-Sorting-Algorithm 冒泡排序:思路-两层循环;外层循环控制比较的轮数,内层循环控制每一轮的比较和交换。在每一轮中,通过比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置。 经过多轮的比较和交换,最大(或最小)的元素会逐渐“冒泡”到数组的末尾

uniapp 引入非模块化js

uniapp开发的H5,引入第三方的非模块化.js文件,如self.js,就是纯js文件,没有module.exports暴露出来成为一个对象, 这种放在common文件夹下,引入会提示找不到,这时候应该把该 self.js放在static文件夹下, uniapp发行H5时static文件下的内容不编译,在并在入口.html文件中引入全局js,在.vue页面中直接引用就行 1、self.js:

JavaScript高级学习

JavaScript 进阶 学习作用域、变量提升、闭包等语言特征,加深对 JavaScript 的理解,掌握变量赋值、函数声明的简洁语法,降低代码的冗余度。 理解作用域对程序执行的影响 能够分析程序执行的作用域范围 理解闭包本质,利用闭包创建隔离作用域 了解什么变量提升及函数提升 掌握箭头函数、解析剩余参数等简洁语法 1、作用域 了解作用域对程序执行的影响及作用域链的查找机制,使用闭包函

高考成绩都出来了,你的秒杀系统如何了?

大家好,我是冰河~~ 高考成绩都出来了,咱的《Seckill秒杀系统》专栏如何了?今天给大家交个“期中作业”吧。 总体情况 截止到目前,秒杀系统从需求立项、架构设计、技术选型、环境搭建、编码实现、极致缓存设计到扣减库存防超卖设计,已经完成16个大的篇章47篇文章。 这是不是更新完了?那肯定没啊!虽然现在的秒杀系统已经实现了最核心的功能,但是还不是我理想中的样子,我想要大厂技术真正落地的秒杀系统。

rollup 打包按需引入

  一辈子说长不长,说短不短,努力做好两件事:第一件事爱生活,爱身边的人,爱自己;第二件事是好好学习,好好工作,实现自己的人生价值观,而不仅仅是为了赚钱

mongodb基础操作

#查看数据库show dbs; #创建数据库use user_image; #创建集合db.createCollection("user_images") #添加内容db.user_images.insert({"id":1,"val":"JVMJava虚拟机"}) #查询集合db.user_images.find(); #查看当前数据库集合show collections #查看数据表show

ERP项目之登陆新增修改逻辑思路写法

  package com.itheima.reggie.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.i

浅谈SpringSecurity与CVE-2023-22602

一、前言   前段时间Apache报告了CVE-2023-22602,由于 1.11.0 及之前版本的 Shiro 只兼容 Spring 的ant-style路径匹配模式(pattern matching),且 2.6 及之后版本的 Spring Boot 将 Spring MVC 处理请求的路径匹配模式从AntPathMatcher更改为了PathPatternParser,当 1.11.0 及

leetcode 19. 删除链表的倒数第 N 个结点

链表问题,需要注意一下是倒着数还是正着数,和头结点会不会被删除即可

js中的解构赋值

JavaScript的解构赋值语句是一种方便的语法,用于从数组或对象中提取值,并将它们赋给变量。它可以让你以一种简洁的方式从复杂的数据结构中提取数据。 数组的解构赋值 例如,假设有一个数组[1, 2, 3],你可以使用解构赋值语句将数组中的值分别赋给变量: 通过数组的解构赋值,可以实现变量的数据交换: 多维数组的解构赋值: 需要注意的是多维数组的解构赋值,赋值号两边数组的层级要对

基于SpringBoot搭建WebSocker

1.添加pom依赖 2.添加Socket Handler,用于处理Socker消息的请求和发送。 3.添加Socket Interceptor,用于拦截握手前和握手后的一些操作 4.添加WebSocker配置类,用于指定路由与处理类及拦截器的映射关系 5.测试

记php使用wkhtmltopdf生成pdf文件

环境:centos7 + php7.3(thinkphp6) wkhtmltopdf: https://wkhtmltopdf.org/index.html ------------ 坑点: 1.linux系统 html生成的pdf中文乱码(解决方法参考:https://juejin.cn/post/7069749157329633311) 主要就是将windows中文字体复制到 /usr/sha

gulp学习

新建一个gulp.js 运行 gulp 一辈子说长不长,说短不短,努力做好两件事:第一件事爱生活,爱身边的人,爱自己;第二件事是好好学习,好好工作,实现自己的人生价值观,而不仅仅是为了赚钱

若依管理系统-岗位管理代码流程介绍

1 查询 查询的触发是点击菜单中的系统管理-岗位管理:  请求网址为:http://localhost/dev-api/system/post/list?pageNum=1&pageSize=10 1.1 前台代码  postindex.vue中调用的是getList方法,如下: // 查询参数queryParams: { pageNum: 1, pageS

<<  <  1027  1028  1029  1030  1031  1032  1033  1034  1035  1036  1037  >  >>