自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux常用命令记录

查询服务地址:实时日志:根据关键字查询日志:从第 10000000 开始查询关键字:11252400行的后200行日志:查询关键字带有引号时:

2023-03-16 14:57:56 105

原创 常用cron表达式

【代码】常用cron表达式。

2022-11-01 17:15:15 10104 1

原创 MongoDB简介和CRUD

1,图形化工具(robomongo):下载地址:https://robomongo.org/download2,图形化工具连接MongoDBconnect:create:name,address,端口:database,username,password,test:2个绿√:saveconnect结构:CRUD:aaa为集合(collection)查询:db.aaa.find()条件查询:...

2022-02-24 22:45:34 434

原创 feign远程调用

2个服务(provider,consumer),一个提供出去的接口(user)1,provider@RestControllerpublic class UserController implements UserAPI { @Value("${server.port}") private int port; @Override public String getHi() { return "provider" + port;...

2022-02-14 03:27:14 762

原创 Nginx单位时间内IP限流配置

nginx.conf配置:#user nobody;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream;#1分钟10个请求(10r/m) ,1秒2个请求(2r/s)limit_req_zone $binary_remote_addr zone=mylimit:...

2022-02-07 16:29:26 1702

原创 Java拦截器限制IP访问次数

1,pom引入依赖<dependency> <groupId>com.github.kaligence</groupId> <artifactId>requestLimit</artifactId> <version>${requestLimit.version}</version></dependency>2,定义拦截器import com.alibaba.fastjson.

2022-02-07 15:53:55 2264

原创 Java拦截器实现拦截controller方法

1,定义拦截器import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Component;import org.springframework.web.method.HandlerMethod;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.ser

2022-02-07 15:48:54 3649

原创 通过xshell隧道连接MySQL数据库

工具: 本地:xshell 6,Navicat Premium 服务器1(server1):地址:44.111.22.222 服务器2(server2):地址:xxx.xxx.x.xxx,安装MySQL数据库。前提:server1可以访问server2,外网(本地)可以访问server1,不可以访问service2。目标:本地可以访问server2的数据库。1,连接配置:主机为server1的地址。2,帐号密码:服务...

2021-12-09 17:59:42 4532

原创 常用正则记录

特殊字符校验:String regEx = ".*[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?\\\\]+.*";非数字校验:regEx = "[^0-9]"

2021-11-07 14:07:05 62

转载 sql中的判断语句 if...else的使用

mysql中if...else的方法 第一种: SELECT IF(1>0, '真', '假') FROM DUAL 也可以多条件嵌套用: SELECT IF(1>0, IF(2>1, '真', '假'), '假') FROM DUAL其他数据库在转载原文中有。...

2021-11-07 11:55:12 1327

原创 String常用记录

String str = "2020-11/01";String str2 = str.replace("-", "").replace("/", "");System.out.println(str2);cconsole result:20201101

2021-11-07 11:50:52 47

原创 二叉树红黑树

二叉树:结构类似树。节点:二叉树的元素。根节点:二叉树中的第一个元素。子节点,父节点,兄弟节点,叶子节点,左子节点,右子节点节点的3个概念(根节点到叶子节点的最长路径计算):高度:3,2,1,0深度:0,1,2,3层:1,2,3,4树的高度等于根节点的高度。满二叉树:1,叶子节点都在底层;2,除了叶子节点外,所有节点都有左右子节点。完全二叉树:1,叶子节点都在最底2层;2,最后一层叶子节点都在左边;3,除了最后一层,其他叶子节点都达到最大。二叉树存储结构:基于链表的链式存储

2021-09-14 10:14:12 106

原创 散列表和hash算法及应用

散列思想:就是和数组一样,支持按照下标随机访问数据。相当于数组的扩展,访问数据的时间复杂度为O(1)。比如一条数据有ID,Name等。把ID通过hash函数计算出hash值,再取模存入数组中。取模:根据数组的大小,计算当前hash值为数组的哪个下标。hash算法:业界著名的MD5、SHA、CRC等哈希算法。具有4个特点:1,计算出的hash值不相等(尽量不相等);2,计算速度快;3,不能反编译;4,任何修改计算出的hash值都是差异很大。hash冲突方案:1.开放寻址法:数组大小够...

2021-09-03 17:03:07 250

原创 算法(跳表Java实现)

跳表(Skip list)可以实现对数据快速的删除,插入,查找。如何理解“跳表”?对于有序的单链表,其查找也需要遍历所有元素,时间复杂度为O(n)。如果每2个结点建立一个指针作为索引。那么第一层索引的结点数为:n/2。2层:n/4。 h层:n/(2h)。假设h层索引,最高结点为2。那么n/(2h)=2,h=log2n-1如果包含原始链表这一层,整个跳表的高度就是 log2n。我们在跳表中查询某个数据的时候,如果每一层都要遍历 m 个结点,那在跳表中查询一个数据的时间复杂度就是 O(m*l.

2021-09-02 10:06:26 238

原创 如何实现高效的排序算法?

如何实现高效的排序算法?空间复杂度:不是原地排序的算法,需要注意数据量是不是很大,如果100M的数据,突然多出100M的临时空间申请,这相当于需要多出一倍的空间量,不太合适用非原地排序算法。稳定性:如果数据要求稳定的排序,那么要排除不稳定的排序。时间复杂度:有特殊需求的可以使用桶排序、计数排序和基数排序。数据量比较大时,如果内存不做限制,那么归并排序好,快速排序,因为分割数选的不好时,时间复杂度有可能退化为O(n2)。数据量非常小时,可以考虑插入排序,因为数据量小时,...

2021-08-31 09:38:02 151

原创 算法(线性时间复杂度的排序)

线性时间复杂度的排序算法:有桶排序、计数排序、基数排序桶排序(Bucket sort) 核心思路就是将要排序的数据分到几个有序的桶里,每个桶单独排序,依次从桶里把数据取出,这时候数据就有序了。桶排序的时间复杂度为什么是 O(n) 呢?我们一块儿来分析一下。如果要排序的数据有 n 个,我们把它们均匀地划分到 m 个桶内,每个桶里就有 k=n/m 个元素。每个桶内部使用快速排序,时间复杂度为 O(k * logk)。m 个桶排序的时间复杂度就是 O(m * k * logk),因为 ...

2021-08-30 16:29:54 1274

原创 算法(归并排序)

归并排序https://www.cnblogs.com/chengxiao/p/6194356.html// merge_sort(p…r) = merge(merge_sort(p…q), merge_sort(q+1…r)) // p >= r 不用再继续分解 public static void mergeSort() { int[] array = {2, 34, 5, 1, 62, 56, 7, 3}; int[] temp = new i...

2021-08-30 11:34:01 81

原创 算法(快速排序)

public static void quickSort() {// 快速排序 { int[] array = {2, 34, 5, 1, 62, 56, 7, 3}; quickRecursion(array, 0, array.length - 1); System.out.println(Arrays.toString(array)); }}public static void quickRecursion(int[] array.

2021-08-30 11:26:49 82

原创 算法(排序)

如何分析一个“排序算法”?排序算法的执行效率:1.最好情况、最坏情况、平均情况时间复杂度2.时间复杂度的系数、常数 、低阶3.比较次数和交换(或移动)次数排序算法的内存消耗:排序算法的稳定性:例子:订单的金额(可以相同)和时间排序。先按时间排序,再按金额排序(如果是不稳定排序,先排好的时间顺序会乱,稳定的不会)。冒泡排序(Bubble Sort)冒泡排序只会操作相邻的两个数据。每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小关系要求。如果不满足就让它俩互换。一次...

2021-08-27 11:47:21 73

原创 算法(递归)

满足递归的3个条件:1,一个问题可以分解为多个子问题2,有终止条件3,主,子问题解决思路一致。如何写递归代码?写递归代码的关键就是找到如何将大问题分解为小问题的规律,并且基于此写出递推公式,然后再推敲终止条件,最后将递推公式和终止条件翻译成代码。优点:简洁的代码缺点:难以理解堆栈溢出(限制递归次数)重复计算空间,时间复杂度应用:实例1,向前排询问自己的位置: // f(1) = 1 第一排 // f(n) = f(n-1)...

2021-08-26 17:38:29 66

原创 手写单向链表

public class LinkList { private static class Node { int element; LinkList.Node next; public Node() { } public Node(int element) { this.element = element; } @Override publ.

2021-08-26 15:20:08 33

原创 算法(栈学习笔记)

栈的概念:先入后出,后入先出。只能操作一端(尾部开始处理)。应用:1,运算(+-*/)2个栈,一个存操作数,一个存运算符。当第二个之后符号的优先度<=栈顶的运算符时,把符号栈中的符号都运算了,把当前符号入栈。后续没有运算符时把当前运算符出栈,再取出2个操作数运算,得出结果。2,实现浏览器前进后退,跳转功能2个栈,一个存前进,一个存后退。当前进栈跳转时,清空后退栈。当后退时把前进栈中数据入后退栈。...

2021-08-25 17:58:49 34

原创 算法(链表学习笔记)

3种链表结构:单向链 一个结点不仅存储数据还有指向下个结点的指针。尾结点指向NULL。双向链 一个结点不仅存储数据还有指向下个结点的指针和指向前面结点的指针。尾结点指向前面的结点。循环链 一个结点不仅存储数据还有指向下个结点的指针。尾结点指向第一个结点。特点:插入和删除的时候,由于只需要记录前后的数据,所以时间复杂度为O(1)。查询的时候,需要遍历所有数据,所有时间复杂度为O(n)。空间换时间设计理念: 双向链由于需要多记录前面的结点,多了一个指针,增大内存的消...

2021-08-25 17:57:58 65

原创 算法与数据结构(队列)

队列(queue):先进先出。队列的2个基本操作:1,入队:enqueue,放一个元素到队列尾部。2,出队:dequeue,从队列头部取一个元素。实现队列的2种方式:1,顺序队列:用数组实现 private String[] data;//存数据的数组 private int size;//容量 private int head = 0;//头部位置 private int tail = 0;//尾部诶之 public ArrayQueue(i...

2021-08-25 17:53:32 115

原创 数据机构与算法(数组)

如何应用算法写出好的代码? 性能,资源消耗。数据存储划分: 线性表(linear List,连续的内存空间,相同的数据类型):数组,链表,队列,栈。。。 非线性:各种树形结构,堆,图。。。什么时候用数组,什么时候用容器(ArrayList,Vector等)? 数组:1,当元素个数确定,操作简单。2,多维数组,Object[][]array优于ArrayList<ArrayList<Object>>array3,数组可以使用基本类型(int,long等...

2021-08-24 11:14:32 58

原创 算法+数据结构(时间,空间复杂度)

复杂度分析:1,时间(渐进时间复杂度)2,空间(渐进空间复杂度)复杂度分析方法:1,加法法则:总复杂度等于量级最大的那段代码的复杂度2,只关注循环执行次数最多的一段代码3,乘法法则,嵌套代码的复杂度等于嵌套内外代码复杂度的乘积PS:我们通常会忽略掉公式中的常量、低阶、系数,只需要记录一个最大阶的量级就可以了例如:T(n) = O(4n2+5n+3) =O(去掉系数4和5,常量3,结果为O(n2),2为平方) T(n) =O(log3n)=O(log...

2021-08-23 17:09:31 106

原创 前后端分离理解

总结:非前后端分离项目架构:1,JSP+sevlet这种架构JSP中有Java代码强侵入。2,JSP+Spring分层次(MVC)架构,JSP保留部分Java标签。3,springboot + 模板spring脚手架,第二种的变种。前后端分离项目架构:1,Vue + springboot(前端项目+后台接口)前端负责:1,页面显示,交互处理(职责)。2,基于功能的层次结构划分(模块)。后端负责:1,接口定义,业务处理(职责)。2,中小企业:先按结构分层...

2021-08-20 16:42:45 250

转载 zookeeper连接超时问题

Caused by: java.lang.IllegalStateException: zookeeper not connected at org.apache.dubbo.remoting.zookeeper.curator.CuratorZookeeperClient.<init>(CuratorZookeeperClient.java:80) ~[dubbo-2.7.4.1.jar:2.7.4.1]Caused by: java.lang.IllegalStateExceptio...

2021-07-08 14:55:04 2106

转载 @GETTER@SETTER注解在ECLIPSE中不生效

版权声明:本文为Soldier_lsl原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/Soldier_lsl/article/details/109304150

2021-07-08 14:36:53 607

转载 div中文字自动换行

<style> div { white-space:normal; word-break:break-all; word-wrap:break-word; } </style> <div style=" width:100px; border:1px solid red"> I am a doibiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii.

2021-07-06 10:04:33 2282

空空如也

空空如也

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

TA关注的人

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