java晋升之路
飞翔的山药蛋子
这个作者很懒,什么都没留下…
展开
-
TCP的三次握手四次挥手详解
tcp三次握手四次挥手原创 2022-12-27 15:29:59 · 678 阅读 · 2 评论 -
Springboot使用@Async-遇到的问题
@Async不生效问题解决原创 2022-07-06 11:33:54 · 548 阅读 · 0 评论 -
java线程池
java线程池原创 2022-04-20 16:25:36 · 672 阅读 · 1 评论 -
使用Spring的AOP做系统请求日志记录
通过使用Spring的AOP功能,实现系统调用的日志记录。原创 2022-01-17 14:37:18 · 376 阅读 · 0 评论 -
参数名的 ASCII 码大小顺序排序,并以“&”进行连接
java请求三方进行Encoder加密,Ascii从大到小排序&链接原创 2022-01-10 11:27:05 · 801 阅读 · 0 评论 -
BufferedinputStream学习
思考:有了inputStream为什么还需要BufferedInputStream?inputStream和bufferedInputStream的区别就是后者带有缓冲区,前者没有inoutStream在读取的时候,每读一个字节就需要写入一个字节,这样就会频繁的进行IO操作bufferedInputStream带缓冲区的流,可以一次性读取很多字节,但是不往磁盘中写入,只是放在内存中,等凑够了缓冲区大小的是时候,一次性写入到磁盘中也就引生出了一个需要注意的地方在使用bufferedInputStr原创 2021-08-11 16:00:40 · 838 阅读 · 0 评论 -
使用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 · 940 阅读 · 0 评论 -
JAVA基础之-----反射详解(**)
反射是框架实现的灵魂所在必须先得到字节码的class思考? java中如何创建对象1.使用new关键字:这是我们最常见的也是最简单的创建对象的方式2.使用Clone的方法:无论何时我们调用一个对象的clone方法,JVM就会创建一个新的对象,将前面的对象的内容全部拷贝进去3.使用反序列化:当我们序列化和反序列化一个对象,JVM会给我们创建一个单独的对象4.反射一、反射的概述java反射机制:在运行状态中,对于任意一个类,都能够知道这个类的属性和方法。对于任意一个对象,都能够调用他的属性原创 2020-07-07 18:59:34 · 250 阅读 · 0 评论 -
java基础之------泛型详解
一、概述泛型是jdk1.5之后引入的一个新特性,泛型提供了编译时类型安全的检测机制,这个机制允许程序员在编写程序的时候进行非法参数的检测。使用泛型要比使用Object类型要好的多的多,让代码具有了更高的可读性和安全性泛型就是将原来具体的类型参数化,类似于方法中的变量参数,在使用的时候传入具体的类型目的: 在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型1.添加参数的时候可以进行参数的合法性判断2.获取参数的时候不用进行强制类型的转换泛型的本质是参数化类型 也就是所有操原创 2020-07-07 18:21:30 · 200 阅读 · 0 评论 -
java基础之-------异常详解
异常(Throwable)异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。Throwable 为最顶级的Error:(错误):是程序无法处理的错误,表示运行应用程序中较严重问题。大多数错误与代码编写者执行的操作无关,而表示代码运行时 JVM(Java 虚拟机)出现的问题。例如,Java虚拟机运行错误(Virtual MachineError),当 JVM 不再有继续执行操作所需的内存资原创 2020-07-06 22:05:13 · 254 阅读 · 0 评论 -
java集合总结:相对详细
集合分为 Collection 和 MapList集合有序可重复ArrayList:底层是一个数组优点访问数据方便,数据增删慢默认的大小是10线程不安全的添加数据容量不够时候会创建一个新的数组然后将数据复制过去System.arraycopy();LinkedList:底层是通过链表实现方便数据的插入,删除,不利于数据的查询Vector:底层是一个数组线程安全的面试题:ArrayList和Vector的区别:ArrayList和Vector底层都是数组原创 2020-06-02 17:42:28 · 154 阅读 · 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 · 166 阅读 · 0 评论 -
Socket ----TCP---实现文件的复制
TCP1.特点1.底层基于流模式实现,通过三次握手(成功)建立连接,比UDP可靠,但是传输的速度慢2.TCP是通过字节流的形式直接传输数据,所以不用限制大小3.传输文件全,不回丢失信息,一般用在文件的传输4.实现: 客户端(Socket) 服务端(ServerSocket)原理图tcp的三次握手2. 代码实现:客户端:public class TCPClienDemo { ...原创 2020-04-04 22:42:58 · 419 阅读 · 0 评论 -
Scoket-----UDP---简易聊天室
UDP:1 特点:1.底层基于流的模式,不会去创建连接 ,所以安全性不可靠,但是传送速度块2.是以数据包的形式进行数据的传输,发送者使用数据包发送,接受者同样使用数据包接收3.传输的类为DatagramSocket , 数据包为 DatagramPacket4.一般使用在视频聊天2.代码实现发送者:public class UDPSenderDemo { public...原创 2020-04-04 20:46:35 · 129 阅读 · 0 评论 -
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 · 225 阅读 · 0 评论 -
java集合之ArrayList
# ArrayList 底层是一个容量能够动态增长的数组特点是: 可以随机的访问元素,但是增删改缓慢,他不是线程安全的,在单线程中是使用(多线程使用Vector或者CopyOnWriteArrayList)1. 源码分析1.构造方法:ArrayList() // 构造一个初始容量为 10 的空列表。ArrayList(int initialCapacity) ...原创 2020-03-28 20:22:27 · 151 阅读 · 0 评论 -
java1.8新特性 time 日期处理
加粗样式@TOC欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将...原创 2020-03-25 16:51:22 · 254 阅读 · 0 评论 -
SSH框架整合
ssh框架是:spring+springMVC+mybatis下面就详细的讲解一下SSH项目的整合:1.创建web项目,注意这里创建的时候选择2.5的版本,他会自动生成web.xml文件。2.在项目文件夹下创建lib文件夹3.导入需要用到的jar包(只列出了部分)jar包下载去这里。https://download.csdn.net/download/luodong1501...原创 2019-07-03 10:38:12 · 124 阅读 · 0 评论 -
多线程学习
今天来总结一下多线程的知识。哪里错了希望留言指出,谢谢1.多线程创建和启动 1.继承Thread类package com.ld.java;public class Text1 { public static void main(String[] args) { A a = new A(); a.start(); for(int i=1;i<=10;i++)...原创 2019-06-27 21:41:28 · 103 阅读 · 0 评论 -
Springboot整合ssm 前后端分离开发
从学校毕业,参加了第一份工作,由于自己基础的薄弱,导致被公司辞退,在公司呆了半个月收获也是挺丰厚的,springboot整合ssm就是我学到的,分享给大家说到springboot 网上的介绍有很多,我这就不再赘述,下面开始搭建项目了上面这一页就是你项目的信息点上这些就不用你后期的添加了完成之后的样子是这样的其中红框框标出来的就是程序启动的入口由于s...原创 2019-07-11 14:01:00 · 747 阅读 · 0 评论 -
MangoDB使用
留着明天写今天8/3号MongoDB文档型数据库(介于关系型数据库和非关系型数据库之间) MongoDB 是一个跨平台的,面向文档的数据库,是当前 NoSQL 数据库产品中最热 门 的一种。它介于关系数据库和非关系数据库之间,是非关系数据库当中功能最丰富,最 像关 系数据库的产品。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以 存 储比较复杂的数据类...原创 2019-08-03 00:17:16 · 873 阅读 · 0 评论 -
MongoDB第二篇
上一章对MongoDB做了简单的介绍,下面就让我们用java代码来操作吧1.导入jar包 mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。 使用maven 引入依赖<dependencies> <dependency> <gro...原创 2019-08-03 11:02:42 · 179 阅读 · 0 评论 -
分布式搜索引擎ElasticSearch
学习的目标 安装ElasticSearch,并且可以使用RestAPI进行基本的增删改查操作 Head插件的安装,也就是ElasticSearch的客户端,并掌握他的使用方法 安装IK分词器,使用IK分词器进行分词 使用SpringDataElasticSerach完成搜索微服务 logstash完成mysql与ElasticSearch的同步 一...原创 2019-08-04 00:04:31 · 213 阅读 · 0 评论 -
分布式搜索引擎ElasticSearch 二
继续上一篇的学习今天讲解的是 使用SpringDataElasticSerach完成搜索微服务 logstash完成mysql与ElasticSearch的同步 1,使用SpringDataElasticSerach完成搜索微服务 pom文件导入依赖的jar包<dependencies> <!--elasticsearc...原创 2019-08-04 10:56:09 · 190 阅读 · 0 评论 -
缓存 redis和springboot cache
在项目中使用到了缓存的机制,所以在这里总结一下,加深印象先说一下redis缓存吧,我使用的是springboot开发的,对于redis的安装我这里就不多说了,网上有很多的教程1.项目配置redis (在pom文件中引入redis的jar包)<dependency> <groupId>org.springframework.boot</group...原创 2019-08-02 13:33:45 · 517 阅读 · 0 评论 -
JQuery学习(一)
jQuery他是一个javaScript的框架,简化js的开发优化了html操作(dmo)原始的操作<body> <div id="div1">div1...</div> <div id="div2">div2...</div></body><script> var...原创 2019-08-25 23:10:58 · 147 阅读 · 0 评论 -
java集合解析一
1.collection集合数组弊端,一但创建无法动态扩容集合中的泛型必须是引用类型,不能使用基本类型集合重写了他的toString方法,打印的不是地址1.collection接口(单列集合)共同方法:clear :清除所有元素contains :集合是否包含给定的对象isEmpty :判断集合是否为空toArray :转化为数组list集合的特点(接口)...原创 2019-08-21 22:57:22 · 112 阅读 · 0 评论 -
hashmap的原理
了解hashmap必须先了解hashcode什么是hashcode呢?以下内容来自摘抄1.hashcode是用来查找的,如果你学过数据结构就应该知道,在查找和排序这一章有 例如内存中有这样的位置 0 1 2 3 4 5 6 7 而我有个类,这个类有个字段叫ID,我要把这个类存放在以上8个位置之一,如果不用hashcode而任意存放,那么当查找时就需要到这八...原创 2018-11-21 12:00:37 · 116 阅读 · 0 评论