自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java 内存异常

内存溢出指的是在程序执行过程中,申请的内存超过了系统实际可用的内存资源。内存溢出的常见情况:创建大量对象并持有引用:在程序中创建大量对象并持有对这些对象的引用,而没有及时释放这些引用,导致堆内存不断增加,最终导致内存溢出。如集合类中有对对象的引用,使用完后未清空,使得JVM不能回收。递归调用导致栈溢出:当递归调用的层级过深时,栈空间无法容纳大量的调用栈帧,导致栈溢出。超大数据量处理:当处理超过可用内存容量的大数据集时,例如读取巨大的文件或从数据库中检索大量数据时,可能会导致内存溢出。

2024-03-14 19:23:55 444 1

原创 Java 同步器 CountDownLatch、CyclicBarrier 、Phaser、Exchanger、Semaphore

多个线程互相等待,直到到达同一个同步点,再继续一起执行。适用于多个线程有固定的多步需要执行,线程间互相等待,当都执行完了,在一起执行下一步。它支持任务在多个点都进行同步,支持动态调整注册任务的数量。多个窗口叫号,窗口都忙时,顾客等待,有空闲时,最新等待的被通知。个线程,他不支持更多的线程之间互换数据,当线程。方法,然后以线程安全的方式交换数据,之后线程。生活中对应场景:比如运动会起跑用哪个。方法后,他会陷入阻塞状态,直到线程。获取一个许可,如果没有就等待,而。可以控同时访问的线程个数,通过。

2024-03-12 20:36:15 332

原创 Java 面试 多线程遇到的问题,如何处理

分析出以上结论后,我们只需要创建多个线程往线程池丢任务即可,然后让⼤多数线程将ctl中的workCount加1,并让线程停到将worker加⼊到workers之前停⽌,这样⽤户看到的⽇志就会出现,虽然workers的⼤⼩很⼩,就出现了拒绝加⼊的现象。这⾥将线程0-1置为active状态,将2-9停到增加完ctl值后,即break retry;1、ctl中记录的 worker 数量和 worker.size () 在什么情况下会不一致?现象: 当新的task被拒绝时,pool size未达到配置值50.

2023-12-22 16:39:46 133

原创 Mybatis踩过得坑collection 一对多问题(显示的结果没有整合到一起)

先简单说一下我遇到的问题,我是两张表关联查询(其实是主表都全部数据,但是只保存其他表的ID),主表保存有附表的数据,但是需要将附表的数据整合到主表相同的目录下,方便前台调用。需要的结果样式如下图1所示,但是获取到的结果总是分开的,resultMap和collection节点内容都对了好几遍,写的没问题,但是出现结果如图二所示:然后最总发现是主表的主键ID所导致的,因为主表ID每条都不一样,虽然在SQL中没查,但是编译器好像也会获取,按主键区分,所以需要默认一个相同的或者直接默认为空,不能省略。图..

2020-09-23 16:02:58 3161

原创 VUE 父组件调用子组件的方法

首先要了解VUE中ref属性的用法ref被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的$refs对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组件上,引用就指向组件实例:父窗体代码:<template><div><!--弹出框Morse--><el-dialog :title="测试" top="5vh"><div>...

2020-08-12 11:01:27 982

原创 VUE 子组件调用父组件方法修改父组件属性

首先要了解VUE中$emit 的用法父组件可以使用 props 把数据传给子组件。子组件可以使用 $emit 触发父组件的自定义事件。vm.$emit( event, arg ) //触发当前实例上的事件vm.$on( event, fn );//监听event事件后运行举例:子组件:<template> <div> <el-buttontype="primary"@click="NextStep" >下一页&lt...

2020-08-11 14:42:24 800

原创 BAT学习基础---案例解析版

@echo off setlocal enabledelayedexpansion::打开系统延时set /a b=0dir /b/od::按时间顺序显示当前文件夹下的所有文件名pause::给你反悔时间for /f "delims=" %%f in ('dir /b/od *.*') do ( if not "%%f"=="%~nx0" ( set /a b+=1 ren "%%f" "img_!b!%%~xf...

2020-06-03 14:36:46 498

原创 DOS特殊符号

1、@ 命令行回显屏蔽符这个字符在批处理中的意思是关闭当前行的回显。我们从前几课知道ECHO OFF 可以关闭掉整个批处理命令的回显,但不能关掉 ECHO OFF 这个命令,现在我们在 ECHO OFF这个命令前加个@,就可以达到所有命令均不回显的要求2、% 批处理变量引导符这个百分号严格来说是算不上命令的,它只是批处理中的参数而已(多个%一起使用的情况除外,以后还将详细介绍)。引用变量用%var%,调用程序外部参数用%1 至%9 等等%0 %1 %2 %3...

2020-06-02 18:43:45 427

转载 BAT学习基础知识(下)

If 命令 if 表示将判断是否符合规定的条件,从而决定执行不同的命令。有三种格式: 1) IF 语法: if [not] "参数" == "字符串" 待执行的命令 参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号) Sample: if "%1" == "a" format a: Sample: if {%1} == {} goto noparms 2) if exist 语法:...

