自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 k8s和prometheus回顾

1.基于docker 搭建Prometheus+Grafana启动node-exporter启动prometheus启动grafana****:3000/2.PromeQL的使用计算cpu使用率3.记录用到的相关linux命令根据进程名查看进程id可以看到,pm进程的pid是2560038通过进程id查看占用的端口可以看到,pid=2560038的进程占用的端口号是9090通过端口号查看占用的进程id可...

2021-10-07 22:10:58 230 1

原创 国庆期间复习了下Mysql和redis,ES

国庆期间复习了下Mysql和redis,ES,包括:Mysql索引面试题目分析Mysql的日志Mysql慢查询Mysql表锁:共享读锁,独占写锁 结论:读锁会阻塞写,但是不会堵塞读。而写锁则会把读和写都堵塞。表锁-读锁: 加读锁 lock table user read; 解锁 lock tables; session1 session2 修改session1锁住的表 ...

2021-10-07 21:14:23 309

原创 Vue表单操作的小tips

<template> <el-form :inline="true" :rules="dataRules" label-width="140px" ref="dataForm" :model="dataForm" label-position="right"> <el-row> <el-form-item prop="dataDate" class="search-card" label="数据日期"> ...

2021-10-06 19:53:52 307

原创 记录一个400错误

2021-08-13 19:59:11 91

原创 springboot项目的Controller异常统一处理以及检验

controller异常需要统一处理,而不是一直try…catch常见方法…aopspringmvc中的拦截器检验,一种是数据库,一种是断言(更人性化的输出)以下示例,表中不重复记录的检验 List<ProductLine_Domain> list= pdmapper.SelectBy2Id(productlineId,domainId);Assert.isTrue(list.size()==0,"记录重复");mysql可以设置联合唯一索引,方法:使用“Alter tab

2021-08-09 20:05:39 550

原创 376 摆动序列

