自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(184)
  • 资源 (8)
  • 收藏
  • 关注

原创 EasyPoi表格导入添加校验

import cn/*** 自定义校验"男" , "女" };// 姓名和性别都为空,就不处理,算校验通过 return new ExcelVerifyHandlerResult(true);if(!return new ExcelVerifyHandlerResult(false , "性别不合法");} }/*** 自定义校验"男" , "女" };

2024-04-13 15:07:50 422

原创 EasyPOI复杂表格导入

方式一和方式二,不同之处在于导入表格实体的设计,方式一是通过来映射合并的表格列,方式二是直接通过@Excel来映射要读取的表格列,然后在导入的时候,设置表格真正要读取的表格列和表格字段真正值从哪行读取。

2024-04-10 00:10:04 392

原创 github连不上

这个错误信息表明你在尝试访问 GitHub 时遇到了 SSL 证书问题。这通常是因为你的系统无法验证服务器的 SSL 证书,可能是由于证书已过期、未正确配置或者你正在使用的 Git 客户端版本过旧。忽略 SSL 验证:如果你只是在本地开发并且不需要连接到外部网络,你可以选择忽略 SSL 证书验证。但请注意,这样做会降低安全性,因为你的数据传输将不再加密。

2024-01-28 18:42:10 644

原创 VS code的使用介绍

Visual Studio Code 是一个轻量级但功能强大的源代码编辑器,可以在桌面上运行,并且适用于 Windows、macOS 和 Linux。它内置了对 JavaScript、TypeScript 和 Node.js 的支持,并拥有针对其他语言和运行时(例如 C、C#、Java、Python、PHP、Go、.NET)的丰富扩展生态系统。

2024-01-07 01:25:50 1095

原创 TypeScript

⾃定义类型,可以更灵活的限制类型// 性别的枚举Male,Female// 自定义一个年级类型(高一、高二、高三)// 自定义一个学生类型// 定义两个学生变量:s1、s2s1 = {name:'张三',age:18,gender:Gender.Male,grade:1}s2 = {name:'李四',age:18,gender:Gender.Female,grade:2}// Person接⼝// 应该具有的属性// 应该具有的⽅法// Person类型/*// 应该具有的属性。

2024-01-01 18:12:54 948

原创 vue3使用create-vue创建项目

" />

2023-12-19 00:46:01 615

原创 mapstruct个人学习记录

在工作中,我们经常要进行各种对象之间的转换。persistent object持久对象,对应数据库中的一条VO: view object表现层对象,最终返回给前端的对象DTO:data transfer object数据传输对象,如dubbo服务之间的传输的对象po、vo、dto的详细介绍如果这些对象的属性名相同还好,可以使用如下工具类赋值避免使用Apache BeanUtils,性能较差如果属性名不同呢?如果是将多个PO对象合并成一个VO对象呢?好在有MapStruct,可以帮助我们快速转换。

2023-12-10 23:59:26 128

原创 JDK17的安装与配置

自定义的安装路径,不可包含中文和非法字符。此jdk17安装的系统是win10系统。变量值为jdk17的安装目录。这里选择JDK17进行下载。

2023-12-02 15:13:30 107

原创 应用可观测性OpenTelemetry简介

日志是特定事件在特定时间点发生的文本记录。生成日志条目的触发器是应用程序代码的一部分,因此当执行相关代码时,系统会重复产生日志条目。日志条目记录了事件发生的时间,并提供了一个载荷,包括描述事件性质、事件上下文以及其他后续分析可能有用的元数据。根据日志的创建方式、使用的格式化规则以及自动化逻辑处理的难度,日志可以广泛分为以下几类:日志提供了有关应用程序行为的可靠且易于理解的信息源。开发人员在故障排除代码并验证其执行时常依赖于日志。当故障位于整体应用程序的特定组件中时,此数据可能提供了识别系统故障和其他问题根本

2023-11-25 16:13:11 122

原创 搭建线上jvm监控

启动prometheus,查看指标情况 prometheus.exe --config.file=file(此启动方式是windows下,安装包解压后,在项目根目录下执行的命令)访问 http://localhost:8080/actuator/prometheus 查看指标是否正常。模板地址 https://grafana.com/grafana/dashboards。

2023-11-24 00:12:42 402

原创 使用pgAdmin创建ERD

