Java
Spring Bean生命周期之三级缓存循环依赖
目录1 三级缓存1.1 引言1.2 三级缓存各个存放对象1.3 解决循环依赖条件1.3.1 解决循环依赖条件1.3.2 Sprin中Bean的顺序1.3.3 更改加载顺序1.3.3.1 构造方法依赖 (推荐)1.3.3.2 参数注入1.3.3.3 @DependsOn(“xxx”)1.3.3.4 BeanDefinitionRegistryPostProcessor接口1.3.4 执行顺序@Ord
第一章 Java语言概述
1. Java 技术体系平台 Java SE(Java Standard Edition)标准版 Java EE(Java Enterprise Edition)企业版 Java ME(Java Micro Edition)小型版 2. 什么是 JDK , JRE JDK (Java Development Kit):是 Java 程序开发工具包,包含JRE 和开发人员使用的工具。
第二章 变量与运算符
1. 关键字 定义 : 被 Java 语言赋予了特殊含义 , 用作专门涌入的字符串(或单词) 例如 : 关键字 class , public , static , void 等早就已经被定义好的 特点 : 全部关键字都是小写字母 2. 标识符 定义 : 凡是自己可以命名的地方都叫标识符 标识符的命名规则: 由 26 个英文字母大小写,0-9 ,_或 $ 组成 数字不可以开
第三章 流程控制语句
1. 顺序结构 顺序结构就是程序从上到下 运行的 ,表达式语句都是顺序执行的 。 并且上一行对某个变量的修改对下一行会产生影响 2. 分支语句 2.1 if-else 条件判断结构 基本语法 : 结构 1:单分支条件判断:if 格式: 说明: 条件表达式必须是布尔表达式(关系表达式或逻辑表达式)或 布尔变量。 执行流程: 首先判断条件表达式看其结果是 true 还是
第六章 面向对象编程(基础)
1. 面向对象内容的三条主线 Java 类以及类的成员 : 属性 , 方法 , 构造器 , 代码块 , 内部类 面向对象的特征 : 封装 , 继承 , 多态 面向对象的关键字 : this、super、package、import、static、final、interface、abstract 等 2. 类和对象 2.1 类和对象概述 类 : 具有相同特征的事务的抽象描述 , 是抽象的
第七章 面向对象编程(进阶)
1. this 关键字 1.1 this 的含义 在 Java 中,this 关键字不算难理解,它的作用和其词义很接近。 它在方法(准确的说是实例方法或非 static 的方法)内部使用,表示调用该方法的对象 它在构造器内部使用,表示该构造器正在初始化的对象。 this 可以调用的结构:成员变量、方法和构造器 1.2 什么时候用 this 实例方法或构造器中使
微信小程序页面跳转方法总结微信小程序页面跳转方法总结
微信小程序页面跳转目前有以下方法(不全面的欢迎补充): 1. 利用小程序提供的 API 跳转: // 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。 // 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,但是 redirectTo wx.navigateTo({ url: 'page/home/home?user_id=11
Java中HttpClientUtil工具类
HttpClientUtil 包含get和post方法。 发送HttpPost或HttpGet请求一共三个步骤: 1、创建CloseableHttpClient对象,用于执行excute方法 2、创建HttpPost或者HttpGet请求对象 3、执行请求,判断返回状态,接收响应对象 public class HttpClientUtil {
Java反编译工具Jad的下载与使用示例
场景 Java反编译工具-JD-GUI下载以及使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/84317051 上面讲过Java反编译工具JD-GUI的使用,如果使用jad并通过命令如何实现反编译。 为了验证Java开发手册中为什么不推荐使用+进行字符串拼接,我们编写示例代码并编译和进行反编译 之后进行验证
p1 文件的基本使用
文件的基本使用 一、文件 什么是文件 文件是保存数据的地方,比如word文档,txt文件,excel文件……都是文件。即可以保存一张图片,也可以保持视频,声音…… 文件流 文件在程序中是以流的形式来操作的 流:数据在数据源(文件)和程序(内存)之间经历的路径 输入流: 数据从数据源(文件)到程序(内存)的路径 输出流:数据从程序(内存)到数据源(文件)的路径 二、常用的文件操作 1.
COMPX322-23A: 管理应用
COMPX322-23A: Assignment FourDue Date: Friday June 9tht, 5pmLibraries and Frameworks: Project Management ApplicationFor this coursework you are required to build a project management application which
Java 容器详解:使用与案例
Java容器是一套工具,用于存储数据和对象。可以与C++的STL类比。Java容器也称为Java Collection Framework (JCF)。除了存储对象的容器之外,还提供了一套工具类,用于处理和操作容器中的对象。总体来说,这是一个框架,它包含了Java对象容器和工具类。 一、概览 容器主要包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Ma
babylon.js 学习笔记(8)
接上回继续,现在的村庄已经有点象样了,但是远处的背景仍比较单调(如下图),今天来学习如何处理天空背景。 babylon.js中,把整个空间假象成一个巨大的立方体(称为SkyBox),然后依次给立方体的6个面,贴上天空的背景图(如下图) 在代码中只要指定这6张图的rootUrl即可,babylon.js会自动拼上一系列后缀,按如下约定去加载图片: _px.jpg _nx.jpg _p
2022-2023 java高级面试总结
1.Java内存模型是什么? JMM即Java内存模型(Java memory model),在JSR133里指出了JMM是用来定义一个一致的、跨平台的内存模型,是缓存一致性协议,用来定义数据读写的规则。Java内存模型规范java如何按需禁用缓存和编译优化的方法。 2.mysql查询第一万条数据后20条数据,sql语句如何写? select * from `demo`.`order` where
2022-2023-java大厂面试真题
【美团】面试真题: 1、SPRING AOP 底层原理 一、AOP概念: AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵
Web安全测试—Web应用的结构
Web应用的一种分类方法是依据它们所拥有的可访问接口的数量和种类。简单的架构就是将所有的功能封装在一个或两个组件中,复杂的架构会有若干个组件,最复杂的架构是将若干个组件应用捆绑在一起。 常见组件 最常见的Web应用都基于模型-视图-控制器(MVC)设计。这种部署型式的目的是将输入和输出功能(“视图”)从“控制器”所集成的对业务需求(“模型”)的操作中分离出来。这样就可以对Web应用进行
Programming: elimination array duplicate
JavaScript 1. splice 2. new Array 3. Object[key] can't difference 5 '5' 4. Set
p2 IO流原理及流的分类
IO流原理及流的分类 一、Java IO流原理 I/O是Input/Output的缩写,I/O技术是非常实用的技术,用于处理数据传输。如读/写文件,网络通讯等。 Java程序中,对于数据的输入/输出操作以”流(stream)“的方式进行。 java.io包下提供了各种”流“类和接口,用以获取不同种类的数据,并通过方法输入或输出数据。 输入input:读取外部数据(磁盘、光盘等存储设备的数据)到程
dbeaver 23启用从编程语言源码中提取SQL功能
一直很喜欢 dbeaver 的一个自动提取剪切板SQL功能, 该功能去除多余C#/Java中SQL字符串加号和双引号. 但升级到dbeaver 23之后, 发现该功能默认被关闭了, 开启功能见下图:
深入学习ThreadLocal
1、用来干吗的? 用于线程在任意的地方去共享数据,而不被其他线程所干扰, 2、原理是什么 因为每个线程维护一份ThreadLocalMap,使用threadlocal.set(obj)方法是存放在map里面的Entry<<WeekReference>ThreadLocal,Value>数组里 3、实际案例,比如写了util类,但是SimplateDateFormate是线程
webgpu_快速入门2
/Users/song/Downloads/WebGPU视频教程/2. 3D几何变换数学基础/9.片元的屏幕坐标/1.片元坐标/index.html /Users/song/Downloads/WebGPU视频教程/2. 3D几何变换数学基础/9.片元的屏幕坐标/1.片元坐标/shader.js /Users/song/Downloads/WebGPU视频教程/2. 3D几何变换数学基础/9.
使用vue出现Uncaught TypeError: Vue is not a constructor错误
原因是vue2和vue3写法不对 正确是 <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title&g
1. Mybatis 简介
1. Mybatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下, iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。 iBatis一词来源于“internet”和“abatis”的组合,
父线程捕获子线程的异常方式
如果 子线程出现异常问题 如果不在父线程中进行捕获异常 该子线程也不进行异常捕获的话 则子线程一但出现异常 则此子线程就关闭了,父线程并不知情,可能认为该子线程已经正常、运行完毕了呢,所以突显出父线程捕获子线程异常状态的重要性。在普通的单线程程序中,捕获异常只需要通过try ... catch ... finally ...代码块就可以了。那么在并发情况下,比如在父线程中启动了子线程,如何在父线程