- 博客(63)
- 收藏
- 关注
原创 本地环境的CORS跨域之我真鸡贼
在本地环境开发项目时,遇到了跨域问题,问题是这跨域问题不是一直都会出现,我什么都没改,启动项目竟然又没有跨域问题。首先说明我的项目请求的地址时127.0.0.1:8080,然后出现了跨域问题。接着我猛然看到在我的地址栏上地址是这样的:我拎鸡一栋将之修改为以下形式,就没有问题了。我真鸡贼。...
2021-12-18 16:58:39
752
原创 JVM学习笔记【JVM架构、class文件格式、方法区、类加载器(双亲委派)、编译解释执行】
目录前言Class文件方法区类加载编译解释执行前言前端编译,将java文件编译成class文件。我们可以拿着这个文件到各种平台的jvm上运行,这就是java所谓的跨平台的语言。而jvm却也因此可以称为跨语言的平台,因为jvm面对的是class文件,而不是java文件,这意味着任何语言不管kotlin还是scala等,只要能被编译成class文件,jvm就能运行。所以jvm和java可以说没什么关系。简单的看下jvm的整体架构(取自网络)Class文件既然jvm面对的是class文件,就
2021-11-21 16:13:45
698
原创 idea安装jclasslib插件显示乱码【已解决】
我出现乱码是因为版本的问题,如果你的idea是2019的,你就到官网安装对应的jclasslib即可官网地址https://plugins.jetbrains.com/plugin/9248-jclasslib-bytecode-viewer/versions下载完成后打开idea进行安装选择install plugin from disk选择你下载的安装包,点击ok,完成安装重启idea,再看看对了没...
2021-11-21 16:10:21
594
原创 Java的NIO同步非阻塞IO编程原理总结心得
BIO与NIO的区别BIO是同步阻塞的,比如当serverSocket监听是否有客户端请求连接时,若该对象没有监听到客户端连接,则一直将阻塞在那里。NIO是同步非阻塞的,比如当serverSocket监听时,若该对象没有监听到客户端连接,则直接执行接下来的程序,不会阻塞在那里。由以上的区别,我们又可以知道BIO必须是一个线程一个连接,否则将一直阻塞在那里,无法实现我们的功能。所以我们需要启用多个线程,才能管理多个连接。而NIO则可以通过一个线程管理多个连接。在介绍第二个区别之前,先介绍我们需要知道
2021-11-10 18:42:29
538
原创 传输层干的那些事儿【随笔】
tcp/udp–传输层协议角色:socket:ip+端口+协议(tcp/udp)linux万物皆文件,输入一下命令进行理解netstat -natp --》tcp、接收队列、发送队列、源和目的[ip:端口]的服务的信息–》socket套接字信息tcpdump -nn -i eth0 port 80 抓端口为80的包tcpdump -nn -i eth0 抓包 、、接口名不一定是eth0,敲入ifconfig查看exec 8<> /dev/tcp/www.baidu.com/80
2021-11-10 18:37:14
2192
原创 基数排序的基本思想与模板分析【排序算法篇】
基本思想假如来了一个混乱数组org,我们需要将它排好序。我们做如下操作。先得到该数组中最大的那个数MAX。创建一个数组ans,该数组的长度就是MAX。接下来遍历混乱数组org,ans[org[i]]=org[i];。以上的操作很简单,我们可以轻易的看出其缺点就是太浪费空间。那么基数排序,则是对以上操作进行了优化。基数排序我们做如下操作。根据创建桶数组,其长度与混乱数组一致。接下来循环,第一轮是取每个数字的个位数,在桶数组对应位置+1。根据桶的个数生成位置。获取位置,更新原数组。.
2021-10-25 22:47:03
343
原创 堆排序 【排序算法篇】
升序:最大堆,降序:最小堆构造最大堆后,我们就知道了在当前无序区间里,最大的值是哪个,即堆顶元素,取出来放至有序区间,就像选择排序。那么如何构造最大堆or最小堆?::不断调整,最终形成 堆排序流程:1、初始化堆 2、获取堆顶元素,并移除它,重新构造堆图解以下动图均取自网络初始化最大堆:先从底层开始比较交换构建堆 自底向上自底向上自底向上调整最大堆:先从顶层开始比较交换构建堆 自顶向下自顶向下自顶向下代码模板(升序)public void get() {
2021-10-10 21:01:47
253
原创 归并排序思想与模板分析【排序算法篇】
主要思想:分治+合并合并两个有序数组为一个有序数组是一个非常容易的操作,我们基于此操作做以下处理。通过分治法,将原数组分出许多长度为2的数组在这些长度为2的数组中,我们将第一个数看作为一个有序数组,第二个数也看作为一个有序数组,将它们进行合并,很容易合并为一个有序数组,那么现在这些长度为2的数组也都是有序数组了。递归回来,我们将原数组分为了长度为4的数组,在这些数组的内部,分别有两个有序数组,将它们进行合并,那么这些长度为4发数组也都是有序数组了。如此类推……我们最终可使原数组变为有序.
2021-10-08 22:16:45
115
原创 shell 希尔排序【排序算法篇】
希尔排序此算法建立在插入排序上。首先,将要排序的数组,按照一定的增量分出子序列,我们对子序列利用插入排序算法排序。然后,增量=增量/2,在按照增量分出子序列,对它们进行排序。如此往复,直到增量=1时,意味着分不出子序列了,数组已经有序。增量可以看作子序列中各个节点的距离,以及子序列的个数。...
2021-10-07 18:39:11
233
原创 插入排序思想与模板分析【排序算法篇】
插入排序核心思想:假设前半个区间是有序的,那么我们将先取后半个区间的第一个值A(该数也可以说是有序区间的后面的那个数,也许这样更清楚),与前半个区间从后往前进行比较交换,找到A适合的位置停止比较交换即可。举例:【1、2、4、5、3、0】,建立升序数组已知:【1、2、4、5】这个区间有序,我们只需其考虑后面那个数【3】在有序区间的位置即可,具体流程如下:【1、2、4、5、3、0】原数组【1、2、4、5、3、0】将【3】与 它前面的数【5】进行比较,【3】小,交换,如下【1、2、4、3、5、0.
2021-10-07 15:15:18
175
原创 冒泡排序与选择排序【排序算法篇】
冒泡排序邻居根据规则交换,将较小的或较大的值沉下去,形成升序数组或降序数组。以下是升序数组的案例:public static void BubbleSort(int [] arr){ int temp;//临时变量 for(int i=0; i<arr.length-1; i++){ //表示趟数,一共arr.length-1次。 for(int j=0; j<arr.length-1-i; j++){ //每一趟,都将使当前区间.
2021-10-06 19:39:46
69
原创 cmd运行javac命令报错: 错误: 找不到符号【已解决】
问题描述:本想测试PriorityQueue是否可以单一元素重复存储,但遇到了如下情况:public class Test{ public static void main(String[] args){ PriorityQueue<Integer> queue=new PriorityQueue<Integer>(new Comparator<Integer>(){ public int compare(Integer m,Integer n){
2021-09-08 12:35:14
4060
原创 idea突然打不开了【已解决】
问题描述:idea突然打不开了原因分析:初步判断,之前没有正确退出idea理由如下:通过我们查看任务管理器,发现在应用中没有idea的身影。但它却存在于后台进程中。笔者未及时截图,,,解决方案:将idea后台进程关闭即可。重新双击即可打开了。...
2021-08-20 18:07:10
7085
7
原创 spring 使用aop出现Exception encountered during context initialization-argNames attribute isn‘t define
问题描述:在练习spring-aop中,配置完业务类和切面类之后,无法启动spring8月 05, 2021 10:36:41 上午 org.springframework.context.support.AbstractApplicationContext refresh警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.fact
2021-08-05 10:50:44
625
原创 springboot 出现 Cannot resolve MVC View ‘index‘ 问题
项目场景:controller实现跳转页面至index项目结构导入依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.3.RELEASE</version> &
2021-08-04 14:32:17
8037
4
原创 springboot 整合 Gson
文章目录前言一、导入依赖二、使用步骤1.启动类2.配置类为什么gsonFactoryBean.afterPropertiesSet()必须调用?测试结果前言springboot 整合 Gson ,可以对Gson进行额外的配置,本文只设置当我们对Date对象进行json化,得到json字符串将是自己设置的pattern日期格式。一、导入依赖 <parent> <groupId>org.springframework.boot</groupId
2021-08-04 11:55:04
750
原创 策略模式
行为性模式该模式解决了什么问题?首先请看以下的代码片段。当我们对不同的输入有不同的输出,常用的方法是if|else或者switch等。但当我们需要进行扩展时,就不可避免的需要修改源代码,这不是我们希望看到的。模板...
2021-07-26 15:54:37
59
原创 json-server安装教程以及初步运用
前置准备vscodenode.jsnpm是随同NodeJS一起安装的包管理工具npm install -g json-serverC:\Users\86134\AppData\Roaming\npm
2021-07-18 18:17:32
4316
原创 Linux使用命令出现的错误及解决方案【持续更新】
使用移动命令mv index.html demo/index.html以上是我想将index.html移动至demo文件夹下。出现错误mv: cannot move ‘index.html’ to ‘demo/index.html’: No such file or directory解决方案:先进入demo文件夹下cd demo//再将上级目录中的index文件进行转移mv ../index.html index.html...
2021-07-12 19:51:09
389
原创 网络拓扑及服务器的搭建随笔
网络拓扑搭建华为设备所使用的技术vlanmstp生成树vrrpospfnetvpn - IPSec使用虚拟机进行搭建测试服务器域控制器DNSDHCPFTP服务器mail服务器web服务器
2021-07-12 10:00:33
799
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人