- 2024-11-19SpringBoot实现websocket服务端及客户端
一、WebSocket通信过程客户端构建一个websocket实例,并且为它绑定一个需要连接到的服务器地址,当客户端连接服务端的候,会向服务端发送一个httpget报文,告诉服务端需要将通信协议切换到websocket,服务端收到http请求后将通信协议切换到websocket,同时发给客户端一个响应报文,返回的
- 2024-11-18基于微信小程序的宠物店商城系统设计与实现(源码+论文+部署讲解等)
博主介绍:✌全网粉丝60W+,csdn特邀作者、Java领域优质创作者、csdn/掘金/哔哩哔哩/知乎/道客/小红书等平台优质作者,计算机毕设实战导师,目前专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌技术栈范围:SpringBoot、Vue、SSM、Jsp、HLMT、Nodejs
- 2024-11-16gofiber: 模板:判断if条件
一,代码:1,controllerfunc(dc*ArticleController)GetArticle(c*fiber.Ctx)error{ //处理获取文章的逻辑 article:=new(Article) article.Id=1 article.Title="三国演义金圣叹批本" article.Author="罗贯中" user:=c.Query("user") myMap:=fib
- 2024-11-16go fiber:路由中间件
一,目录结构:二,代码1,中间件代码packagemiddlewareimport( "fmt" "github.com/gofiber/fiber/v2" "industry/config")//token校验funcCheckUser(c*fiber.Ctx)error{ token:=c.Query("token") fmt.Println("token:"
- 2024-11-14mysql 行转列和列转行
一、行转列1、使用case…when…then2、使用SUM(IF())生成列3、使用SUM(IF())生成列+WITHROLLUP生成汇总行4、使用SUM(IF())生成列,直接生成汇总结果,不再利用子查询5、使用SUM(IF())生成列+UNION生成汇总行,并利用IFNULL将汇总行标题显示为Total6、动态查询列值
- 2024-11-13el表达式+axios+vue -2024/11/13
一个好看的界面<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>首页</title></head><body><divid="app"><el-menu:default-active=
- 2024-11-08SQL语句的基本理解与应用
首先借用Freesql的官方文档中的一段复杂代码举例,说明SQL语句的基本使用并最终实现读懂下列的复杂代码INSERTINTO[Role]([Name])OUTPUTINSERTED.[Id]as[Id],INSERTED.[Name]as[Name]VALUES(N'role1'),(N'role2')INSERTINTO[User]([Name])OUTPUTINS
- 2024-11-08【前端】浅谈SOLID原则在前端的使用
原创宁奇舞精选本文作者系360奇舞团前端开发工程师简介SOLID原则是由RobertC.Martin在2000年提出的一套软件开发准则,最初用于面向对象编程(OOP),旨在解决软件开发中的复杂性和维护问题。随着时间推移,它不仅在传统OOP语言中广泛应用,也被引入到JavaScript和TypeS
- 2024-11-08localeStorage 当前标签页变化监听不到,只能监听不同标签页变化,自己写方法监听
1.在utils中新建一个文件watchLocalStorage.tsexportdefaultfunctiondispatchEventStroage(){ constsignSetItem=localStorage.setItem localStorage.setItem=function(key,val){ letsetEvent=newEvent('setItemEvent') setEvent.key=key set
- 2024-11-01高并发场景下的抢红包系统设计:实时拆分与预先生成方案的比较与优化
引言在之前面试中经常会问到的一个经典场景问题是如何设计一个抢红包系统。我之前的项目场景中也会涉及到群红包的业务逻辑。今天我们来一起讨论下这个业务场景设计。这个问题不仅考察我们对高并发处理的理解,还涉及到数据库设计、缓存优化、分布式锁控制等技术细节。在“
- 2024-10-31SpringBoot调用外部接口的几种方式
使用FeignClient调用FeignClient调用大多用于微服务开发中,各服务之间的接口调用。它以Java接口注解的方式调用HTTP请求,使服务间的调用变得简单1、在使用方引入依赖<!--Feign注解这里openFeign的版本要和自己使用的SpringBoot匹配--><dependency><groupId>org.springfr
- 2024-10-30KMC数据库设计
存一下密钥管理中心数据库,免得找不到了具体表格:表名列名数据类型主键外键KeysKeyIDINTPKKeyValueVARBINARY(256)KeyTypeVARCHAR(50)CreatedAtDATETIMEExpirationDateDATETIMEStatusENUMKey_PoolsPoolIDINTPKPoo
- 2024-10-30springboot简单的项目
项目结构用到的pom.xml配置(1)springdata-jpa操作数据库:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency>(2)springmvc<dependency><g
- 2024-10-30react.js中何时使用useCallback
useMemo用于记住值,减少重新渲染组件所需的时间。useCallback用于记住函数,通常是为了防止组件的重新渲染举例子组件接收回调函数作为 props父组件引入子组件:constgetList=useCallback(()=>fetch(`http://example.com/api/${userId}`),[userId],);return(<buttonon
- 2024-10-25mybatis存储过程返回list
在MyBatis中,要想通过调用存储过程返回一个List集合,你需要在Mapper接口中定义一个方法,并使用@Param注解来传递存储过程的参数。同时,你需要在MapperXML文件中配置相应的标签,并指定statementType="CALLABLE"来表明这是一个调用存储过程的语句。以下是一个简单的例子:假设你有一个存
- 2024-10-20JMeter 动态参数赋值实践
目录前言单线程+用户参数场景说明实战结果配置明细单线程+CSVDataSetConfig场景说明实践结果配置明细多线程循环单次执行场景说明实践结果配置明细单线程+控制器+用户自定义变量+用户参数场景说明实战结果配置明细多并发+多接口+同步定时器
- 2024-10-17Springboot缓存+定时提交优化频繁数据库表修改
缘起最近在弄一个答题小程序,当用户选择的时候需要把用户选择的选项提交到服务器上,然后整个字段是个json格式的,更新的方法也就是解析json后添加选项进入json中。于是其中就涉及到频繁的数据库修改,因为用户答题速度根据题目不同嘛,所以我就寻思这样频繁的修改,数据量上来速度就会受
- 2024-10-142024.10.14
刷新页面后,Vuex中的数据被重置的原因是Vuex状态存储在内存中,当页面刷新时,整个JavaScript运行环境会重新加载,Vuex中的数据也会丢失。因此,this.$store.state.user.userId在页面刷新后可能会变成null或undefined。要解决这个问题,你可以将用户数据(如userId)持久化到浏览器
- 2024-10-14Spring 实现 3 种异步流式接口,干掉接口超时烦恼
大家好,我是小富~如何处理比较耗时的接口?这题我熟,直接上异步接口,使用Callable、WebAsyncTask和DeferredResult、CompletableFuture等均可实现。但这些方法有局限性,处理结果仅返回单个值。在某些场景下,如果需要接口异步处理的同时,还持续不断地向客户端响应处理结果,这些方法就不
- 2024-10-12MongoDB
MongoDB快速上手文章目录MongoDB快速上手前言一、环境搭建二、MongoDB操作1.数据库操作1.1选择和创建数据库1.2数据库的删除2.集合操作2.1集合的显式创建(了解)2.2集合的隐式创建2.3集合的删除3.文档基本CRUD3.1文档的插入(1)单个文档插入(2)批量插入3.2文档的基本
- 2024-10-12useQuery 使用
`useQuery`是`react-query`库中的一个核心钩子(Hook),它用于从异步数据源(如API服务器)获取数据,并在React组件中管理这些数据的状态。`useQuery`不仅提供了数据获取的功能,还内置了数据缓存、状态更新、错误处理和数据刷新等功能。这使得开发者能够更加方便地在应用中处理和展示
- 2024-10-11list过滤
importjava.math.BigDecimal;importjava.util.ArrayList;importjava.util.List;importjava.util.stream.Collectors;publicclassTest{@org.junit.Testpublicvoidtest1(){List<Order>orderList=newArrayList<>();
- 2024-09-29接上文实现SpringSecurity,拦截器的实现
实现拦截器有图片可知,在上篇文章我们重写了UserDetailsManager,现在我们来进行之后的操作在UserDetailsManager中我们可以调动数据库去进行一个账号密码的校验之后我们这样设置拦截器进行一个token获取存储在usernamePasswordAuthenticationFilter这一层中,有,则存储在Secur
- 2024-09-29大厂必问 · 如何防止订单重复?
在电商系统或任何涉及订单操作的场景中,用户多次点击“提交订单”按钮可能会导致重复订单提交,造成数据冗余和业务逻辑错误,导致库存问题、用户体验下降或财务上的错误。因此,防止订单重复提交是一个常见需求。常见的重复提交场景网络延迟:用户在提交订单后未收到确认,误以为订
- 2024-09-28超轻量的Orm工具
简介注册和配置使用生成器(可选)用途使用查询(示例代码中使用的Db均为IExpressionContext对象)基础查询Join查询多表查询子查询Join子查询With(tempName)AS(...)查询Include查询Union查询已有查询Union新的查询使用IExpressionContext.Union更新