自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(298)
  • 收藏
  • 关注

原创 Java 中Lambada表达式中双冒号 ::使用总结

双冒号运算操作符是类方法的句柄,lambda表达式的一种简写表达式:可以替换成:表达式:() - > new HashMap <>();可以替换成:双冒号(::)运算符在Java 8中被用作方法引用(method reference),方法引用是与lambda表达式相关的一个重要特性。它提供了一种执行方法的方法,为此,方法引用需要由兼容的函数式接口组成的目标类型上下文。

2024-04-26 17:03:20 506 1

原创 Lombok 注解总结

Lombok 是一个 Java 库,用于通过注解方式自动化生成 Java 类的常用方法(如 getter、setter、toString 等),从而简化开发流程并减少重复性代码。以下是 Lombok 库中常用的注解及其作用。这些注解可以根据需求单独使用,也可以组合在一起使用,以简化 Java 类的开发过程,减少冗余代码,并提高代码的可读性和维护性。请注意,使用 Lombok 需要在项目中添加 Lombok 的依赖,以便编译器能够正确处理这些注解。

2024-04-25 17:16:49 797

原创 Mybatis 动态Sql标签使用总结

常用的动态sql标签包括 if、choose(when、otherwise)、trim(where、set)、foreach。2.1、if 标签1、动态拼接查询条件WHERE 1=1= null">= null">= null">= '' ">2、动态选择不同的执行sql根据输入参数unitType的不同情况来join不同的表查询结果集。

2024-04-24 11:08:29 1073 1

原创 MybatisPlus 常用注解

Mybatis-Plus是一个在Mybatis基础上进行增强的ORM框架,提供了许多便捷的注解来简化数据库操作。本文将介绍Mybatis-Plus常用的注解以及它们的使用方法。

2024-04-23 10:28:55 1323

原创 Java中 List 集合,通过 Stream 流进行排序总结

【代码】Java中 List 集合,通过 Stream 流进行排序总结。

2024-03-25 17:15:37 1398

原创 Oracle 中排序函数总结

rank()和row_number() 函数用法类似,但是rank()生成的序号是同值同序的不连续序号,即如果出现相同的值,那么序号是一样的。dense_rank()与rank()的区别在于,dense_rank()生成的序号是连续的。先排序再确定序号,会根据 partition 分区,在每一个小分区内部取序号。

2023-12-07 16:20:33 840

原创 Oracle中 Procedure sql%notfound

sql%notfound 是一个布尔值,与最接近的sql语句(update、insert、delete、select)发生交互,当最近的一条sql语句没有涉及到任何行的时候,返回true,否则返回false。

2023-12-06 17:07:50 456

原创 Oracle 中换行chr(10)、回车chr(13)

chr(n):返回 ascii 值对应的字符。ascii(char):返回字符 char对应的ascii 值。chr(n) 和 ascii(char) 作用刚好是相反的。控制台显示:A控制台显示:65。

2023-12-04 16:24:54 1806

原创 Oracle的数据一致性机制原理

在单用户环境下,在操作数据库是不需要考虑其他用户会修改同一个数据。但是在多用户的情况下,多个事务可能会修改同一个数据,最终会得到错误的数据结果。Oracle数据库是通过 multiversion consistency model(多版本数据一致性模型)、还有不同类型的锁、事务隔离保证数据的一致性。通过这种方式,数据库可以向多个并发用户提供在某一个时间点所对应的数据库数据。由于不同版本的数据块可以同时存在,事务可以查询所需时间点已经提交的数据版本,并返回对应时间点已提交的数据查询结果。

2023-12-04 14:40:57 404

原创 Oracle 如何修改当前的序列值

序列对象有三个重要的属性:起始值、增量和最大值。起始值是序列生成的第一个值,增量是序列每次生成的值的增量,最大值是序列可以生成的最大值。这些属性可以在创建序列时设置,也可以在创建后随时更改。1、修改当前的序列值要修改Oracle序列的当前值,可以使用ALTER SEQUENCE语句。该语句需要指定序列的名称和新的当前值。注意,该语句只修改序列的当前值,不影响序列的起始值、增量或最大值。2、要修改序列对象的属性,可以使用ALTER SEQUENCE语句的其他选项。2.1、修改序列起始值。

2023-11-16 11:21:56 4907

原创 Oracle 中排序碰到 null 值如何处理

Oracle 在 Order by 时缺省认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前。

2023-11-14 16:30:49 808

原创 oracle 中 %TYPE %ROWTYPE

