自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java自定义注解+aop实现

java自定义注解+aop实现。

2024-05-17 10:57:48 106

原创 在Java中,如果使用foreach循环修改List集合中的元素,那么原List中的内容确实会发生变化

如果在foreach循环中对List中的对象进行修改,那么原List中的对象确实会被修改。通过这个引用的副本,可以访问并修改对象的属性,而这些修改会反映到原List中的对象上。:Java中的对象存储在堆内存中,而变量(包括List中的引用)存储在栈内存中。当通过foreach循环修改List中的对象时,实际上是在修改堆中的对象,因此List中对应的引用指向的对象也会被修改。:尽管可以在foreach循环中修改List中的对象,但是不能通过foreach循环来添加或删除List中的元素。

2024-05-16 08:29:55 307

原创 pgsql中如何in数组

这个查询将从表中选择所有id等于1、2或3的行。你可以将数组中的值替换为你的字符串数组。unnest 函数将数组展开为一组行,然后 IN 子句用来匹配这些行。

2024-05-16 08:26:49 305

原创 pgsql的存储过程中$$ 和$dbvis$有什么区别

1、$$:通常用于创建函数或存储过程时,定义PL/pgSQL代码块的开始和结束。这种语法要求在创建函数或存储过程时,将整个PL/pgSQL代码块包含在两个$$符号之间。这是创建函数或存储过程时最常见的用法。2、$dbvis$:是一种特殊的代码块语法,用于DBVIS(数据库可视化)工具中。它允许在代码块中使用特殊的变量引用方式,这些变量在执行期间会被替换为实际值。这种语法主要用于DBVIS工具中的动态SQL执行,不是标准的PL/pgSQL代码块定义方式。

2024-05-15 09:31:01 217

原创 pgsql执行动态sql语句的存储过程

上述代码创建了一个名为get_employee_details的存储过程,该过程接受一个参数:p_employee_id表示员工ID。存储过程返回一个表,包含员工的详细信息,包括员工ID、名字、姓氏和部门名称。**

2024-05-15 09:24:32 319

原创 SQL语句作为参数传入mybatis执行

只需要写好sql语句参数准备好传进去,mybatis会自动进行映射。

2024-05-14 15:15:25 176

原创 vue组件循环依赖

在这种情况下,虽然它们循环引用,但只要它们不是在创建时就相互引用(例如在created或mounted钩子中),通常不会有问题。Vue的响应式系统会确保只有在实际需要时才渲染相关组件。2、解决方式:使用异步注册。

2024-05-11 08:45:03 209

原创 vuedraggable拖拽数据不正确的bug

5、给备选组件加一个choose方法。可以通过拖拽元素的下标,拿到这个拖拽下标缓存起来,执行备选组件clone克隆方法的时候,克隆拖拽元素错误的问题即可解决问题。4、换思路解决问题,既然元素默认克隆的时候有问题,我就手动找到元素克隆然后加到目标数组里面。2、碰到的问题是从备选区拖拽数据,但是放到放置区之后,是拖拽元素的下一个元素。1、需求是两个备选区域,一个拖拽元素放置区域,两个组件。3、查找资料也没有找到什么bug,可能是版本兼容问题。

2024-04-23 19:18:03 180

原创 一个不同长度元素排序找行和列的需求

1、需求:三种长度的元素,分别是4、8、12,每一行的长度是12,超过12就排到下一行,我们将这三种类型的多个元素打乱,然后找到这些元素对应的行和列。

2024-04-18 18:36:29 157

原创 elmentui树形表格使用Sortable拖拽展开行时拖拽bug

3、每次当表格展开的时候,因为展开的数据和要拖拽表格数据同属于拖拽元素,所以每次都可以展开内容,这个是不允许的,所以我需要在展开的时候禁止拖拽。4、解决方式:先把这个拖拽对象赋值给vue的一个属性,然后在展开的时候把这个拖拽对象销毁,所有的展开行都关闭的时候再生成一下拖拽对象。1、使用elemntui的el-table使用Sortable进行拖拽,如下。

2024-04-16 18:44:24 405

原创 vue方法加载和dom更新的时间段

执行nextTick:在Watcher的update方法内部,会执行nextTick:在Watcher的update方法内部,会执行nextTick,将清空Watcher队列的方法加入到微任务队列中。但注意,此时还没有开始渲染模板,所以不能访问DOM元素。这是挂载阶段,Vue实例已经挂载到DOM上,此时可以访问DOM元素,并且如果组件需要与后端进行交互,通常在这个钩子函数中进行。在组件的整个生命周期中,还有其他如updated、beforeDestroy等阶段,这些阶段也会根据需要进行方法的调用和处理。

