自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

许三金的博客

一只程序猿的学习记录

  • 博客(32)
  • 收藏
  • 关注

原创 AES和RSA对比解密速度

AES(Advanced Encryption Standard)和RSA(Rivest-Shamir-Adleman)是两种不同类型的加密算法,它们在加密和解密速度上有显著的差异,因为它们被设计用于不同的用途。总体而言,对称加密算法(如AES)通常比非对称加密算法(如RSA)更快速。因此,在实际应用中,常常使用对称加密算法来加密数据,而使用非对称加密算法来安全地交换对称密钥。这种结合使用的方法被称为混合加密。

2023-11-16 11:16:58 456

原创 什么是SQL_NO_CHACE?

是一个MySQL查询缓存相关的指令,用于告诉MySQL不要使用查询缓存来存储查询的结果。通常情况下,MySQL会尝试将查询的结果缓存起来,以便在后续相同的查询被执行时能够更快地返回结果。需要注意的是,尽管禁用查询缓存可能会确保获取最新的数据,但它也可能导致查询性能下降,特别是在频繁执行相同查询的情况下。这意味着每次执行此查询时,MySQL都会从数据库中检索数据,而不管之前是否执行过相同的查询并且缓存了结果。在某些情况下,缓存可以提高查询性能,但在其他情况下,禁用缓存可能是更好的选择。

2023-09-22 16:49:09 744

原创 什么是ORM库?

ORM库的使用可以大大简化数据库访问和操作,减少了手动编写SQL语句的工作量,并提高了代码的可维护性。因此,选择合适的ORM库需要综合考虑项目需求和性能要求。:Hibernate是一个用于Java应用程序的流行的ORM框架,它可以将Java对象映射到关系型数据库中的表。:Sequelize是一个用于Node.js的ORM库,它支持多种数据库后端,包括MySQL、PostgreSQL、SQLite等。:GORM是用于Go语言的ORM库,它允许开发人员将Go结构体映射到数据库表,提供了强大的查询和关联功能。

2023-09-22 16:22:01 220

原创 Java学习路线总结(思维导图篇)

链接:https://blog.csdn.net/guorui_java/article/details/120643691。

2023-09-18 11:29:16 102

原创 JQuery隐藏和显示div元素的三种方法

toggle() 方法在被选元素上进行 hide() 和 show() 之间的切换。hide() 方法隐藏被选元素。show() 方法显示隐藏的被选元素。该方法检查被选元素的可见状态。如果一个元素是隐藏的,则运行 show(),如果一个元素是可见的,则运行 hide() - 这会造成一种隐藏和显示状态切换的效果。;;

2023-09-14 18:51:30 3316

原创 Enterprise Integration Patterns (EIP)是什么?

它提供了一组常见的模式,这些模式可用于解决在不同应用程序、系统和组件之间传递消息、数据和状态时经常遇到的问题。:根据消息的内容或属性将消息从一个地方路由到另一个地方,以实现消息的选择性传递。:一种模式,其中发布者发布消息,多个订阅者订阅并接收消息,以实现松散耦合的通信。:将多个消息聚合成一个消息,通常用于汇总信息或等待多个消息一起处理。:一种模式,其中一个组件发送请求消息并等待另一个组件的响应消息。:根据一定的条件过滤掉不需要的消息,以减少传递的消息量。:将一个大的消息拆分成多个小消息,以便分别处理。

2023-09-14 16:18:45 157

原创 Java 接口为什么一般用对象接收参数 而不是用map接收呢?

例如,当您需要接受多个具有不同键和值类型的参数时,或者当接口需要灵活地接受不同数量的参数时,Map 可能更适合。然而,在大多数情况下,使用明确的对象参数可以提供更好的代码质量和可维护性。通过使用具有明确字段和方法的自定义对象,您可以提供更清晰的接口,使调用者更容易理解和使用接口。这可以提高代码的可读性和可维护性。易于扩展:如果您需要在接口中添加更多的参数,使用对象参数可以轻松地扩展接口,而不会破坏现有的调用代码。如果使用 Map,添加新的参数可能需要修改调用代码,这可能导致更多的维护工作和潜在的错误。

2023-09-14 09:47:51 397

原创 let var const的区别

通常更适合在现代 JavaScript 中使用,因为它们提供了更严格的作用域和不可变性,有助于减少代码中的潜在错误。声明的变量存在函数作用域(function scope),意味着它们只在函数内部可见,而不会受到块级作用域的限制。声明的变量存在块级作用域(block scope),这意味着它们的作用域限制在最近的。声明的变量会被提升到其所在函数的顶部或全局作用域的顶部,但它们在初始化之前的值为。声明的变量是可变的(mutable),可以重新赋值。声明的变量必须在声明时进行初始化,否则会产生错误。

2023-09-07 16:24:34 27

原创 js获取<span>标签的展示内容

属性获取其展示内容。如果您需要获取文档中所有。元素的内容,可以使用循环遍历所有匹配的元素。要使用 JavaScript 获取。元素的引用,然后使用。上述代码中,首先通过。