PL/SQL 提供了 %TYPE 和 %ROWTYPE 两种特殊的变量,用于声明与表的列相匹配的变量和用户定义数据类型,前一个表示单属性的数据类型,后一个表示整个属性列表的结构,即元组的类型。-- 数据表TB_TRANS_RECORD-- 定义一个与表TB_TRANS_RECORD中FEE类型相同的变量DECLARE-- 定义一个与表TB_TRANS_RECORD结构相同的数组DECLARE-- 为数组中的变量赋值BEGIN。

2023-11-10 15:55:28 1240

原创 oracle中分组函数LISTAGG

Oracle中的 GROUP_CONCAT 函数用于将多行数据合并为一行,并以指定的分隔符分隔各个值。在Oracle中,没有直接的GROUP_CONCAT函数,但可以使用 LISTAGG 函数来实现类似的功能。

2023-11-10 13:43:01 722

原创 javascript 中 find(), findIndex(), filter(), some(), every(), forEach(), map()方法介绍

some 为数组中的每一个元素执行一次 callback 函数,直到找到一个使得 callback 返回一个“真值”(即可转换为布尔值 true 的值)。它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。findIndex()方法与find()方法的用法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1。map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。举例:过滤年龄为 22 岁的用户。

2023-11-06 13:45:15 116

原创 Oracle数据中如何在 where in() 条件传参

在sql 条件中,如何在 where in()中想传入参数,如果直接 where in(:seqList),当传入单个值,seqList:= ‘80’ 是没问题的,但是初入多个值时,seqList:= ‘80,90’ ,因缺少单引号,导致查询结果不对。使用正则变换函数 regexp_substr()测试数据: 20,30,40。

2023-10-20 16:03:24 1313

原创 Oracle 数据库查看锁表的语句和解锁的方法

【代码】Oracle 数据库查看锁表的语句和解锁的方法。

2023-07-13 17:18:00 7247

原创 Oracl之动态Sql编写总结

在通常的sql操作中,sql语句基本上都是固定的,如: SELECT t.empno,t.ename FROM scott.emp t WHERE t.deptno = 20;但有的时候,从应用的需要或程序的编写出发,都可能需要用到动态SQl,如: 当 from 后的表 不确定时,或者where 后的条件不确定时,都需要用到动态SQL。使用。

2023-05-31 15:57:34 1480

原创 Oracle中TRUNC函数使用说明

格式:TRUNC(n1,n2),n1表示被截断的数字,n2表示要截断到那一位。n2可以是负数,表示截断小数点前。用法有两种:TRUNC(NUMBER)表示截断数字,TRUNC(date)表示截断日期。fmt 日期格式,该日期将由指定的元素格式所截去,忽略它则由最近的日期截去。其具体的语法格式如下:TRUNC(date[,fmt])RUNC函数用于对值进行截断。其中:date 一个日期值。

2023-04-23 14:40:48 5278 1

原创 Oracle 数据库表中已有重复数据如何添加唯一键(唯一约束)

通过以上表中数据可以看出 code 是有重复数据的,此时如果我们直接添加唯一键,会报错。表 TEST_TABLE 有如下字段和数据:id 是主键,code 没有设置键和索引。以 demo 举例,模拟真实场景。

2023-03-15 11:32:26 1866

原创 pl/sql 关于异常处理

异常分为三类,预定义异常、非预定义异常、自定义异常。注意:三种异常的区别,前两种异常是违反了oracle的规则,用户自定义异常是违反了用户定义的规则。ORACLE预定义的异常情况大约有21个。对这种异常情况的处理,无需在程序中定义声明,由ORACLE自动将其引发。常见的异常有:1、no_data_found 无数据找到2、too_many_rows 返回多条数据3、zero divide 除数不能零4、cursor_already_open 打开已经打开的游标。

2023-02-20 10:46:26 668

原创 JS中声明变量,使用 var、let、const的区别

1、var声明是全局作用域或函数作用域,而let和const是块作用域。2、var变量可以在其范围内更新和重新声明;let变量可以被更新但不能重新声明;const变量既不能更新也不能重新声明。3、它们都被提升到其作用域的顶端。但是,虽然使用变量undefined初始化了var变量,但未初始化let和const变量。4、尽管可以在不初始化的情况下声明var和let,但是在声明期间必须初始化const。

2023-02-17 11:12:18 2938

原创 理解 mysql 之 count(*)的性能问题

既然说到count(*),就不能不说一下count家族的其他成员,比如:count(1)、count(id)、count(普通索引列)、count(未加索引列)。而innodb则不同,由于它支持事务,有MVCC(即多版本并发控制)的存在,在同一个时间点的不同事务中,同一条查询sql,返回的记录行数可能是不确定的。对于有些业务场景,新增数据很少,大部分是统计数量操作,而且查询条件很多。count(未加索引列):它会全表扫描获取所有数据,解析中未加索引列,然后判断是否为NULL,如果不是NULL,则行数+1。