打开工具详细使用介绍。

2023-10-04 17:51:18 379

原创 postgresql-物化视图

如果想要修改物化视图定义中的查询语句,需要删除并重建物化视图。表示如果存在依赖对象则提示错误信息,这是默认值。可以避免删除一个不存在的物化视图时产生错误;语句不能修改物化视图定义中的查询语句;表示级联删除除依赖于该物化视图的对象;语句还提供了其他的修改功能,具体参考。postgresql使用。

2023-10-04 17:18:15 1100

原创 postgresql16-新特性

any_value 返回任意一个值。

2023-10-04 16:11:11 474

原创 postgresql-聚合函数增强功能

【代码】postgresql-聚合函数增强功能。

2023-10-04 15:54:42 257

原创 postgresql-自增字段

【代码】postgresql-自增字段。

2023-10-04 01:00:31 373

原创 postgresql新特性之Merge

【代码】postgresql新特性之Merge。

2023-10-03 23:38:37 606

原创 postgresql-备份与恢复

PostgreSQL 提供了备份单个数据库的工具 pg_dump,在安装目录下bin文件夹下面,关于 pg_dump 工具的各种选项,可以参考。就是备份所有的数据库文件,执行一次完整的 PostgreSQL 数据库集群备份。指定自定义格式,这种格式的备份,还原时需要使用PostgreSQL 提供的 pg_restore 工具。针对不同的备份格式,备份每次备份的数据量较小,但是恢复时需要基于全量备份,并依次恢复增量部分,时间较长。是一种不完全的恢复,使用备份的文件将数据库恢复到执行备份时的状态。

2023-10-03 18:42:55 2003

原创 postgresql-管理表空间

表空间的名称不能以 pg_开头,它们是系统表空间的保留名称;PostgreSQL 中的表空间与其他数据库系统不太一样,它更偏向于一个物理上的概念。只有表空间的拥有者或超级用户能够删除表空间。其他数据库中也可能存在依赖于被删除表空间的对象,同样需要先进行处理,才能删除表空。在表空间对应的目录中,创建一个特定版本的子目录(PG_版本_创建时间)修改 安装目录下data文件夹下表空间的链接,指向新的目录。删除表空间时,同时会删除文件系统中对应的表空间子目录。只有表空间的拥有者或超级用户才能修改表空间的定义。

2023-10-02 10:58:33 886

原创 postgresql-管理数据表

当前用户名为 postgres,但是不存在名为 postgres 的模式,因此我们创建的表会位 public 模式中。除了自己定义表的结构之外,PostgreSQL 还提供了另一个创建表的方法,就是通过一个查。以上语句出错的原因在于新增的字段 notes 存在非空约束,但是对于已有的数据该字段的值。如果被删除的表存在依赖于它的视图或外键约束,需要指定 CASCADE 选项执行级联删除。表级约束和字段约束类似,只不过它是基于整个表定义的约束,还能够为约束指定自定义的。访问表的时候也是一样。

2023-09-30 17:51:58 504

原创 postgresql-数据库与模式

创建数据库对象时,只需要指定存储对象的表空间的名。,每个 PostgreSQL 实例管理的都是一个数据库集群,它可以包含多个数据库。action 指定了要执行的修改操作,例如修改数据库的名称、所有者、默认表空间、数。删除数据库会同时删除该数据库中所有的对象,以及文件系统中的数据目录。创建了模式之后,我们就可以在模式中创建各种数据库对象,例如表、数据类型、函数以及。注意,只有超级用户或者数据库的拥有者才能修改数据库的默认会话变量。),在 PostgreSQL 中,数据库对象(例如表)在文件系统中对应的是文。

2023-09-25 06:26:39 746

原创 postgresql用户和角色

使用角色 user1 登录之后,数据库会话将会拥有 user1 自身的特权和 net_admins 所有的特权,在删除角色之前,需要删除它所拥有的对象,或者将这些对。权限的角色称为用户,包含其他成员(也是角色)的角色称为组(group)。除了授权表的访问权限之外,GRANT 语句还支持字段、视图、序列、数据库、函数、过程、角色可以拥有数据库对象(例如表和函数),并且可以将这些对象上的权限授予其他角色,由于角色可以拥有数据库中的对象,也可以拥有访问其他对象的权限,删除角色通常不仅仅。

