bean-ioc spring bean day

博学谷学习记录 自我总结 用心分享 | Spring源码刨析

别再盲目的说spring有三级缓存了,两个缓存只是启动时为了解决循环依赖,spring启动后只有一个缓存有用 一、什么是循环依赖 循环依赖指的就是循环引用,就是两个或多个 bean 相互之间的持有对方,比如 CircleA 引用 CircleB , CircleB 引用 CircleC, Circl ......
自我总结 源码 Spring

python34days

软件开发架构 osi七层协议(互联网通信协议) 网络层 传输层 tcp协议和udp协议,ip协议,以太网协议等 tcp协议的三次握手和四次挥手 ———————————————————————————————————————— 网络编程:网络编程是使用域名、IP地址、端口连接到另一台计算机上对应的程序 ......
python days 34

Spring Boot + Redis 延时双删功能,实战来了!

一、业务场景 在多线程并发情况下,假设有两个数据库修改请求,为保证数据库与redis的数据一致性,修改请求的实现中需要修改数据库后,级联修改Redis中的数据。 请求一:A修改数据库数据 B修改Redis数据 请求二:C修改数据库数据 D修改Redis数据 并发情况下就会存在A —> C —> D ......
实战 功能 Spring Redis Boot

Spring远程命令执行漏洞(CVE-2022-22965)原理研究

一、前置知识 SpringMVC参数绑定 为了方便编程,SpringMVC支持将HTTP请求中的的请求参数或者请求体内容,根据Controller方法的参数,自动完成类型转换和赋值。之后,Controller方法就可以直接使用这些参数,避免了需要编写大量的代码从HttpServletRequest中 ......
漏洞 命令 原理 Spring 22965

Day05

Java基础03:数据类型讲解 特点: 强类型语言 Java的数据类型 基本类型(primitive type) 数值类型 整数类型 byte short int long 浮点类型 float double 字符类型char占2个字符 boolean类型(True False) 引用类型refer ......
Day 05

Day04

Java入门08:使用IDEA开发 IDEA安装 什么是IDE Eclipse......IDEA IDEA介绍 IDEA官网:https://www.jetbrains.com/ JAVA01:基础语法--注释 注释、标识符、关键字 数据类型 类型转换 变量、常量 运算符 包机制、JavaDoc ......
Day 04

Day02

Java入门06:HelloWorld详解 HelloWorld 新建一个文件夹,存放代码 新建一个Java文件 文件后缀名为.java Hello.java [注意点]系统可能没有文件名 编写代码 public class Hello{ public static void main(String ......
Day 02

Java设计模式-策略模式-基于Spring实现

1、策略模式 1.1、概述 策略模式是一种行为设计模式,它允许在运行时选择算法的行为。它将算法封装在独立的策略类中,使得它们可以相互替换,而不影响客户端代码。这种模式通过将算法的选择从客户端代码中分离出来,提供了更大的灵活性和可维护性。 在Java中,策略模式的设计理念可以通过以下步骤实现: 定义一 ......
模式 设计模式 策略 Spring Java

java学习日记day02

java学习日记day02 冯诺伊曼体系 ) cmd指令 ......
日记 java day 02

23 年牛客提高组模拟赛 Day5 T3

给你一个长为 \(n\) 的数组 \(b_i\) 表示原数组 \(a_i\) 中以 \(i\) 结尾的 LIS 长度,问对于所有 \(1 \leq a_i \leq m\) ,原数组有多少种不同的可能 \(n \leq 20, m \leq 3000\) 看到数据范围容易想到状压 dp ,赛事想了个 ......
模拟赛 Day5 Day 23 T3

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)

本教程中介绍一些基于JPA/ spring的特性,重点介绍JPA-Spring集成以及如何利用这些功能。您将学习如何: 为JPA和Spring设置一个项目 逆向工程数据库表来生成实体 实现创建、检索、编辑和删除功能 启用容器管理的事务 MyEclipse v2023.1.2离线版下载 MyEclip ......
开发指南 MyEclipse 事务 指南 Spring

Spring Boot读取resource目录下文件失败解决方案及分析

背景 最近有个需求,就是需要从resources目录下读取文件返回给用户。在idea中运行时,有些resources下文件读取工具类能够正常获取读取到文件。但是通过java –jar的方式去运行jar包,此时resources下文件读取工具类读取文件就失效了。通过查询搜索,了解到了是读取的方式导致文 ......
resource 解决方案 文件 目录 方案

【安全学习之路】Day45

练习 通过createfile这个API了解栈在32位和64位下的工作方式。 Stack32 用OD打开这个在32位环境下编译出来的程序 结合上图可以看到在这个32位里面 它不使用栈帧。 它调用子函数时使用栈传递参数。 它调用push进行压栈的参数不需要main()共同清理,在32以stdcall方 ......
Day 45

Spring Boot+Thymeleaf+MyBatis--推荐一个后端练手极佳的商城项目

项目整体架构 newbee-mall ├── src/main/java └── ltd.newbee.mall ├── common // 存放相关的常量配置及枚举类 ├── config // 存放 web 配置类 ├── controller // 存放控制类,包括商城端和后台管理系统中的 c ......
Thymeleaf MyBatis 商城 项目 Spring

day1 study notebook