2023-01-03 10:38:51 1670

原创 深入理解DOM

HTML DOM 定义了用于 HTML 的一系列标准的对象,以及访问和处理 HTML 文档的标准方法。通过 DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性。可以对其中的内容进行修改和删除,同时也可以创建新的元素。HTML DOM 独立于平台和编程语言。它可被任何编程语言诸如 Java、JavaScript 和 VBScript 使用。

2022-12-12 17:10:29 2616

原创 JS 中 == 与 === 的区别

1、== 判断相等的程度较浅,只判断数值而不判断数据类型,换言之 ,用= = 作比较的时候可以自动为我们转换数据的类型;2、=== 判断相等的程度比 = =深,即判断数值,也判断数据类型,不可以自动转换数据的类型。== 和 === 都是用来判断相等的,区别是:相等的程度的深浅。注:= = 会自动转换数据的类型 ,所以有的时候会产生一些问题,总结:=== 更加严谨,建议使用 ===

2022-12-12 11:42:34 300

原创 Oracle 中的定时任务

job 的 id,此id不是随便填写的,而是执行select * from user_jobs;查询到定时任务名称对应的 id。1、declare后面的 jobno 是一个数字类型,主要的用途是给定时器保存id,下面的job 引用此 jobno。2、job:输出变量,是此任务在任务队列中的编号;3、what:执行的任务的名称及其输入参数;5、interval:任务执行的时间间隔。4、next_date:任务执行的时间;

2022-12-09 17:33:28 13467

原创 Oracle中查看触发器使用到的SQL

1.1、查all_triggers表得到trigger_name1.2、根据trigger_name查询出触发器详细信息1.3、在Oracle数据库中查询所有触发器、存储过程、视图、表方法1:方法2:

2022-12-07 20:51:09 3198

原创 Oracle数据库查询唯一约束、索引

查询外键约束的列名:查询引用表的键的列名:五、查询表的所有列及其属性查询Oracle表的信息(表,字段,约束,索引)1、查询出所有的用户表select * from user_tables 可以查询出所有的用户表2、查询出用户所有表的索引select * from user_indexes3、查询用户表的索引(非聚集索引):select * from user_indexes where uniqueness=‘NONUNIQUE’4、查询用户表的主

2022-12-03 22:36:22 5057

原创 SQL中正则表达式的运用

1.1、REGEXP_LIKE 匹配:REGEXP_LIKE(String, Regexp)举例:查询结果:1.2、REGEXP_INSTR 包含Oracle数据库中的REGEXP_INSTR函数的语法是:source_char:搜索值的字符表达式,可以是任何数据类型CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB或NCLOB的。pattern:正则表达式position:可选。搜索在字符串中的开始位置。如果省略,则默认为1,这是字符串中的第一个位置。occurrence:可选

2022-12-03 16:13:47 12352

原创 Oracle 中用sql语句查看外键约束和表结构

constraint_type:表示约束类型,R表示外键,P表示主键。constraint_name:表示约束名称。

2022-12-02 11:21:12 8719

原创 400 HTTP响应码之客户端错误

HTTP/1.1 可用。HTTP/1.1 可用。请求实体大小超过服务器的设置的最大限制,服务器可能会关闭HTTP链接并返回Retry-After 头字段。HTTP/1.1 可用。HTTP/1.1 可用。请求中包含的Range头字段无法被满足,通常是因为Range中的数字范围超出所请求资源的大小。HTTP/1.1 可用。HTTP/1.1 可用。HTTP/1.1 可用。HTTP/1.1 可用。HTTP/1.1 可用。HTTP/1.1 可用。服务器不支持客户端所请求的媒体类型,因此拒绝该请求。

2022-11-30 10:14:30 1049 1

原创 Oracle中的dual表

2、DUAL表是一个单行单列的虚拟表,这个表只有1列DUMMY,数据类型为VARCHAR2(1),不论执行什么操作(不要删除记录),它都只有一条记录——“X”,Oracle有内部逻辑保证DUAL表中只有一条数据。1、DUAL表是Oracle提供的最小的工作表,是sys用户下的一张内部表,所有用户都可以使用DUAL名称访问,无论什么时候这个表总是存在。4、dual是Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中。2、查看当前日期、时间。1、查看当前连接用户。

2022-11-28 10:28:45 1955

原创 了解 什么是 22 端口

