Java
初识Tomcat(win11 JDK17 Tomcat10 )
用途: 安装和使用: 1.下载安装JDK-17,并配置Java环境变量,如下图,在path变量中添加“%JAVA_HOME%bin”,下载链接:https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.exe ( sha256),在cmd中输入java -version验证java环境是否配置成功 &
非关系型数据库---MongoDB快速了解
MongoDB Notes MongoDB用起来-快速上手 理解MongoDB的业务场景、熟悉MongoDB的简介、特点和体系结构、数据类型等。 能够在Windows和Linux下安装和启动MongoDB、图形化管理界面Compass的安装使用 掌握MongoDB基本常用命令实现数据的CRUD 掌握MongoDB的索引类型、索引管理、执行计划 使用Spring Data MongoDB完成文章评
20240204打卡
当我发这篇博客时,代表我的项目已经做完了,接下来几天我将会对AndroidStudio项目做一些总结 当涉及到Android Studio和Kotlin的相关知识时,有很多方面可以讨论。以下是一些基本的概念和代码示例: 1. Kotlin基础 变量和常量 var myVariable: Int = 10 // 可变变量 val myConstant: Strin
java代码实现自动生成数据库表er图
最近有同事看到字节跳动产品设计文档里有数据库表er图。就想问问又没有现成的工具也给直接生成一个er图,经查找验证发现并没有。因为现在表关系都是用的逻辑外键而非物理外键约束的,所以像navicat等工具就算生成了也没有描述关系的连接线。那么为了满足需求,这边就略微出手写了个代码实现er关系的工具。(注意:这里只有后端部分,如需更直观使用请配合前端进行页面渲染) 一:首先获取数据库的所有表名和表的字段
setTimeout定时,但是退出页面还执行,如何解决
setTimeout定时,但是退出页面还执行,如何解决 定时器的使用需记得清清除 使用对象变量赋值执行 在处理 setTimeout 定时器时,如果用户在定时器触发之前离开页面,你可以使用 clearTimeout 方法来清除定时器,以确保定时器不会在页面关闭后继续执行。以下是一个示例,展示如何使用 clearTimeout 解决这个问题: 在上述示例中,我们首先声明了一个 timerId 变量
Linux---常用命令(一)
Linux基础常用命令 1、ip addr:查看由于启动服务器时未加载网卡,导致lP地址初始化失败 解决办法:修改网络初始化配置,设定网卡在系统启动时初始化 cd /:进入根目录 cd etc:进入etc目录 cd sysconfig:进入sysconfig目录 cd network-scripts :进入network-scripts vi ifcfg-ens33:编辑ifcfg-ens33文
CopyOnWriteArrayList
CopyOnWrite容器即写时复制的容器,当我们往⼀个容器中添加元素的时候,不直接往容器中添加,⽽是将当前容器进⾏copy,复制出来⼀个新的容器,然后向新容器中添加我们需要的元素,最后将原容器的引⽤指向新容器,这个过程中是使用ReentrantLock加锁了的。这样做的好处在于,我们可以在并发的场景下对容器进⾏"读操作"⽽不需要"加锁",从⽽达到读写分离的⽬的。 优点: CopyOnWriteA
基于binlog+Canal+Redis 数据一致性
基于binlog+Canal+Redis方案是一种解决分布式缓存和数据库之间数据一致性问题的方法,它通过MySQL的binlog和Canal机制,实现数据同步到Redis缓存,以保证数据一致性。 . MySQL主备复制原理 2. MySQL中binlog配置 3. Canal工作原理、安装、配置、使用 4
深入浅出Java多线程(七):重排序与Happens-Before
引言 大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第七篇内容:重排序与Happens-Before。大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!! 在上一篇文章中,我们简单提了一下重排序与Happens-Before。在这篇文章中我们将深入讲解一下重排序与Happens-Before,然后再结合Java内存模型一起学习。让大家对Java内存模型和重排序与H
Linux---软件安装(二)
1、软件安装方式 二进制发布包安装 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 rpm安装 软件已经按照redhat(红帽)的包管理规范进行打包,使用rpm命令进行安装,不能自行解决库依赖问题 yum安装 一种在线软件安装方式,本质上还是rpm安装,自动下载安装包并安装,安装过程中自动解决库依赖问题 源码编译安装 软件以源码工程的形式发布,需要自己编译打包 2、安装jdk 操作步骤
【进阶篇】Java 实际开发中积累的几个小技巧(一)
目录前言一、枚举类的注解二、RESTful 接口三、类属性转换四、Stream 流五、判空和断言5.1判空部分5.2断言部分文章小结 前言 笔者目前从事一线 Java 开发今年是第 3 个年头了,从 0-1的 SaaS、PaaS 的项目做过,多租户下定制化开发项目也做过,项目的 PM 也做过... 在实际的开发中积累了一些技巧和经验,包括线上 bug 处理、日常业务开发、团队开发规范等等。现在在这
Linux系统基本信息及配置
一、查看cpu lscpu Architecture: 显示系统处理器的架构,比如x86_64或ARM64等等。CPU(s): 显示系统中的CPU个数。Thread(s) per core: 显示每个CPU核心的线程数,即超线程技术的线程数。Core(s) per socket: 显示每个CPU插槽中的CPU核心数。Socket(s): 显示系统中的CPU插槽数量。L1d cache, L1
Linux---项目部署(三)
1、手工部署 操作步骤: 1.1.在IDEA中开发SpringBoot项目并打成jar包 1.2.将jar包上传到Linux服务器 mkdir /usr/local/app 创建目录,将项目jar包放到此目录 1.3.启动项目 java -jar [jar包名字] 1.4.检查防火墙,确保8080端口对外开放,访问SpringBoot项目 firewall-cmd --zone=publ
如何用maven打jar包
如何将resource中的文件打入jar包 https://blog.csdn.net/vcj1009784814/article/details/115118255 如何打用maven将项目打成可执行jar包 https://blog.csdn.net/xu187/article/details/99851390 打jar包时如何确保resource文件夹下的资源文件打入jar包中 https:
Zookeeper快速了解
初识 Zookeeper Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。 Zookeeper 翻译过来就是动物园管理员,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小猪)的管理员。简称zk Zookeeper 是一个分布式的、开源的分布式应用程序的协调服务。 Zookeeper 提供的主要功能包括: 配置管理 分布式
Collectors.toMap的暗坑与避免方式
使用Java的stream中的Collectors可以很方便地做容器间的转换,可以少写很多代码。但是其中有暗含的坑需要注意和避免,本文探讨Collectors.toMap(JDK8版本)。 Collectors.toMap可以将一个流转化成Map,常见于需要将List转换成Map以便于进一步操作的场景,比如在通过RPC接口获取一个返回结果、从DB中查询到匹配的多条数据后,对其按某个字段(经常是主键
kuberentes安装
Sealos安装集群 下载Sealos # 推荐下载最新版,会修复一些BUG,下载并安装sealos, sealos是个golang的二进制工具,直接下载拷贝到bin目录即可, release页面也可下载 wget -c https://sealyun.oss-cn-beijing.aliyuncs.com/latest/sealos && chmod +x sealos
SpringBoot 整合 RabbitMQ
Docker 搭建 RabbitMQ 拉取 RabbitMQ 的镜像执行命令 docker pull rabbitmq:3.7-management 执行运行命令 docker run -d --hostname rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:
【MybatisPuls】如何调用DM存储过程并返回多结果集
一、创建DM存储过程 sql 调用过程 输出 declarerow1 表%ROWTYPE;row2 表%ROWTYPE;result1 CURSOR ;result2 CURSOR ;BEGIN-- 调用存储过程,并接收输出参数your_procedure( result1, result2);-- 循环输出结果集1的数据LOOPFETCH result1 INTO row1;EXIT WH
mongo数据库3张连表的查询条件查询
关于mongoTemplate的联表查询,以前没有写过代码,现在刚好有业务所以记录一下连表条件查询 案例 我们的需求是查询出当前的用户所订购的所有的业务信息以及这个业务的累计表的某些字段值?那么怎么做呢? 下面是表结构 表A:业务基础信息表 表B:业务订购表 表C:业务统计表 我们的传参是需要传入用户手机号作为一个userId去关联哪个用户订购的业务,所以需要在用户订购表进行筛选
第一章学习Markdown语法详解
Markdown学习 一、标题: 一级标题 一个井号空格加标题名字就可以了 二级标题 两个井号空格加标题名字就可以了 三级标题 三个井号空格加标题名字就可以了 四级标题 四个井号空格加标题名字就可以了 五级六级标题把对应的#写够即可。注意最多只支持到六级标题 二、字体 Hello,World!:字体的两边都加两个星号就变成粗体 Hello,World!:字体两边都加一个星号就变成斜体了 Hello
实战高并发net6的微服务架构
前言 在过去的两年里,我所在的公司积累了丰富的微服务经验,尤其是在高并发场景下。身边有不少朋友也从事微服务开发,但在高并发读写方面的经验相对较少,毕竟这样的经验并不容易获得。在我们所在行业,微服务的应用也相当普遍。我记得刚入职的时候,我们公司和旁边一家使用Java开发微服务的公司进行了比较。我们整个园区业务基本一致的。我们经常和他们公司的技术人员交流问题和解决方案。有趣的是,我们
延迟队列-处理偶然性延迟任务的延迟队列
目标:实现一个处理偶然事件的延迟队列。 偶然事件发生的概率不高 偶然事件一旦发生,事件的量多少不一 期望偶然事件处理完成之后,能回收处理偶然事件的所有资源(因为偶然事件发生的概率低,所有分配的资源大部分时候都处于闲置状态) 思路:回收闲置资源 发生偶然事件时,自动分配用于处理偶然事件的资源(线程、队列等资源) 偶然事件处理完成后,回收分配的资源 使用一个线程用于延迟任务的获取与
SpringBoot连接MySQL
一、文件结构: 二、实体类 三、Dao 四、Controller 五、application.properties配置 六、pom.xml 七、表结构 八、启动服务后测试 http://localhost:8080//user/getByUserName?userName=mike http://localhost:8080//user/g