自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

luodong1501的博客

一个编程的小白

  • 博客(82)
  • 资源 (4)
  • 收藏
  • 关注

原创 TCP的三次握手四次挥手详解

tcp三次握手四次挥手

2022-12-27 15:29:59 647 2

原创 Springboot使用@Async-遇到的问题

@Async不生效问题解决

2022-07-06 11:33:54 502

原创 java线程池

java线程池

2022-04-20 16:25:36 640 1

原创 使用Spring的AOP做系统请求日志记录

通过使用Spring的AOP功能,实现系统调用的日志记录。

2022-01-17 14:37:18 359

原创 MQ学习——<一>

MQ消息队列

2022-01-13 17:37:58 383

原创 参数名的 ASCII 码大小顺序排序,并以“&”进行连接

java请求三方进行Encoder加密,Ascii从大到小排序&链接

2022-01-10 11:27:05 714

原创 awatch gps 离线使用喜马拉雅

手机订阅想听的watch打开软件---->我的订阅-----> 下载

2021-08-31 16:00:04 679

原创 BufferedinputStream学习

思考:有了inputStream为什么还需要BufferedInputStream?inputStream和bufferedInputStream的区别就是后者带有缓冲区,前者没有inoutStream在读取的时候,每读一个字节就需要写入一个字节,这样就会频繁的进行IO操作bufferedInputStream带缓冲区的流,可以一次性读取很多字节,但是不往磁盘中写入,只是放在内存中,等凑够了缓冲区大小的是时候,一次性写入到磁盘中也就引生出了一个需要注意的地方在使用bufferedInputStr

2021-08-11 16:00:40 765

原创 PlumeLog日志搭建-redis+es

PlumeLog日志搭建Plumelog一个简单易用的java分布式日志组件搭建步骤:1: 安装redis or kafka这里使用的是redis ​ redis 官网:https://redis.io​ kafka:http://kafka.apache.org​ 推荐使用docker安装redis:# 拉取镜像sudo docker pull redis# 下载redis.confwget -P /usr/local/redis http://download.red

2021-03-08 10:16:58 2215 1

原创 使用spring的ioc实现简单工厂模式

有一个需求是这样的,有五家银行的数据需要进行从excel中读取,进行筛选,每一家的筛选逻辑是不一样的,创建了5个bean,现在需要通过解析excel的名称然后动态的进行获取bean对象先不使用工厂模式来实现着一个功能设计:创建一个Map集合,key存放excel所需要匹配的名字,value是需要的bean对象package com.picc.peek.dvp.filter;import com.picc.peek.dvp.service.BankBussinessType;import com

2020-09-11 13:41:16 924

原创 SpringCloud-----Ribbon手写轮询算法