2024-04-09 10:58:13 566

原创 vue中this.$nextTick的作用

避免在创建初期操作DOM:在Vue实例的created生命周期钩子中,DOM可能还没有完全渲染,因此在这个阶段进行的DOM操作应该放在this.$nextTick的回调函数中,以确保DOM已经可用。基于新视图操作:当需要在数据更新后,基于新的DOM视图进行某些操作时,可以使用this.$nextTick来确保这些操作是在DOM更新完成后执行的。获取最新DOM状态:在变更数据后,如果需要立即获取最新的DOM节点对象,可以使用this.$nextTick来等待DOM更新完成后再进行操作。

2024-04-09 10:49:50 295

原创 veu视图刷新Vue.$set和Vue.$forceUpdate的区别

综上所述,$ set 是一个更安全、更符合Vue响应式设计的方法,它能够帮助你维护数据的响应性,而$forceUpdate应当谨慎使用,以避免破坏Vue的数据驱动视图原则和潜在的性能问题。在实际开发中,优先使用$ set 来保证数据和视图的同步,而在必要时才考虑使用$forceUpdate。

2024-04-01 10:44:39 301

原创 Vue.js 中::v-deep

:v-deep 是 Vue.js 提供的一个伪类,它可以让你在父组件的样式中直接指定子组件的样式,即使这些样式是带有 scoped 属性的。但是有时候,你可能需要从父组件级别改变子组件的样式,这时就可以使用 ::v-deep。总结来说,::v-deep 是 Vue.js 中一个非常有用的工具,它使得在复杂组件树中的样式管理变得更加灵活和可控。然而,为了保持样式的封装性和可维护性,应当谨慎使用这一特性。在 Vue.js 中,::v-deep用于突破 scoped 样式的限制,从而允许你修改子组件的样式。

2024-03-26 19:29:21 335

原创 java中使用@Pointcut和使用自定义注解对切面增强的区别

Pointcut:是Spring AOP框架提供的注解,用于定义切点表达式。例如:@Pointcut(“execution(* com.example.service.(…))”)。自定义注解:需要自己创建一个新的注解,并在切面类上使用该注解来定义切点。// 注解内容。

2024-03-21 19:21:55 319

原创 java子类向父类转型再转回子类

2024-03-20 18:02:28 93

原创 spring redis 工具类

spring redis 工具类。

2024-03-16 17:42:57 533

原创 java分割大文件为多个小文件

如果你希望每读取到5000行数据时,就生成一个新的文件,并在每个新文件中继续写入接下来的5000行,你可以稍微修改上面的代码。

2024-03-12 09:59:17 463

原创 springboot、vue、uniapp项目的部署和运行(超链接可直接跳过去)

1、首先要安装、、、2、安装、、3、、、

2024-03-10 16:13:08 417

原创 elementui调用组件默认方法想另加参数问题

需求:el-tree组件的check-change方法,默认三个参数:data,checked,indeterminate,我在传参时想另加参数,但是写到里面就会把原三个参数替换掉,这时候我们就要这样写。

2024-03-08 16:35:08 445

原创 Long使用==

运算符比较它们的引用时结果为false,应该使用equals()方法,所以在我们写代码的时候一定要注意这些小细节,单独拿出来我们都能看到问题,但是在一长串代码中问题很难亏快速排查到。1、背景:测试程序的时候发生了没数据的bug,于是在sevice层的一堆代码中调试,最后发现问题是在stream的filter方法中对两个Long使用==造成的问题。

2024-03-07 15:08:45 354

原创 vue在线查看pdf文件

vue在线查看pdf文件

2024-03-06 10:25:12 825

原创 npm ERR! request to https://registry.npm.taobao.org/pdfjs-dist failed, reason: certificate has expir

更换npm镜像源:您可以通过运行 npm config set registry https://registry.npmjs.org/ 来将npm的镜像源更换为官方源。如果您仍然希望使用国内的镜像,可以设置为 npm config set registry https://registry.npmmirror.com 来使用淘宝的新镜像地址。淘宝的npm镜像服务已经从 registry.npm.taobao.org 迁移到了 registry.npmmirror.com。

2024-03-05 19:30:03 414

原创 java解析zip中xml文件的内容

java解析zip中xml文件的内容。

2024-03-05 14:47:42 604