2023-09-07 15:57:46 1840

原创 MyBatis-Plus Wrapper条件构造器

QueryWrapper (LambdaQueryWrapper) 和 UpdateWrapper (LambdaUpdateWrapper) 的父类 用于生成 sql 的 where 条件, entity 属性也用于生成 sql 的 where 条件allEq。

2023-09-07 14:21:27 293

原创 Java是值传递还是引用传递

当你传递一个对象(包括数组)作为参数时,实际上是将对象的引用(内存地址)传递给方法,但仍然是值传递。这意味着方法内部可以通过这个引用来访问和修改对象的内容,但如果在方法内部重新分配对象的引用,原始引用不会受到影响。这意味着当你将一个变量作为参数传递给一个方法时,实际上是将该变量的值(也就是存储在变量中的数据)传递给了方法,而不是传递了变量本身或引用。总结起来,Java中的参数传递是值传递,但对于对象,传递的是引用的值。这意味着你可以修改对象的内容,但不能直接修改对象的引用。

2023-09-06 19:33:18 77

原创 fetch 和 ajax 的区别

是现代化的、更灵活的方式来处理网络请求,特别适合使用在现代 JavaScript 应用中。然而,Ajax 仍然在一些旧的应用和传统的环境中使用,并且有些情况下可能更容易上手,因此了解这两种技术都是有价值的。通常使用回调函数来处理异步操作,可能会导致回调地狱(callback hell)的问题,尤其在复杂的请求链中。是现代 JavaScript 中的 API,它提供了一种更简洁、功能更强大的方式来处理网络请求。返回的是一个 Promise 对象,这使得处理异步请求更为灵活和简洁,可以使用。

2023-09-06 19:28:05 681

原创 网页实现自动弹窗

上面的代码创建了一个按钮,当用户点击按钮时,弹窗显示一个自定义表单。用户可以在表单中输入姓名和邮箱,并点击提交按钮。你可以在JavaScript部分处理表单的提交,例如将数据发送到服务器,或执行其他你需要的操作。如果你想在弹窗内显示一个自定义表单,你可以使用HTML和JavaScript来实现。请注意,这只是一个基本示例,你可以根据需要自定义表单的字段和行为。// 在这里处理表单数据,例如将数据发送到服务器或执行其他操作。// 当表单提交时,可以在这里处理表单数据。// 当按钮被点击时,显示弹窗。

2023-09-06 19:25:56 833 1

原创 为什么使用Docker?

要理解Docker是什么,从一个比喻开始会比技术性解释来得简单,而且这个Docker的比喻非常有说服力。Docker这个单词原本是指在船只停靠港口之后将商品移进或移出的码头工人。箱子和物品的大小、形状各异,而有经验的码头工人能以合算的方式手工将商品装入船只,因而他们倍受青睐(见图1)。雇人搬东西并不便宜,但除此之外别无他法。对在软件行业工作的人来说,这听起来应该很熟悉。大量时间和精力被花在将奇形怪状的软件放置到装满了其他奇形怪状的软件、大小各异的船只上,以便将其卖给其他地方的用户或商业机构。

2023-09-05 13:47:56 101 1

原创 设计模式介绍

里氏替换原则是继承复用的基石,只有当衍生类可以替换基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。这样当被依赖的类变化时,才能最小的影响该类。,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。,共七种:适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

2023-09-05 13:46:47 36 1

原创 对jQuery中的return false的理解

例如,如果 type 属性是 “submit”,在事件传播的任意阶段可以调用任意的事件句柄,通过调用该方法,可以阻止提交表单。我们真正的目的是event.preventDefault(),后两者可不是我们想要的。注意,虽然该方法不能阻止同一个 Document 节点上的其他事件句柄被调用,但是它可以阻止把事件分派到其他节点。event.preventDefault()方法是用于取消事件的默认行为,但此方法并不被ie支持,在ie下需要用window.event.returnValue = false;

2023-09-05 13:45:58 121 1

原创 程序员修炼网站

https://www.nowcoder.com/ 一个互联网求职学习交流社区。

2023-09-05 13:45:23 41 1

原创 程序员速查表

git常用指令速查表git cheat sheetvi、vim按键盘图图解TCPhtml5备忘单linux性能基础工具linux性能监控工具linux内核地图

2023-09-04 11:05:18 63 1

原创 SpringBoot项目多层网关的重定向问题

整个问题重要点主要有两点:1. 问题是网关层面解决还是代码层面解决。一开始就有查到相关的网管解决方案,但认为不太好。所以一直在寻找代码层面的解决方案。2. 弄清楚取错的port值到底是在哪里修改了原先request值。一开始只知道会有个上层网关端口的参数传进来,但并不知道是X-Forwarded-Port带来的,这就导致了没想过查X-Forwarded-*和SpringBoot之间的关系。以后解决问题还是先弄清楚最根源的本质是什么,再来分析问题,不然会走很多弯路,不能直接解决问题。