2023-09-24 23:13:22 735

原创 postgresql-触发器

PostgreSQL 触发器(trigger)是一种特殊的函数,当某个数据变更事件(INSERT、UPDATE、DELETE 或者 TRUNCATE 语句)或者数据库事件(DDL 语句)发生时自动执行,而不是由用户或者应用程序进行调用基于某个表或者视图数据变更的触发器被称为数据变更触发器(DML 触发器),基于数据库事件的触发器被称为事件触发器(DDL 触发器)。一般我们更多使用的是数据变更触发器行级(row-level)触发器和 语句级(statement-level)触发器。

2023-09-23 17:27:45 635

原创 postgresql-存储过程

创建一个自定义的 PL/pgSQL 函数,可以使用 CREATE FUNCTION 语句AS $$DECLAREBEGINstatements;...END;$$CREATE 表示创建函数,OR REPLACE 表示替换函数定义;name 是函数名;括号内是参数,多个参数使用逗号分隔;argmode 可以是 IN(输入)、OUT(输出)、INOUT(输入输出)或者 VARIADIC(数量可变),默认为 IN;argname 是参数名称;argtype 是参数的类型;

2023-09-23 13:40:31 1113

原创 postgresql-视图

视图(View)本质上是一个存储在数据库中的查询语句。视图本身不包含数据,也被称为虚拟表。我们在创建视图时给它指定了一个名称,然后可以像表一样对其进行查询。

2023-09-16 00:25:29 583

原创 postgresql-索引与优化

索引(Index)可以用于提高数据库的查询性能;但是索引也需要进行读写,同时还会占用更多的存储空间;因此了解并适当利用索引对于数据库的优化至关重要。本篇我们就来介绍如何高效地使用 PostgreSQL 索引。-- 创建表name text-- generate_series 产生序列如果没有索引,数据库需要扫描整个表才能找到相应的数据。利用 EXPLAIN 命令可以看到数据库的执行计划,也就是 PostgreSQL 执行 SQL 语句的具体步骤执行计划参考文档。

2023-09-13 23:20:57 1031

原创 postgresql -数据库事务与并发控制

默认情况下,PostgreSQL 自动为以上 INSERT 语句开始一个事务,执行插入操作之后自动。

2023-09-13 00:05:23 232

原创 postgresql-DML

ON CONFLICT…义了一个 CTE,RETURNING *返回了被删除的数据,构成了结果集 deletes;postgresql 同样对 update 语句进行了扩展,支持使用 returning 返回更新后的数据值。其中,WHERE 决定了需要更新的数据行,只有满足条件的数据才会更新;如果在 CTE 中使用 DML 语句,我们可以将数据修改操作影响的结果作为一个临时表,然。我们可以在 CTE 中使用 DML 语句,也可以将 CTE 用于 DML 语句。条件,将会更新表中的所有数据,需要谨慎使用。

2023-09-12 00:03:43 299

原创 postgresql-窗口函数种类

常用的聚合函数,例如 AVG、SUM、COUNT 等,也可以作为窗口函数使用。4 个窗口函数的 OVER 子句完全相同,此时可以采用一种更简单的写法。取值窗口函数用于返回指定位置上的数据。LAG 和 LEAD 函数同样用于计算销量数据的环比/同比增长。

2023-09-10 21:13:33 563

原创 postgresql-窗口函数

包括 AVG、COUNT、MAX、MIN、SUM 以及STRING_AGG。聚合函数的作用是针对一组数据行进行运算,并且返回一条汇总结果分析的窗口函数(Window Function)。不过,窗口函数不是将一组数据汇总为单个结果,而是针对每一行数据,基于和它相关的一组数据计算出一个结果。下图演示了聚合函数和窗口函数的区别区别在于后者包含了 OVER 关键字;空括号表示将所有数据作为整体进行分析,所以得到的数值和聚合函数一样是窗口函数的名称;expression。

2023-09-10 16:23:47 758

原创 postgresql-通用表达式

递归查询将员工表的 manager_id 与已有结果集中的 employee_id 关联,获取每个。括号内是 CTE 的内容,可以是 SELECT 语句,也可以是 INSERT、UPDATE、DELETE。sql_statement 是主查询语句,可以引用前面定义的 CTE。cte_query_iterative 是递归部分,可以引用 cte_name;如果递归查询无法从上一次迭代中返回更多的数据,将会终止递归并返回结果。cte_name 指定了 CTE 的名称,后面是可选的字段名。

