Spring循环依赖

循环依赖 循环依赖是指两个或多个模块或组件之间相互依赖,形成一个闭环情况。 1 2 3 4 5 6 7 8 9 10 @Component public class A { @Autowired private B b; } @Component public class B { @Autowired private A a; } ...

2023-09-07 · 3 分钟 · 1259 字 · LYJ

Spring Bean的生命周期

Bean的生命周期 在Java应用中,普通的Java Bean的生命周期很简单。使用关键字new对Bean进行实例化,之后Bean就可使用了,当Bean不在被使用就会被Java的垃圾回收机制回收。概括的说就是两个阶段: ...

2023-09-07 · 4 分钟 · 1919 字 · LYJ

JVM内存结构

运行时数据区域 JVM在运行Java程序的过程中会把管理的内存分成不同的数据区域 线程私有: 虚拟机栈 本地方法栈 程序计数器 线程共享: 堆 方法区(元空间) 直接内存 虚拟机栈 Java虚拟机栈是一个线程私有的内存区域,用于存储每个方法执行时的局部变量表、操作数栈、动态链接、方法返回地址。每个方法在执行时都会创建一个栈帧,当方法执行完毕后,对应的栈帧将会出栈销毁。 局部变量表主要存放编译器可知的各种数据类型(基本数据类型)和对象引用 操作数栈用于在方法执行过程中进行数据操作和计算。操作数栈采用栈的数据结构,用于存储方法执行过程中的局部变量、中间结果和操作数。 动态链接是指在方法调用过程中进行方法的查找和链接,实现方法的动态绑定。主要用于支持Java程序中多态性和动态方法调用 方法返回地址是指在方法调用过程中,用于记录方法返回的地址信息。当一个方法被调用时,JVM会为该方法创建一个新的栈帧,并将其推入虚拟机栈中。 ...

2023-09-05 · 5 分钟 · 2272 字 · LYJ

Shell编程

Shell 什么是Shell? shell编程就是对一堆Linux命令的逻辑化处理。 Shell编程Hello World 新建文件touch helloworld.sh 添加执行权限chmod +x helloworld.sh 编辑sh脚本 1 2 #!/bin/bash echo "helloworld" 在shell种#表示注释。shell的第一行比较特殊,一般都会以#!开头来指定使用的shell类型 ...

2023-08-27 · 5 分钟 · 2218 字 · LYJ

JUC

JUC 1、什么是JUC 1 2 3 java.util.concurrent java.util.concurrent.atomic java.util.concurrent.locks java.util 工具包 业务:普通的线程代码Thread Runnable 没有返回值,效率相比Callable较低 2、线程和进程 线程、进程 进程:一个程序,QQ.ext Music.exe 程序的集合 ...

2023-08-27 · 20 分钟 · 9872 字 · LYJ

Docker

Docker概述 Docker为什么出现? 一款产品:开发-上线 两套环境!应用环境!应用配置! 开发 ··· 运维。问题:我的电脑用运行!版本更新,导致服务不可用!对于运维来说,考研太大了 环境配置是十分麻烦,每一个机器都要部署环境(集群redis,es、Hadoop)!费时费力 ...

2023-08-24 · 24 分钟 · 11866 字 · LYJ

数据库设计规范

数据库设计规范 数据库名称规范 所有的数据库对象名称必须使用小写字母并用下划线分割(mysql数据库大小写敏感) 例如: 不同的数据库名 DbName dbname 不同的表名 Table table taBLe 所有数据库对象名称禁止使用mysql保留关键字 例如 :select id , username , from ,age from table_user 会造成mysql 歧义 ...

2023-08-24 · 7 分钟 · 3242 字 · LYJ

JWT(JSON WEB TOKEN)

JWT 是 JSON Web Token 的缩写,是一种用于在网络应用环境间传递安全信息的简洁的、URL安全的表述性声明规范。JWT 可以被用来在不同的应用程序之间传递声明,例如用户身份信息、授权信息等。 ...

2023-08-20 · 2 分钟 · 881 字 · LYJ

OpenSUSE配置

基本配置 命令行配置软件源 禁用原有的软件源 1 sudo zypper mr -da openSuSe Tumbleweed更换清华软件源 1 2 sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/tumbleweed/repo/oss/' mirror-oss sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/tumbleweed/repo/non-oss/' mirror-non-oss openSUSE Leap15.2或更高版本更换清华软件源 1 2 3 4 sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/distribution/leap/$releasever/repo/oss/' mirror-oss sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/distribution/leap/$releasever/repo/non-oss/' mirror-non-oss sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/update/leap/$releasever/oss/' mirror-update sudo zypper ar -cfg 'https://mirrors.tuna.tsinghua.edu.cn/opensuse/update/leap/$releasever/non-oss/' mirror-update-non-oss Leap 15.3 用户还需添加 sle 和 backports 源 ...

2023-08-17 · 8 分钟 · 3890 字 · LYJ