2020-06-02 18:34:02 1060

原创 Bat学习基础知识(上)

一、基础语法: 1.“.bat”结尾的文本文件是一个批处理文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。 2.批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。 3.批处理的编程能力远不如C语言等编程语言,也十分不规范。 4.每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。 5.C:\AUTOEXEC.BAT 是每次系统.

2020-06-02 18:31:36 716

原创 Oracle 多行数据根据条件转行为一行多列

需求:一个病人体征信息表中,需要获取病区某个时间点,所有病人的体征数据。但是查询到数据需要按病人显示为一行,方便前端进行显示。下图为原数据:先根据条件查询你需要的数据,多行展示:使用pivot,将多行转换为多列注意:如果in中的同义词列明为中文时,需要用双引号...

2020-05-09 15:59:53 1670

转载 oracle 查询一张表中几个字段内容重复的数据

一、背景  一张person表,有id和name的两个字段,id是唯一的不允许重复,id相同则认为是重复的记录。二、解决  select id from group by id having count(*) &gt; 1  按照id分组并计数,某个id号那一组的数量超过1条则认为重复。如何查询重复的数据?1select 字段1,字段2,count(*) from 表名 group by 字段1,...

2018-06-11 16:03:44 23613 2

转载 oracle使用存储过程返回数据集

很多时候,我们想通过存储过程获得一个输出集。我们知道sql server的存储过程在执行之后,返回的就是一个集合。但是oracle如果要获得一个输出集合,就要麻烦一点了。     oracle获得输出集合是通过游标实现的,而且游标需要在package中进行声明。下面就拿分页的存储过程为例。     首先,先创建一个包package,类似于C#中的接口,只用于申明,没有任何实际的代码。    cre...

2018-05-22 18:48:44 6836

原创 Oracle查询优化

按照优化层次可将查询优化分为:代数优化和物理优化。代数优化是指关系代数表达式的优化,即按照一定的规则,通过对关系代数表达式进行等价交换,改变代数表达式中操作的次序和组合,是查询执行更高效;物理优化则是指存储路径和底层操作算法的选择。在集中式数据库中,查询执行开销主要包括磁盘存储块数(I\O代价)、处理机时间(CPU代价)以及查询的内存开销。在分布式数据库中还要加上通信代价,即总代价=I\O代价+C...

2018-04-07 18:10:51 457

转载 C# 中 AS与IS 的对比

在C#语言中进行类型转换的操作符is和as。is和as都是强制类型转换,但这两者有什么相同之处和不同之处呢?在使用is和as需要注意哪些事项?下面我们从简单的代码示例去探讨这个简单的问题。注:此博文只是本人学习过程中一些简要记录,新手可以看一下,高手略过。is检查一个对象是否兼容于指定的类型,并返回一个Boolean值:true或者fasle。注意,is操作符永远不会抛出异常,请看以下示例:Cla...

2018-03-19 22:38:04 213

原创 C# 类型转换 AS

在C#程序中经常出现类型的强制转换,如:double d=10.5;int i=(int)d;这样得到i的值为10。但是这么转换在一些情况下会出现转换错误,如:class C1{};class C2:C1 {};C1 c11=new C1();C2 c22=(C1)C1;这样转换就会失败,需要进行处理,如try catch;try{    C2 c22=(C1)c11;}catch(Excepti...

2018-03-19 22:37:02 733

原创 oracle Delete删除通过其他表关联查询到的数据

有两个表 表 A 字段 ID1          表 B 字段ID2 结构都相同删除B里 所有B.ID2=A.ID1 匹配的数据delete from B a where exists (select * from A b where B.DI2=A.ID1)注:B的ID2字段和A的ID1字段要建索引...

2018-03-19 15:29:42 15141

原创 oracle minus用法(求并集和交集)

表A{1,2,3,4,5,} 表B{4,5,6,7,8,} select * from A minus select * from B;结果:1,2,3。 select * from B minus select * from A;结果为:6,7,8。select * from A unionselect * from B;结果为:1,2,3,4,5,6,7,8。select * from A m...

2018-03-19 15:25:03 21075

原创 C# for和foreach循环

for循环遍历            string[,] scores=new string[2,3];            string[,] scores2 = {{"1","2","3"},{"4","5","6"},{"7","8","9"}};            Console.WriteLine(scores2.

2018-03-17 14:44:45 498

原创 C# 数组的定义

C#中数组特性:1、数组的长度是固定2、是同一个类型的数据3、根据索引index来查找,第一个0开始数据分为 一维数组、二位数组、数组的数组一维数组:int[] number =new int[5];//表示定义一个长度为5 的一维数组赋值:int[] number2=new int[5] {1,2,3,4,5};int[] number2=new int[] {1,2,3,4,5};int[] ...

2018-03-17 13:31:07 6825

原创 oracle 查找数据库字段出现次数

使用group by 函数;例如在表A中想要查找各个ID出现的次数select count(ID) from A group by ID;

2018-03-07 14:27:26 2871

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除