原创 java导出多个xml文件的压缩zip

java导出多个xml文件的压缩zip

2024-03-04 19:09:51 925

原创 uniapp的h5端在线预览文件

uniapp的h5端在线预览文件

2024-03-02 18:55:28 1194

原创 uniapp的h5端保存文件

uniapp的h5端保存文件

2024-03-02 18:45:22 1092

原创 uniapp下载文件

【代码】uniapp下载文件。

2024-03-01 14:15:16 436

原创 uniapp每次进入页面都会执行的方法

可以使用onShow方法。onShow在每次页面显示的时候都会被触发,不论是第一次显示还是从其他页面返回后的显示在,例如。

2024-02-28 09:02:10 728

原创 MyBatis标签获取数组或者集合长度的方法

MyBatis标签获取数组或者集合长度的方法

2024-02-27 16:24:24 886

原创 pgsql隐式联查的笛卡尔积和子查询性能

使用了子查询来先从table_b中筛选出符合条件的con值,然后再基于这些值去查询table_a。这种方法可以避免产生大型的中间结果集,因为它首先减少了需要从table_a中检索的数据量。如果table_a是小表,那么这种策略尤其有效,因为它可以快速地从table_a中定位到所需的记录。:使用了笛卡尔积和WHERE子句来过滤结果。即使两个表的con字段和id字段都是索引,由于笛卡尔积的产生,索引的优势可能会被抵消。1、table_a表的con字段是索引,table_b的id字段是索引。

2024-01-31 16:41:03 775

原创 pgsql中in 和 join 怎么选

总的来说,对于小数据集,IN可能更简单易用;而对于大数据集或复杂连接,JOIN通常是更好的选择。在实际使用中,应该根据具体情况进行测试和评估,以确定哪种方法更适合当前的需求和数据环境。

2024-01-31 10:03:14 727

原创 为什么pgsql(内关联查询或者with字句时)会导致索引失效

pgsql索引失效

2024-01-30 16:18:22 860

原创 pgsql中with子句和直接查询差别

总的来说,WITH子句提供了一种将复杂查询分解为更易管理的部分的方法,同时也为性能优化和代码重用提供了可能性。在实际使用中,选择WITH子句还是直接查询应根据具体的查询需求和上下文来决定。

2024-01-30 16:03:48 638

原创 pgsql的查询语句有没有走索引

在执行计划中,如果看到索引扫描(Index Scan)或位图堆扫描(Bitmap Heap Scan),则表示查询走了索引。如果看到顺序扫描(Seq Scan)或位图扫描(Bitmap Scan),则表示查询没有走索引,而是进行了全表扫描。

2024-01-30 15:59:34 1104

原创 隐式内连接(inner join)和LEFT JOIN

3、总的来说,INNER JOIN在处理大数据集时通常具有更好的性能,而LEFT JOIN在特定情况下,如小表关联或者需要保留左表所有记录时,性能可能与INNER JOIN相当。1、INNER JOIN:由于它只返回两个表中匹配的行,因此在处理大量数据时,如果匹配的行相对较少,INNER JOIN可能会更快,因为它不需要处理左表中没有匹配的记录。3、总的来说,隐式内连接是INNER JOIN的一种,它通过WHERE子句来定义连接条件,而显式INNER JOIN则通过JOIN关键字和ON子句来实现。

2024-01-30 10:19:58 458

原创 pgsql临时表不能进行merge into 使用INSERT ... ON CONFLICT DO UPDATE替换进行合并

从db2中迁移存储过程,在db2存储过程中使用了merger into ,但是在迁移到pgsql中的存储过程后,发现不能使用,通过查阅资料发现在pgsql中不能对临时表进行merge into。1、进行两次操作,存在相同主键的数据进行更新操作,不存在的进行插入,分了两部进行。思路:实现合并数据并非非要使用merge into ,想了两个方式。具体操作还是要根据业务进行。

2024-01-26 15:22:20 813

原创 vue项目webpack打包

vue项目打包

2024-01-16 14:55:23 408

原创 java时间转字符串问题

1、将date类型的数据转为字符串的时候碰到一个问题,老是将2023-12-31转换为2024,最后发现是格式YYYYMM的原因,将大写Y转换成小写即可。2、当我们用到时间转换的时候,最好查一下每个格式字符的意思。

2024-01-03 09:08:29 369

原创 vue项目莫名浏览器内存溢出原因

组件name相同导致。

2023-12-12 18:33:50 206

空空如也

空空如也

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

TA关注的人

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