-
springboot 利用JDK的SPI机制实现可插拔组件
什么是Java的SPIJava SPI(Service Provider Interface)是一种服务提供界面,它是Java提供的一种服务发现和加载机制,允许开发者为接口定义多种实现,并在运行时动态地发现和加载这些实现。Java SPI机制的核心在于它提供了一种方式,使得服务提供者可以根据SPI的约定,为某个接口提供具体的实现类。...11个月前 阅读417
-
JavaScript单行技巧:高效处理数据
本文介绍JavaScript单行程序的独特数据处理能力,单行技巧可以帮助我们更简洁、更高效地处理数据。这些技巧不仅提升了代码的可读性,也减少了代码行数,使代码更加紧凑。以下是一些JavaScript单行技巧,用于高效处理数据,附带相应的代码示例。像这样令人惊叹的单行程序显示了您对语言的掌握及其独特的数据处理能力。️今天...11个月前 阅读318
-
三栏布局的方法你又会几种?
在前端页面中,三栏布局是网页设计中的常见布局,通常包括一个主要内容区域和两个侧边栏,不过有些网页的侧边栏是用来放广告的,也有些是用来做导航的或者放点其他的东西,但是他们都不能阻碍主要内容区域的展示。当然在前端面试中,三栏布局也是有很多面试官会提问的,但是实现三栏布局的方法有很多种,包括圣杯布局、双飞...11个月前 阅读381
-
Spring boot 2.0 升级到 3.3.1 的相关问题
Jackson的配置问题问题介绍MappingJackson2HttpMessageConverter 没有默认编码的问题在Spring Boot 3.3.1 自定配置创建的MappingJackson2HttpMessageConverter 默认是没有指定字符串编码,因此在实际的使用中会自动使用ISO8859-1的编码。StringHttpMessageConverter 默认编码为ISO8859-1,这个也需...11个月前 阅读311
-
微信小程序实现聊天界面,发送功能
.wxml<scroll-view scroll-y="true" style="height: {{windowHeight}}px;"> <view wx:for="{{chatList}}" wx:for-index="index" wx:for-item="item" style="padding-top:{{index==0?30:0}}rpx"> <!-- 左边:对方...11个月前 阅读347
-
JWT 没那么神秘,用它换掉 Session + Cookie 认证
背景引入在《前端轻松拿捏!最简全栈登录认证和权限设计!》一文中,我们掌握了如何基于 Session + Cookie 实现一个基本的登录认证功能,这是一个经得起时间考验的方案。基于 Session + Cookie 的认证,在用户登录认证时,简单做法是将 Session ID 作为 Token,接着将这个 Token 放到 Cookie 中,后续客户...11个月前 阅读340
-
架构师手写代码:分享数据库原子性与一致性实现方案(不再背概念)
原子性(Atomicity)原子性指的是事务中的所有操作要么全部完成,要么全部不完成,不会结束在中间某个点。如果事务中的某个操作失败,整个事务将被回滚到开始状态,就像这个事务从未执行过一样。实现逻辑:日志记录:在事务开始时,数据库会记录一个日志,包括事务的所有操作。这个日志是原子性的,即要么全部写入,要么全部...11个月前 阅读326
-
原生小程序用webview嵌入H5页面实现免登录(H5用vue实现)
背景:之前工作上某个项目因为要使用甲方提供的指定插件,但插件无法在原生小程序框架使用只能在vue使用叫我想办法解决,我当场:一脸?????后来想到了一个方案,我直接把页面写在他们的其它vue项目再用iframe嵌入不就行了?我真的是太机智了,但发现小程序是无法使用iframe的,所以最终选择小程序官方的webview实现,但...11个月前 阅读337
-
Java LocalDateTime:日期处理新纪元
逃离“时光旋涡” —— 从一次Date对象的“时区迷航”说起想象一下,你的项目正紧锣密鼓地推进,突然间,一个看似不起眼的日期处理任务,却引发了一场“完美风暴”。一个简单的任务需求:存储用户生日并按其所在时区显示。使用传统的java.util.Date,你以为只需寥寥数行代码即可轻松搞定,却不料踏入了一个布满陷阱的雷...11个月前 阅读359
-
深入浅出python的lambda表达式
今天我们来聊聊Python中一个常用的特性 - lambda表达式。别被这个听起来很高大上的名字吓到,其实它就是个匿名函数的实现机制。1. 什么是lambda表达式?为什么要用它?想象一下,你有一个超级简单的任务,比如给一个数字加1。用普通的函数,你可能会这么写:def add_one(x): return x + ...11个月前 阅读345