markdown学习 标题:#+空格+标题名字 四级标题 ........... 字体 文字 wenzi wenzi 引用 选择人生 一般用在引用其他人文章的时候使用 分割线 三个— 三个星号也可以变成分割线 图片 如果是添加网络在线地址:查看审查元素,没有审查元素右键点检索或者直接右键在新标签页打 ......
notebook study day1 day

Spring Cloud原理

SpringCloud原理 如果还没有学习过,建议先了解以下微服务 什么是微服务? 传统单体架构 业务量小,所有代码放在一个项目里即可。这些项目部署在一台服务器即可。整个项目所有服务器都由这台服务器提供。 优点:项目架构简单,适用于小型项目 缺点:维护困难,所有模块公用一个数据库,项目要求所有技术统 ......
原理 Spring Cloud

算法训练day30 LeetCode93.78.90

算法训练day30 LeetCode93.78.90 93.复原IP地址 题目 93. 复原 IP 地址 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) 使用'.'切割字符串、结束条件为字符串中有三个'.'、同时要确定字符串符合的条件 长度为不为1时,首字符 ......
算法 LeetCode day 30 93

day01-java数组

数组概述 数组的定义 数组时相同类型的数据的有序集合 数组描述的时相同类型的若干个数据,按照一定的先后次序排列组合而成。 数组的声明和创建 首先必须声明数组变量,才能在程序中使用数组。 dateType[] arrayRefVar; 或者 dataType arrayRefVar[]; //效果相同 ......
数组 java day 01

day01-Java方法

方法 java方法是语句的集合,它们在一起执行一个功能--相当于c中的函数 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方法只能完 ......
方法 Java day 01

T2【noip赛前20天冲刺集训 day4】正在打模拟赛

@@ 【noip赛前20天冲刺集训 day4】正在打模拟赛 @@ 题目描述 给定一棵包含 n 个点的树,每条边都有权值,同时给定一个整数 k。定义一个树上连通块的权值为其中边权之和。你需要求解满足以下条件的树上连通块的权值最大值:这个连通块至多包含一个度数大于 k 的点。 注意,这里的度数指的是连通 ......
模拟赛 正在 noip day4 day

题解 AtCoder wtf22_day1_b【Non-Overlapping Swaps】

给定一个排列,要求交换最多 $n-1$ 对元素,使得这个排列变成 [1,2,...,n] 的有序排列。 当然没有那么简单,对于交换还是有限制的,对于相邻的两次交换,不妨叫做 $(l_i, r_i)$ 和 $(l_{i+1}, r_{i+1})$,必须满足**这两个交换所对应的区间,没有交集**,即... ......

day01-java流程控制

用户交互Scanner java.util.Scanner是java5的新特征,我们可以通过Scanner类来获取用户的输入。 Scanner s = new Scanner(System.in);​//通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需 ......
流程 java day 01

SpringBoot获取Bean的工具类

1、beanName 默认是类名首字母小写 下面的类:beanName = bean1 @Component public class Bean1 { public String getBean1() { return "Bean1"; } } 修改beanName 下面的类:beanName = ......
SpringBoot 工具 Bean

【noip赛前20天冲刺集训 day4】正在出模拟赛

题目描述 想象学竞赛网站 CodeFancy 举办了 \(m\) 场比赛。你在 CodeFancy 上关注了 \(n\) 个账号,编号为 \(1\) 到 \(n\)。你知道这 \(n\) 个账号分别参加了 \(m\) 场比赛中的哪些。但是你发现可能存在一个人使用多个账号的情况,你想知道这 \(n\) ......
模拟赛 正在 noip day4 day

LeetCode Day02 977&209&59

第一题是[977. 有序数组的平方]这题解题思路依旧可以用双指针,指针分别指向数组的头尾两端,然后对两端求乘积比较大小,把乘积值更大的存储到数组尾端,然后指针更新位置,代码如下。 public int[] sortedSquares(int[] nums) { //res用于存储平方和结果 int[ ......
amp LeetCode Day 977 209

LeetCode Day01 704. & 27.

###### [704. Binary Search](https://leetcode.cn/problems/binary-search/)入门必备二分查找了。必须是在一堆**有序的**数组中找到其中特定某个val值。###### 二分算法的思路:*首先取一个基准值,这个值我们一般取数组的中间位 ......
LeetCode Day 704 amp 01

Spring Boot 跨域访问

出于安全的考虑,浏览器会禁止 Ajax 访问不同域的地址,在现如今微服务横行的年代,跨域访问是非常常见的。W3C 的 CORS (Cross-origin-resource-sharing) 规范中也已经允许跨域访问, 并被主流浏览器所支持,它们包括: Chrome 3+; Firefox 3.5+ ......
Spring Boot

Spring中StopWatch使用

import org.springframework.util.StopWatch; public class OTest { public static void main(String[] args) throws InterruptedException { StopWatch stopWat ......
StopWatch Spring

博学谷学习记录 自我总结 用心分享 | Spring Cloud高阶应用与原理

概述: 毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。实际上,Sp ......
自我总结 高阶 原理 Spring Cloud

Spring Cloud 中的分布式组件五花八门,我到底该怎么学?

分布式架构的演进 在软件行业,一个应用服务随着功能越来越复杂,用户量越来越大,尤其是互联网行业流量爆发式的增长,导致我们需要不断的重构应用的结构来支撑庞大的用户量,最终从一个简单的系统主键演变成了一个非常复杂的可以支撑高并发的高可用的分布式架构,但是一个系统再复杂也是不断演变来的,所以从另一方面来说 ......