2023-09-10 15:29:05 456

原创 postgresql-集合运算

【代码】postgresql-集合运算。

2023-09-07 21:41:24 463

原创 postgresql-子查询

子查询(Subquery)是指嵌套在其他 SELECT、INSERT、UPDATE 以及 DELETE 语句中的查询语句子查询的作用与多表连接查询有点类似,也是为了从多个关联的表中返回或者过滤数据。例如,我们想要知道哪些员工的月薪大于平均月薪,可以通过子查询实现子查询必须位于括号中,也称为内查询,包含子查询的查询语句被称为外查询。除了 WHERE子句之外,其他子句中也可以使用子查询,例如 SELECT 列表、FROM 子句等。

2023-09-07 07:23:27 1221

原创 postgresql-类型转换函数

类型转换函数用于将数据从一种类型转换为另一种类型。

2023-09-05 22:48:35 2656

原创 postgresql-常用日期函数

PostgreSQL 提供了以下日期和时间运算的算术运算符。获取当前系统时间-- 当前系统时间一周后的日期。

2023-09-05 22:01:42 7819

原创 postgresql-字符函数

regexp_replace(string, pattern, replacement [, flags])函数字符串 string 中匹配 POSIX 正则表达式。overlay(string placing substring FROM [for])函数使用 substring 覆盖字符串 string 中从。ltrim(string [,trim([leading | trailing | both] [FROM] string [, characters])函数的作用相同。

2023-09-04 00:41:27 1272

原创 postgresql-常用数学函数

【代码】postgresql-常用数学函数。

2023-09-02 23:50:38 1011

原创 postgresql-条件表达式

postgresql-条件表达式简单Case表达式搜索Case表达式缩写函数总结简单Case表达式select e.first_name ,e.last_name ,e.department_id ,case e.department_id when 90 then '管理' when 60 then '开发' else '其他' end as "部门"from cps.public.employees e ;-- 统计部门员工数量select -- 部门id为10,返回1

2023-09-02 22:52:57 775

原创 postgresql-多表连接

内连接用于返回两个表中匹配的数据行,使用关键字INNER JOIN表示,也可以简写成JOIN;左外连接返回左表中所有的数据行;对于右表,如果没有匹配的数据,显示为空值。左外连接使用关键字 LEFT OUTER JOIN 表示,也可以简写成 LEFT JOIN右外连接返回右表中所有的数据行;对于左表,如果没有匹配的数据,显示为空值。右外连接使用关键字 RIGHT OUTER JOIN 表示,也可以简写成 RIGHT JOIN全外连接等效于左外连接加上右外连接,返回左表和右表中所有的数据行。全外连接使

2023-09-02 17:53:02 1990

原创 jdk8计算一个人的年龄

【代码】jdk8计算一个人的年龄。

2023-08-19 19:16:27 157

原创 Optional的基础运用

/ of(T t):封装数据t生成Optional对象,要求t非空,否则报空指针异常 Optional < String > optional = Optional . of(str);// empty():创建的Optional对象内部的value = null Optional < Object > op1 = Optional . empty();if(!

2023-08-19 09:41:45 111

oracle jdk17

jdk17

2023-11-14

easypoi-test-master.zip

easy-poi资料

2022-01-17

router-admin.zip

后台权限 管理

2021-09-13

vue2.zip(vue2学习资源文件)

vue2使用语法笔记

2021-09-06

progree.zip

logic-flow学习案例,新手从入门到熟练使用参照案例

2021-07-26

TestDemo.zip

springmvc分层设计的代码,下载可进行学习与研究,适合新手党学习,老手党复习。里面有关于springmvc分层的源码与页面

2020-04-13

ssm框架整合的学习代码

springmvc和mybatis整合(一)的相关学习代码,适合新手入门,学习与掌握 springmvc和mybatis

2020-03-31

mybatis.doc

mybatis从入门到精通,mybatis的详细中文学习文档,简单易学,快速上手,主要针对新手和复习党使用

2020-03-15

mybatis笔记.docx

mybatis从入门到精通,mybatis的详细中文学习文档,简单易学,快速上手,主要针对新手和复习党使用

2020-03-09

空空如也

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

TA关注的人

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