只需要统计数组的峰值个数,如蓝色圈圈所示。 /* 最长子序列 情况1: 第一行 原数组: 第二行 dp数组: 第三行 个数统计: 1,17,5,10,13,15,10,5,16,8 0 1 -1 1 1 1 -1 -1 1 -1 1 2 3 4 5 6 7 结果为7 情况2: 0 0 0 0 结果为1 1 1 情况3: 1 2 2 3 1 特殊情况:相同数字.

2021-07-19 21:35:24 54

原创 单词拆分

public class Solution { public boolean wordBreak(String s, List<String> wordDict) { Set<String> wordDictSet = new HashSet(wordDict); boolean[] dp = new boolean[s.length() + 1]; dp[0] = true; for (int i = 1; .

2021-07-18 11:14:19 57

原创 es工作总结

今日总结1.解决实体层字段大写导致JSON格式数据后台读出来是NULL。参考:https://blog.csdn.net/weixin_51614089/article/details/1169367032.k8s日志后台检索接口编写,实现按照字段检索。3.springboot适配多个es数据源。4.@Configuration不生效是因为启动类上的@ComponentScan里没有配置到config文件夹下,包括上次的@Controller没有生效是因为没有配置到controller文件夹。

2021-07-05 20:28:24 460

原创 设计模式

装饰者模式的要求1 装饰者中必须要包含被装饰者2 装饰者模式的要求,装饰者和被装饰者必须要实现同一个接口或者类型3.当想要对已有的对象进行功能增强时,可以定义类,将已有对象传入,基于已有的功能,并提供加强功能,那么自定义的该类称为装饰类。装饰者通常会通过构造对象方法接收被接收的对象,并基于被装饰的对象的功能,并提供更强的功能。举例:bufferedwriter.bufferedreader.synchronizedMap...

2021-06-03 18:21:35 57

原创 并发:线程池

https://www.cnblogs.com/shijianchuzhenzhi/p/12964678.html

2021-06-03 17:47:53 74

原创 并发:辅助类

线程池改进:CountDownLatch的缺点:可以发现:实现该功能,一共实现了3个countdownlatch对象,可以改进。CycliBarrierSmaphore信号量:用来限制能同时访问共享资源的线程上限

2021-06-03 17:41:53 410

原创 并发:AQS和Reentrantlock()

2021-06-03 17:10:40 77

原创 并发:乐观锁

cas和volatile无锁并发:原子引用原子累加器unsafe

2021-05-31 12:00:13 93

原创 并发:JMM

可见性:可见性的两种解决方案:volatilesychronized:创建monitor,重!补充1:while里面加一句print.即使没有volatile修饰变量也可以正常停止。补充2:volatile其实就是保证一个线程对变量的修改,在另一个线程中可见。volitale修饰stop变量,主线程调用stop(),修改stop的值,保证t1线程可见。原子性只能保证getstatic获取到内存中变量的最新值t1 第一句,第六句t2 第二三四五句结果:-1sychronize

2021-05-27 19:03:01 71

原创 并发:设计模式-固定运行顺序-交替输出

固定运行顺序:wait和notifyawait和signalpark unpark交替输出wait和notifyawait和signal

2021-05-27 15:31:54 108

原创 并发:ReentrantLock

与sychronized的区别:可重入:可打断:主线程lock.lock()首先获得锁,t1等待不到锁,被打断以后,打印打断异常信息,释放锁。而不是死死的等待锁,这也是一种死????的避免方法。

2021-05-27 12:47:56 50

原创 并发:死锁的解决

检测:jstackjconsole解决办法一:顺序加锁如AB BA的顺序,改为AB AB可能造成的问题:饥饿【黑马程序员全面深入学习java并发编程,java基础进阶必学教程-哔哩哔哩】https://b23.tv/p2EtOV

2021-05-27 11:56:08 81

原创 线程状态转换

【黑马程序员全面深入学习java并发编程,java基础进阶必学教程-哔哩哔哩】https://b23.tv/xyd0l4

2021-05-27 09:03:30 77

原创 面试题:mysql中的流程控制结构

视频:【MySQL_基础+高级篇- 数据库 -sql -mysql教程_mysql视频_mysql入门_尚硅谷-哔哩哔哩】https://b23.tv/vdMopn函数存储过程流程控制带有leave的while语句实现批量插入同样的批量插入,只是i为偶数时才插入...

2021-05-26 19:26:14 65

原创 并发

类加载器当一个类的类加载器为null时,说明是由bootstrap加载的创建线程的三种方法Thread与Runnable的关系Callable使用实例run()和start()多次调用start(),会出现异常sleep()join()interrupt()情况1被打断:抛出异常,进入catch,重新设置打断标记情况2被打断:通过current.isInterrupted()进行判断java中的六种状态本章小结...

2021-05-22 13:39:24 65

原创 数据库索引优化,redis

ref:Extrausing filesort:using temporary:using index:双表优化索引面试题目分析group by分组之前必排序redisRedis 命令参考 (redisdoc.com)尚硅谷超经典Redis教程,redis实战,阳哥版从入门到精通_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili笔记参数说明redis.conf 配置项说明如下:1. Redis默认...

2021-05-21 10:41:26 296

原创 Spring设计模式

一起来看看 Mybatis 中使用的 9 种设计模式! (qq.com)9 种设计模式在 Spring 中的运用,一定要非常熟练! - 知乎 (zhihu.com)抽象工厂模式 | 菜鸟教程 (runoob.com)

2021-05-16 10:52:36 54

原创 Spring Mybatis源码学习

(85条消息) Spring的BeanFactoryPostProcessor和BeanPostProcessor_caihaijiang的专栏-CSDN博客BeanPostProcessor:bean后置处理器,bean创建对象初始化前后进行拦截工作的;一、BeanFactoryPostProcessor:beanFactory的后置处理器;在BeanFactory标准初始化之后调用,来定制和修改BeanFactory的内容;所有的bean定义已经保存加载到beanFactory,但是bean的实

2021-05-14 16:30:51 145 1

原创 计算机网络

2021-05-09 18:28:52 26

原创 Mysql进阶

慢查询:1、MySQL慢查询日志开启mysql> set global slow_query_log = 1;2、查看 MySQL慢查询日志 是否开启成功,并找到其日志的位置mysql> show variables like '%slow_query_log%';3.默认的慢查询时间10s,和重新设置慢查询时间为3Sshow variables like 'long_query_time%';set global long_query_time=3;...

2021-05-09 16:08:59 82

原创 2021-04-24

https://blog.csdn.net/mashaokang1314/article/details/88672035?utm_medium=distribute.wap_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.wap_blog_relevant_pic&dist_request_id=&depth_1-utm_source=distribute.wap_relev

2021-04-24 23:18:40 88 1

原创 2021-04-23

https://blog.csdn.net/weixin_39812224/article/details/113284079【b树和b+树的区别 - 雪球球 - 博客园】, 快来看吧!@小米浏览器 | https://www.cnblogs.com/xueqiuqiu/articles/8779029.html

2021-04-23 00:13:53 56

原创 JDK8的新特性之Stream流

参考教程:stream filter_由浅入深体验 Stream 流

2021-04-16 19:17:28 51

原创 面试题hashCode和equals

参考文献:看似简单的hashCode和equals面试题,竟然有这么多坑!import java.util.*;class Student{ String name; int age; public Student(String name, int age) { this.name = name; this.age = age; } public String getName() { return na.

2021-04-16 14:54:08 141

原创 二叉树篇

重建二叉树先序遍历中「从 左边界+1 开始的 size_left_subtree」个元素就对应了中序遍历中「从 左边界 开始到 根节点定位-1」的元素先序遍历中「从 左边界+1+左子树节点数目 开始到 右边界」的元素就对应了中序遍历中「从 根节点定位+1 到 右边界」的元素root.left = myBuildTree(preorder, inorder, preorder_left + 1, preorder_left + size_left_subtree, inorder_left,.

2021-04-10 22:36:43 55

原创 Jdk8的新特性之函数式接口---Comparator

PriorityQueue<Integer> queue = new PriorityQueue<Integer>(// 匿名内部类// new Comparator<Integer>() {// public int compare(Integer num1, Integer num2) {// return ...

2021-04-10 14:16:08 328

原创 LeetCode二分查找专题

力扣二分查找整理篇153. 寻找旋转排序数组中的最小值旋转数组居然有12345这样的测试用例,也是很服气官方解答class Solution { public int findMin(int[] nums) { int left =0; int len = nums.length; int right =len-1; while(left<right){ int mid =

2021-04-08 20:50:04 55

原创 673. 最长递增子序列的个数

300最长递增子序列的长度673 最长递增子序列的个数674. 最长连续递增子序列输出最长递增子序列中字典序最小的序列https://www.nowcoder.com/practice/9cf027bf54714ad889d4f30ff0ae5481?tpId=188&tags=&title=&diffculty=0&judgeStatus=0&rp=1&tab=answerKeyclass Solution { publ...

2021-04-08 15:26:35 59

原创 map 和 set的遍历的源码原理

Set<Integer> hashset = new HashSet<Integer> (); hashset.add(2); hashset.add(1); // 方法1 for(int num : hashset) System.out.println(num); // 方法2 Iterator<Integer> iterator = has...

2021-04-07 16:57:28 106 1

原创 Mysql面试篇

MySQL索引背后的数据结构及算法原理面试必问的 MySQL,你懂了吗?TCP的三次握手与四次挥手理解及面试题(很全面)TCP三次握手和四次挥手详解(面试常见问题)40 张图解 TCP 三次握手和四次挥手面试题 |技术人求职记面试阿里,HashMap 这一篇就够了【面试官】Map...

2021-04-06 18:04:19 86

原创 Mysql数据库的用户管理

--mysql用户管理本质是对mysql数据库的user表增删改查--新增用户,不带@localhost的话,默认没有密码,即使设置了'123456'CREATE USER kuang2 IDENTIFIED BY '123456'CREATE USER kuang2@localhost IDENTIFIED BY '123456'--授所有的权限GRANT ALL PRIVILEGES on *.* to kuang2@localhost--查看表结构DESCRIBE mysql.user.

2021-04-06 14:38:51 71

原创 1143. 最长公共子序列 

给定两个字符串text1 和text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的 公共子序列 是这两个字符串所共同拥有的子序列。输入:text1 = "abcde", text2 = "ac...

2021-04-05 18:39:06 140

原创 剑指 Offer 24. 反转链表

链表k个一组翻转中,对第二部中,翻转k个节点进行优化。和直接反转链表还是有明显区别的。主要是while条件的设置。翻转链表 public ListNode reverseList(ListNode head) { ListNode l3 = null; while(head!=null){ ListNode temp = head.next; head.next =l3; l3= hea

2021-04-04 10:33:30 51

原创 ¥剑指offer 22¥链表中倒数第k个结点(的两种解法)

题目描述输入一个链表,输出该链表中倒数第k个结点。如果该链表长度小于k,请返回空。方法一 :返回正数len+1-k方法二: 双指针解法 /* 初始:快慢指针都等于head 准备:快指针前进k,慢指针前进1 过程:快慢指针分别前进1,faster.next=null时,慢指针所指向的就是倒数第k个结点, 返回慢指针 */import java.util.*;/* * public class ListNode ...

2021-04-03 18:27:12 40

原创 面试题 10.01. 合并排序的数组

面试题 10.01. 合并排序的数组方法一:直接合并后排序算法最直观的方法是先将数组 BB 放进数组 AA 的尾部,然后直接对整个数组进行排序class Solution { public void merge(int[] A, int m, int[] B, int n) { for (int i = 0; i != n; ++i) { A[m + i] = B[i]; } Arrays.sort(A);

2021-03-31 17:16:52 83

空空如也

空空如也

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

TA关注的人

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