一般在云服务商的服务器管理后台,找到安全组选项,在弹出的“新建安全组”窗口中,根据实际需求,选择“放通全部端口”或者“放通22,80,443,3389端口和ICMP协议”模板,填写安全组名称,设置所属项目。一般Linux云服务器要放通22号端口, Windows云服务器需要放通3389号端口。在修改了服务的端口之后,还需要在对应的安全组,开放对应的端口,否则会导致服务不能使用。在使用的过程中,一些错误的操作,关闭防火墙,再开启防火墙会导致22端口不允许访问了。第三步:设置防火墙允许22端口访问。

2022-11-21 09:27:43 24306

原创 了解 Oracle 中的主键和外键

例如超女基本信息表,编号的字段名是id,在超女选秀活动中,每个超女的编号肯定是唯一的,不可能存在两个编号相同的超女,否则会引起混乱,我们可以把id字段设置为T_GIRL表的主键,后面的工作交给数据库,如果试图往表中插入多条id相同的记录,数据库将拒绝。在Oracle数据库中,虽然主键不是必需的,但是最好为每个表都设置一个主键,不管是单字段主键还是多字段主键(复合主键),它的存在代表了表结构的完整性,主键还可以用于其他表的外键关联,外键的知识下面再介绍。对超女基本信息表来说,赛区代码是该表的外键。

2022-11-20 23:07:00 4143

原创 了解 Oracle 中的视图

当创建视图后,Oracle会验证视图的有效性,如修改了基本表,可能会导致视图的不可用,数据字典的USER_OBJECTS的status字段中记录了视图的状态(VALID-有效;视图是基于一个或者多个表上的预定义查询,这些表称为基表,从视图中查询数据的方法与从基表中查询数据的方法相同。视图是一个查看数据的窗口,是查询语句模板,视图本身没有数据,在数据库中只保存了视图的定义。即使基表不存在,也可以创建该视图,但是该视图不能正常使用,当基表创建成功后,视图才能正常使用。3)查询视图的状态,成了INVALID。

2022-11-20 22:46:44 3327

原创 认识字符集、ASCII、GBK、Unicode、UTF-8

Unicode 是国际组织制定的,可以容纳世界上所有文字、符号的字符集。注意:技术人员在开发时都应该使用UTF-8编码!汉字编码字符集,包含了2万多个汉字等字符,注意:GBK 兼容了 ASCII 字符集。

2022-11-03 21:28:29 2338

原创 总结 拦截器(Interceptor) 和 过滤器(Filter)的区别

拦截器(Interceptor) 和 过滤器(Filter)的区别是面试中常问的问题,也是开发中容易被大家混淆的问题,在此总结下,希望对大家有所帮助。2.1、概念Servlet规范中三个技术 Servlet、Listener、Filter(顺序为L F S)。Filter是sun公司中servlet2.3后增加的一个新功能,在javaEE中定义了一个接口 javax.servlet.Filter来描述过滤器。2.2、作用通过Filter可以拦截访问web资源的请求与响应操作.。

2022-10-26 17:55:26 1293

原创 Oracle 中常用的字符串函数总结

从指定位置start_pos截取字符串string的length位,如果不指定length(格式2)则从指定位置start_pos截取字符串string。从字符串string的指定位置start_pos开始查询子串sub_string第times次出现的位置。与trim类似,去掉前导使用关键字leading,去掉后缀使用关键字trailing,都去除不实用关键字。start_pos等于0或者1均从左边第一位开始截取。如果start_pos为负整数,则从右截取字符串。trim 去字符串首尾空格。

2022-10-26 15:00:42 10031

原创 Oracle 中的 程序包

程序包(PACKAGE,简称包)是一组相关过程、函数、变量、常量和游标等PL/SQL程序设计元素的组合,作为一个完整的单元存储在数据库中,用名称来标识包。它具有面向对象程序设计语言的特点,是对这些PL/SQL 程序设计元素的封装。包类似于c#和JAVA语言中的类,其中变量相当于类中的成员变量,过程和函数相当于类方法。把相关的模块归类成为包,可使开发人员利用面向对象的方法进行存储过程的开发,从而提高系统性能。

2022-10-26 11:40:35 1309

原创 Oracle 触发器详解

可以在触发器体的语句块中使用 inserting、updating、deleting谓词,这些谓词会返回相应的DML操作的布尔值,如果为true,则表示执行了相应的insert、update、delete操作。new谓词:执行后的字段的值的名称,比如update一个表时,使用:new.columnname是指执行 update操作之后的列的值。old谓词:执行前的字段的值的名称,比如update一个表时,使用:old.columnname是指执行update操作之前的列的值。

2022-10-24 23:07:08 17550

原创 Oracle 中常用的函数总结

Oracle 常用函数的总结

2022-10-24 11:07:14 1613

空空如也

空空如也

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

TA关注的人

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