1.在服务的消费方提供一个接口public interface LoadBalancer{ // serviceInstanceList 为eureka中服务的数量 ServiceInstance instance(List<ServiceInstance> serviceInstanceList);}2.实现接口@Component // 注意一定要将其注入到spring容器之中public class MyLb implements LoadBalancer{

2020-07-21 23:34:12 235 2

原创 JAVA基础之-----反射详解(**)

反射是框架实现的灵魂所在必须先得到字节码的class思考? java中如何创建对象1.使用new关键字:这是我们最常见的也是最简单的创建对象的方式2.使用Clone的方法:无论何时我们调用一个对象的clone方法,JVM就会创建一个新的对象,将前面的对象的内容全部拷贝进去3.使用反序列化:当我们序列化和反序列化一个对象,JVM会给我们创建一个单独的对象4.反射一、反射的概述java反射机制:在运行状态中,对于任意一个类,都能够知道这个类的属性和方法。对于任意一个对象,都能够调用他的属性

2020-07-07 18:59:34 235

原创 java基础之------泛型详解

一、概述泛型是jdk1.5之后引入的一个新特性,泛型提供了编译时类型安全的检测机制,这个机制允许程序员在编写程序的时候进行非法参数的检测。使用泛型要比使用Object类型要好的多的多,让代码具有了更高的可读性和安全性泛型就是将原来具体的类型参数化,类似于方法中的变量参数,在使用的时候传入具体的类型目的: 在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型1.添加参数的时候可以进行参数的合法性判断2.获取参数的时候不用进行强制类型的转换泛型的本质是参数化类型 也就是所有操

2020-07-07 18:21:30 195

原创 java基础之-------异常详解

异常(Throwable)异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。Throwable 为最顶级的Error:(错误):是程序无法处理的错误,表示运行应用程序中较严重问题。大多数错误与代码编写者执行的操作无关,而表示代码运行时 JVM(Java 虚拟机)出现的问题。例如,Java虚拟机运行错误(Virtual MachineError),当 JVM 不再有继续执行操作所需的内存资

2020-07-06 22:05:13 237

原创 Ubuntu 20.04 美化macos

1.安装完之后ubuntu成这样我觉得太丑了,美化他,1. 修改清华源https://blog.csdn.net/luodong1501/article/details/1061773552. 下载火焰截图sudo apt-get install flameshot配置快捷键: flameshot gui3.下载macos主题https://www.pling.com/s/Gnome/p/1275087/4. 下载ubuntu 优化sudo apt install gnome-twe

2020-06-24 17:26:43 12645

原创 ubuntu 为swap添加空间(交换空间)

原先电脑只有2g的交换,卡到飞起来,有没有钱换新的电脑,只能加交换1.在/ 目录下创建一个文件夹sudo mkdir /swapcd /swapsudo fallocate -l 16G swapfile2. cd /swap/swapfile3. 查看刚才创建的ls -lh /swapfile 4.修改权限sudo chmod 600 /swap/swapfile5.将这个目录设置为交换分区sudo mkswap /swap/swapfile6.启用交换分区sudo s

2020-06-23 17:35:54 1401 1

原创 ubuntu 20.04 装docker -----配置免sudo操作

https://www.cnblogs.com/songxi/p/12788249.html亲测有效

2020-06-22 15:20:05 1231

原创 Redis学习之-----主从复制

互联网的三高:高可用高并发高性能如果redis是单节点会出现以下问题:机器故障:容量瓶颈redis主从复制:为了避免单点Redis服务器故障,准备多台服务器,互相连通。将数据复制多个副本保存在不同的服务器上,连接在一起,并保证数据是同步的。即使有其中一台服务器宕机,其他服务器依然可以继续提供服务,实现Redis的高可用,同时实现数据冗余备份。会提供两个或两个以上的机器进行搭建:一个master作为数据的写入工作,其他的作为slave用于数据的读取怎么解决数据的同步问题

2020-06-17 00:54:32 139

原创 Redis的删除策略----详解

Redis的删除策略Redis是在内存中存储数据的,所有的数据都放在内存中。内存中的数据状态可以通过TTL进行获取状态-1 永久性存储的数据-2 已经过期的数据/被删除的数据/未定义的数据XX 具有时效性数据过期的数据真的被删除了吗?现实生活中的一个例子:你女朋友叫你去吧垃圾扔掉但是,在打游戏的你真的会去干吗???过了一会,女朋友过来看见垃圾还在,这就是回到正题,当redis处理东西,发出一条指令到cpu(cpu无一点压力)但是,如果一下子来了好多的指令呢?这时候,删除过

2020-06-15 23:56:33 1532 4

原创 Redis的事物-----详解

在说redis的事物之前,说一个小故事收银员在数钱,一个小孩在唱歌,这时候收银员就不能专心的去数钱了1.什么是事物?redis的事物就是一个命令执行的队列,将一系列预的指令包装成为一个整体,当执行的时候,一次性的按照添加的顺序依次执行,中间不会被干扰。2.事物的操作开启事物:multi: 设定事物开启的位置,此指令执行后,后续的所有指令的都会加入到事物中结束事务:exec : 设定事物结束的位置,同时执行

2020-06-12 23:55:26 669

原创 Redis的持久化(RDB和AOF)--详解

Redis的持久化1.Redis的持久化方案由于redis的数据都存储在内存中,如果没有配置持久化,redis重启之后数据就会全部丢失,于是需要redis的持久化功能,将数据保存到磁盘中,在redis重启后,就会从磁盘中恢复数据从严格意义上说,Redis服务提供四种持久化存储方案:RDB、AOF、虚拟内存(VM)和 DISKSTORE。虚拟内存(VM)方式,从Redis Version 2.4开始就被官方明确表示不再建议使用,Version 3.2版本中更找不到关于虚拟内存(VM)的任何配置范例

2020-06-11 19:31:08 413

原创 Ububtu 20.04 安装mysql8.0 --之前一直在安装的时候不能设置密码

1.添加mysql 8.0 的数据源sudo apt-get install software-properties-commonsudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'2.安装 mysql 8.0sudo apt-get updatesudo apt install mysql-server-8.0sudo apt install mysql-client-8.03.设置开

2020-06-10 01:02:23 1072

原创 Redis数据类型----String

Redis 数据存储结构redis自身是一个map,其中所有的数据都是通过key:value 的形式进行存储的数据类型指的是value 的部分,redis中的key一直是StringString 类型数据的基本操作:127.0.0.1:6379> set name lisi # 添加OK127.0.0.1:6379> get name # 获取"lisi"127.0.0.1:6379> append na

2020-06-09 00:43:54 323

原创 Redis --初识

面试的时候问了Redis 觉得很重要,私下学学:为什么用使用redis?海量的用户高并发Redis可以干什么缓存:毫无疑问这是redis当今最让人熟知的使用场景,这可以提升服务器的性能排行榜: 如果使用传统的数据库来实现这个,非常的麻烦,但是使用redis中的sortSet(有序集合)数据结构能够非常方便的解决计算器: 利用redis中原子自增操作,可以统计类似用户点赞,用户访问数限速器: 经典的业务场景就是限制某个用户访问api的频率,常用在抢购时候,防止用户疯狂点击

2020-06-09 00:12:02 153

原创 java集合总结:相对详细

集合分为 Collection 和 MapList集合有序可重复ArrayList:底层是一个数组优点访问数据方便,数据增删慢默认的大小是10线程不安全的添加数据容量不够时候会创建一个新的数组然后将数据复制过去System.arraycopy();LinkedList:底层是通过链表实现方便数据的插入,删除,不利于数据的查询Vector:底层是一个数组线程安全的面试题:ArrayList和Vector的区别:ArrayList和Vector底层都是数组

2020-06-02 17:42:28 148 1

原创 ArrayList源码分析

ArrayList 实现了List接口,list接口继承了collection类ArrayList的优点是:可以根据下标快速的查找出数据缺点是:增删操作非常的消耗性能1.首先从创建开始:ArrayList提供了三个构造方法1.无参构造private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {};public ArrayList() { this.elementData = DEFAULTCAPAC

2020-05-31 19:56:03 154

原创 排序算法---冒泡排序---选择排序---插入排序

1.冒泡排序越小的数会慢慢的浮出水面(冒泡)一次性比较两个数,比较两个的大小描述:1. 比较相邻的两个元素。如果第一个比第二个大,交换2. 对每一对相邻的数据做同样的操作,结果最后一个为最大的数3. 针对所有的元素重复以上的,处过最后一个4. 重复1~3动图演示代码:int [] arr = {2,4,1,3,5};for(int i = 0;i<arr.length;i++){ for(int j=0;j<arr.length-i-1;j++){

2020-05-29 14:03:05 169

原创 docker安装elasticsearch 闪退 9200访问不了

1.我试过7.7.0的,实验失败,老是闪退,更改到5的版本可以1.解决闪退问题在启动的时候手动修改他的内存大小添加 -e “ES_JAVA_OPTS=-Xms256m -Xmx256m” 参数2.解决9200无法访问启动elasticsearchsudo docker run -p 9200:9200 -p 9300:9300 -d --name my_es_01 -e "ES_JAVA_OPTS=-Xms256m -Xmx256m elasticsearch:5.6.13启动之后进

2020-05-25 18:30:19 3084

原创 docker启动rabbitmq无法访问15672端口

1.查看rabbitmq的idsudo docker ps2.进入到rabbitmq容器中sudo docker exec -it 3b124f0c9712 /bin/bash3.执行rabbitmq-plugins enable rabbitmq_management浏览器访问

2020-05-25 10:50:28 1829 3

原创 SpringBoot 使用Redis 序列化问题

springboot默认使用的事JdkSerializationRedisSerializer 序列化方式string类型的可以但是遇到对象,就会在key和value的前面出现前缀这时候就需要修改他的序列化方式查看源码得知(先找原因)ctrl+n 搜索 RedisAutoConfiguration (redis的自动配置类) @Bean @ConditionalOnMissingBean( name = {"redisTemplate"} ) .

2020-05-22 16:35:36 617

原创 Dbever 连接mysql8.0 提示Public Key Retrieval is not allowed

修改成true就可以了

2020-05-19 11:22:42 486

原创 Ubuntu docker tomcat启动报404错误

在docker中安装tomcat 启动报404错误查看tomcat的idsudo docker ps查看tomcat目录文件sudo docker exec -it ab52084fd7fd /bin/bash发现 有两个webapps 第一个进去是空的,问题找到删除webapps文件sudo rm -rf webapps修改文件名sudo mv webapps.list webapps网页localhost:8080解决...

2020-05-18 19:44:18 396

原创 Ubuntu 20.04 中 安装docker

1 检查Ubuntu的内核docker需要ubuntu的内核是高于3.10命令:uname -r2.安装docker命令: sudo apt-get install docker.io3.查看版本docker --version4. 启动命令: sudo systemctl start docker查看状态: sudo systemctl status docker5.关闭sudo systemctl stop docker6.卸载dockersudo

2020-05-18 15:51:28 8187 5

原创 Ubuntu 中查找软件所自位置

1.由软件商店安装的/snap/bin/2.由apt-get命令安装的/usr/share命令whereis namedpkg -L name (apt-get)

2020-05-18 15:21:50 885

原创 Ubuntu 20.04切换软件源为清华源

1. 清华软件源地址清华软件源打开之后搜索ubuntu选中第一个注意红框标出的ctrl+alt+t先备份原始的sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup后面加 .backup标志为备份文件sudo gedit /etc/apt/sources.list编辑文件删除文件中所有的 将 第二个红框里面的赋值粘贴上去 保存最后更新源 ‘sudo apt-get update好了...

2020-05-17 17:22:14 28889 3

转载 Ububtu使用搜狗输入法

这里写自定搜狗输入法 for Linux 官网 未更新, 在论坛找到了大佬的解决方案仓库地址: https://gitee.com/laomocode/fcitx-sogouimebs下载地址: https://gitee.com/laomocode/fcitx-sogouimebs/releases下载 deb 安装包安装搜狗输入sudo dpkg -i sogouimebs.deb解决依赖sudo apt --fix-broken install重新安装sudo dpkg -i sog

2020-05-14 11:13:44 426

原创 Socket ----TCP---实现文件的复制

TCP1.特点1.底层基于流模式实现,通过三次握手(成功)建立连接,比UDP可靠,但是传输的速度慢2.TCP是通过字节流的形式直接传输数据,所以不用限制大小3.传输文件全,不回丢失信息,一般用在文件的传输4.实现: 客户端(Socket) 服务端(ServerSocket)原理图tcp的三次握手2. 代码实现:客户端:public class TCPClienDemo { ...

2020-04-04 22:42:58 386

原创 Scoket-----UDP---简易聊天室

UDP:1 特点:1.底层基于流的模式,不会去创建连接 ,所以安全性不可靠,但是传送速度块2.是以数据包的形式进行数据的传输,发送者使用数据包发送,接受者同样使用数据包接收3.传输的类为DatagramSocket , 数据包为 DatagramPacket4.一般使用在视频聊天2.代码实现发送者:public class UDPSenderDemo { public...

2020-04-04 20:46:35 121

原创 java集合之LinkedList

LinkedList 是基于链表实现的(内部类) int size = 0; // 记录链表的长度 Node first; // 第一个子结点 Node last; // 最后一个子结点 class Node { String str; // 节点内数据 Node prev; // 上一个节点的位置 Node next; // 下一个节点的位置 pub...

2020-03-28 20:35:28 214

原创 java集合之ArrayList

# ArrayList 底层是一个容量能够动态增长的数组特点是: 可以随机的访问元素,但是增删改缓慢,他不是线程安全的,在单线程中是使用(多线程使用Vector或者CopyOnWriteArrayList)1. 源码分析1.构造方法:ArrayList() // 构造一个初始容量为 10 的空列表。ArrayList(int initialCapacity) ...

2020-03-28 20:22:27 142

sogouimebs_2.0.0.38+0428.1_amd64.deb

ubuntu20.04 安装搜狗输入法,有效,真香,觉得初始的用不管可以来修改下

2020-05-14

springboot整合ssm ,mybatis使用的是xml形式 ,前后端分离,内置tomcat服务器

springboot 整合ssm ,其中mybatis使用的是xml格式开发,还有前后端分离

2019-08-02

SSH框架整合所需要的jar包下载

里面包含了SSH整合所需要的所有jar包,直接下载导入就可以使用

2019-07-03

archives.zip

基于百度AI的人脸识别 项目采用ssh框架进行开发.

2019-06-24

空空如也

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

TA关注的人

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