2023-09-04 11:01:42 210 1

原创 SpringBoot项目多层网关的重定向问题

整个问题重要点主要有两点:1. 问题是网关层面解决还是代码层面解决。一开始就有查到相关的网管解决方案,但认为不太好。所以一直在寻找代码层面的解决方案。2. 弄清楚取错的port值到底是在哪里修改了原先request值。一开始只知道会有个上层网关端口的参数传进来,但并不知道是X-Forwarded-Port带来的,这就导致了没想过查X-Forwarded-*和SpringBoot之间的关系。以后解决问题还是先弄清楚最根源的本质是什么,再来分析问题,不然会走很多弯路,不能直接解决问题。

2023-09-04 11:01:08 479 1

原创 redisson连接错误 Unable to init enough connections amount Only 8 from 10 were initialized

【代码】redisson连接错误 Unable to init enough connections amount Only 8 from 10 were initialized。

2023-09-04 11:00:19 1007 1

原创 MySQL数据库设置时间字段为DateTime,展示给前台页面时,时间后面多了个0

今天项目中碰到过这个问题,在考虑设计数据库表字段的时候,针对更新时间这个字段,我想到了datetime和timestamp两种类型,还有一种是date,我这里是要展示yyyy-MM-dd HH:mm:ss格式,而date类型是yyyy-MM-dd类型,所以date舍弃。当然,我这里只是为了测试DATE_FORMAT这个函数,自己写了个USER表,项目中其他字段我没写上来;这里注意一下:一定要写AS updateTime,不然你对这个时间字段格式化映射不到实体类的字段。三、Java实体类的字段属性上做处理。

2023-09-04 10:59:22 758 1

原创 mysql 唯一键冲突的三种解决方法

https://techlog.cn/article/list/10183451

2023-09-04 10:58:32 273 1

原创 mybatis映射LocalDate日期类型时出现SQLFeatureNotSupportedException异常问题解决

在确认了@JsonFormat注解没问题,mybatis版本也是3.4.5+时就很纳闷,其实大家出现这种错误大多都会想是不是mybatis不支持java8日期的映射的问题,然后百度一大堆都说是升级版本,定义类型处理器等。后来发现报错误的第一行是druid在处理resultset的问题,然后想是不是Druid有什么问题,我用的Druid版本是1.1.9,然后看了这个版本是在2018年就有了,我立马升级了最新版本1.2.8,然后问题解决!

2023-09-04 10:57:16 364 1

原创 jQuery 复制文本内容到剪贴板-jquery复制文本内容到剪贴板

标签不能设为隐藏,可以将透明度设为0,这样就看不见了 ++style=“opacity: 0”++

2023-09-04 10:54:54 301 1

原创 Java 8 Stream使用案例-java8stream使用案例

Test。

2023-09-04 10:54:06 41 1

原创 Java 8 Stream

Stream(流)是一个来自数据源的元素队列并支持聚合操作。

2023-09-04 10:50:10 24 1

原创 Cron常用表达式-cron常用表达式

定时任务

2023-09-04 10:46:10 68 1

原创 APIJSON介绍

APIJSON 是一种基于 JSON 的接口定义语言,旨在通过简单易用的语法规则,快速生成易于维护和扩展的 RESTful 风格的 API。简单易用:APIJSON 使用 JSON 格式定义 API 接口,支持类 SQL 手写查询语法,易于理解和使用。高效灵活:APIJSON 通过缓存、预编译等优化方式,提高接口访问效率,同时支持多种数据源和扩展方式。易于测试:APIJSON 支持在线测试和文档输出,方便开发人员进行接口测试和调试。

2023-09-04 10:25:50 612 1

原创 Amis介绍

Amis是一款基于 React 的 UI 框架,提供了丰富的组件和工具,可以帮助开发者快速构建现代化的 Web 应用程序。它提供了许多常用的 UI 组件,如按钮、表单、表格等,同时支持自定义主题和国际化。Amis采用了可扩展的插件机制,使得它可以方便地扩展新的功能和组件。Amis还提供了丰富的文档和示例,可以帮助开发者快速上手使用。

2023-09-04 10:24:19 173

原创 RESTful API

RESTful API是一种设计风格和架构风格的API,它通过HTTP请求和响应来提供数据交换服务。总之,RESTful API是一种功能强大的API设计风格和架构风格,可以帮助开发者更快地构建web应用程序,并且可以方便地与其他应用程序进行集成。提供文档和示例:提供API的文档和示例,以使其他开发者可以了解API的使用方法和功能。设计API:确定API的功能和资源,以及定义API的终点(端点)。实现API:使用编程语言和框架来实现API的功能和终点。

2023-09-04 10:21:04 22 1

原创 【Linux服务器运行项目jar包】

idea打开项目,在maven工具栏里点击package。

2023-09-04 10:17:37 117 1

空空如也

空空如也

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

TA关注的人

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