02 2023 档案
摘要:<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>vue入门</title> <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script> </h
阅读全文
摘要:背景:单个接口可能同时被多个用户调用,但是每个用户使用的数据都是不一样,因此需要使用分布式锁解决数据减少了没有即使减少的问题 使用的指令来自的edis的setnx命令,setnx(k,v1),setnx(k.v2),当设置值为v1后,v2的设置无效 上图中启动了两台一样的服务,大多数情况,同一时间只
阅读全文
摘要:官方的中文文档地址https://angular.cn/start <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>angular测试</title> </head> <body> <!--<div ng-app="a" ng-
阅读全文
摘要:首先来张效果图 下面开始正式步骤 特别注意,如果第一次在浏览器上操作,请首先打开代理,然后再去操作,不然会提示你的国家区域不支持 请记住操作前先把代理打开,同时了解你的代理位置是哪个国家的,我是用的美国的,然后手机选的是美国物理的 注册后点击登录,依次会出现输入你的姓名,后面跟着需要输入手机号的验证
阅读全文
摘要:在es中使用 PUT /test_index PUT /test_index/mapping/ { "properties":{ "name":{ "type":"text" }, "age":{ "type":"integer" } } } 返回结果
阅读全文
摘要:ElasticSearch的使用需要配合Kibana来使用,因为ElasticSearch只有后端,没有页面的,Kibana是一款可视化工具,用于分析和可视化ElasticSearch的工具首先下载ElasticSearch https://www.elastic.co/cn/downloads/e
阅读全文
摘要:首先看下来自实测的效果图 首先看核心线程够不够用,不够用的话线程数变成了最大线程数的设置,最后队列已经被任务占满了,抛出异常 首先使用核心线程 然后采用最大线程 以上就是核心线程数和最大线程数的区别 代码部分 <?xml version="1.0" encoding="UTF-8"?> <proje
阅读全文
摘要:GROUP BY 字段名,以该字段名已经分类,HAVING可以对分完类的数据使用聚合函数 例如 SELECT * FROM student WHERE stu_name IN (SELECT stu_name FROM student GROUP BY stu_name HAVING COUNT(s
阅读全文
摘要:有限个相同类型的变量组成的有序集合叫做数组,其中数组的下标是从0开始的 在存储方式上,会创建连续的内存空间存放一组类型相同的数据 从0开始是计算效率考虑 下面定义一个数组 int[] attr =new int[]{0,1,2,3,4}; 当从0开始,attr[k]=attr[0]+k*attr.l
阅读全文
摘要:缓存穿透字面意思就是来了个透心凉,直接穿透了redis缓存和数据库,比如儿子想找的爸爸妈妈,并不是它的爸爸妈妈,因为老爸和老妈根本就没有这个儿子 处理方案就是不要让非法数据过来 缓存雪崩意思就是挂了,本身是找缓存拿数据的,但是这个时候数据全部过期了,直接找了数据库,数据库不行了直接撂挑子不干了, 处
阅读全文
摘要:lockInterruptibly是中断获取锁的操作,可以让线程去干别的事情 代码部分 package com.java.test.lock; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotati
阅读全文
摘要:left join 左连接,左表所有数据 拼接 右表符合on条件的数据。on后用and连接,都作为on条件,左边表的数据会全部返回,右表中的数据不匹配返回为空 因为是左连接,所以左边的数据是一定要满足的 建表语句 --建表语句 create table student_memo( id varcha
阅读全文