自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决mysql时区问题

set global time_zone = '+8:00'; flush privileges;以上的操作都是在查询中执行就行了

2021-11-30 22:16:42 121

原创 missing script:dev

npm ERR! A complete log of this run can be found in:npm ERR! C:\Users\陈俊\AppData\Local\npm-cache_logs\2021-11-29T12_51_23_582Z-debug.log在script里,并没有dev,而是serve,应该用npm run serve命令运行vue项目既可以

2021-11-29 21:07:01 508

原创 ‘webpack-dev-server‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

在项目下 npm install

2021-11-25 22:22:34 838

原创 实习到实习这段历程

文章目录标题一:杭州实习标题二:铁路面试标题一:杭州实习我是21年的毕业生,本科学的物联网工程。21年过完年大概是正月十三背包去外面找工作,刚开始选择了离家比较近的武汉,投了好几天也有面试感觉更多是hr为了完成业绩或者说这个公司根本不想要人。可能也是因为这个城市大学比较多,竞争压力是比较大的,后来我选择了杭州这个对互联网 比较友好的城市。面试了大概三四家吧,就有两个offer,虽然都不怎么好,但是总算是看到了希望,肯定了之前自己在学校自学的成效,不知道怎么想的选择了一个好点的公司就入职了,入职了之后才发

2021-11-25 20:21:13 2904

原创 改变eclipse上项目的tomcat的url

点击左下角的Modules,然后点击Path,然后选择Edit编辑你想选择的路径即可。

2021-04-28 15:21:37 373

原创 懒汉式和懒汉式线程安全(双检索)

首先写一个单例的懒汉模式:package THREAD;/** 懒汉模式*/public class Sluggard { private static Sluggard instance =null; public Sluggard(){ } public static Sluggard Getintance(){ if(instance==null){ instance=new Sluggard();

2021-03-07 22:22:20 823

原创 Interger和Int的区别

1:int是基本数据类型2:Interger是int的包装类,他有一个final修饰的int字段springBean的生命周期:

2021-03-07 22:03:52 814

原创 关于异常的高频面试题

1:Exception和error的区别他俩都是继承自超类Throwable,在java中只有Throwable类型的实例才能捕获或者抛出异常。Error 类及其子类。程序中无法处理的错误,表示运行应用程序中出现了严重的错误。特点:此类错误一般表示代码运行时 JVM 出现问题。通常有 Virtual MachineError(虚拟机运行错误)、NoClassDefFoundError(类定义错误)等。比如 OutOfMemoryError:内存不足错误;StackOverflowError:栈溢出错误

2021-03-07 17:34:01 280

原创 关于jvm中的方法区和常量池问题

1:方法区:首先这个问题要分jdk:1.8之前是独立的,里面只要是装着类的信息,代码和静态变量。方法区和堆的物理存储是连接在一块的,但是这种做法会出现一些问题,程序中加载的jar包和类过多的话,就会出现啊oom(内存溢出)的错误。1.8之后:方法区不存在的,但是多了一个元空间,他就是用来代替方法区的,但是元空间和堆在物理空间上是隔离的,虽然性能降低了,但是解决了oom问题,元空间的地址不是jvm地址而是你的电脑本地内存,只要你的本地内存充足,就可以一直运行。2:常量池1.8之前常量池在方法区中,

2021-02-28 16:05:52 183

原创 java获取GET和POST请求参数

URL和参数列表一 获取请求方式request.getMethod(); get和post都可用,二 获取请求类型request.getContentType(); get和post都可用,示例值:application/json ,multipart/form-data, application/xml等三 获取所有参数keyrequest.getParameterNames(); get和post都可用,注:不适用contentType为multipart/form-data

2021-02-28 15:54:18 991

原创 简述GET和POST的区别

表面的区别GET在浏览器回退时是无害的,而POST会再次提交请求。GET产生的URL地址可以被Bookmark,而POST不可以。GET请求会被浏览器主动cache,而POST不会,除非手动设置。GET请求只能进行url编码,而POST支持多种编码方式。GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。get方式提交数据的大小(一般来说1024字节),http协议并没有硬性限制,而是与浏览器、服务器、操作系统有关,而POST理论上来说没有大小限制

2021-02-28 15:51:55 226

原创 start()和run()的区别

start() : 它的作用是启动一个新线程,新线程会执行相应的run()方法。start()不能被重复调用。run() : run()就和普通的成员方法一样,可以被重复调用。单独调用run()的话,会在当前线程中执行run(),而并不会启动新线程!下面来看一段代码加深理解吧!class MyThread extends Thread{ public MyThread(String name) { super(name); } public void

2021-02-28 15:48:39 438

原创 通过字节码分析字符串面试题和intern()方法

首先给大家一段代码判断一下:String x="abc"+"cba";String y="abccba"; System.out.println(x==y);String d="aa";String z="bb";String s=z+d;String e="aabb"; System.out.println(s==e);大家思考一下两个输出语句的结果是?第一个是true,第二个是false为什么呢?第一个从字节码来看x=“abccba”;然后创建y的时

2021-02-21 18:08:05 92

原创 java整数型常量池

首先看一段代码: Integer a=127; Integer b=127; System.out.println(a==b); Integer x=128; Integer y=128; System.out.println(x==y);输出结果是:truefalse问题来了127和128只差一个数为啥输出结果就是不一样呢?看一下Integer的源码那你就知道了首先在源码里面有一个叫IntegerCach

2021-01-22 21:26:45 513

原创 System.out.println()源码分析

首先来看一段代码: Object object=new Object(); object=null; System.out.println(object); System.out.println(object.toString());大家可以先自己想一下会输出什么?正确的输出就是下面所示:nullException in thread "main" java.lang.NullPointerException那么就来分析一下这句话

2021-01-22 18:45:00 466 1

原创 unable to find valid certification path to requested target

首先要知道这句话是什么意思?翻译的大概意思就是:无法找到到请求目标的有效认证路径。贴出我的报错:我是百度了挺多的,分两步解决了。前提条件是你的gradle,sdk,jdk,都是已经配置好的。我的gradle是本地的。第一步就是添加证书我也不知道有没有用,但是添加就完事了,首先找到你的setting,找到下面位置添加证书。没有的可以私聊我免费发给你。添加之后apply就行了。第二步就是:如图俩个位置上添加以来仓库地址 maven { url 'https://maven.aliyu

2020-12-23 14:53:51 647

原创 强制类型转换

先看看这道题:以下 b 的值是: byte b = (byte)129;答案是:-127解释:这题考察的就两个知识点:一、强制转换(主要涉及各个类型占几个字节,这里我只简单说一下byte型占一个字节,也就是8位,int型4个字节,32位);二、在计算机系统中,数值一律用补码来表示(存储)正数:补码=反码=原码(当然以二进制形式表达)129 int类型(4个字节)二进制: 00000000 00000000 00000000 10000001强制转换byte型后,只有一个字节即 1000000

2020-11-30 17:07:45 325

原创 成员变量和局部变量

注意:局部变量是没有初始值的,成员变量才有初始值

2020-11-30 15:37:06 71

原创 关于静态代码块,构造方法,构造代码块的执行先后顺序

总结一下:1.执行顺序:静态代码块>构造代码块>构造方法理由:静态代码块(static{})在类加载的时候执行一次。构造代码块({}内的部分)在每一次创建对象时执行,始终在构造方法前执行。构造方法在新建对象时调用( 就是new的时候 )。注意: a.静态代码块在类加载的时候就执行,所以它的优先级高于入口main()方法。b.当三种形式不止一次出现,同优先级是按照先后顺序执行。来看一道题巩固一下:public class B{ public static B t1 = n

2020-11-30 15:29:54 2657

原创 值传递和引用传递的问题

先看看下面这段代码的输出结果:public class Example{ String str=new String("tarena"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+" and ");

2020-11-29 15:39:06 223

原创 关于抽象类和接口的默认访问权限

关于抽象类JDK 1.8以前,抽象类的方法默认访问权限为protectedJDK 1.8时,抽象类的方法默认访问权限变为default关于接口JDK 1.8以前,接口中的方法必须是public的JDK 1.8时,接口中的方法可以是public的,也可以是default的JDK 1.9时,接口中的方法可以是private的...

2020-11-29 15:11:51 1300 1

原创 “==“和“euqals()“的用法

先看看这个题你会不会做?==如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等;如果作用于引用类型的变量,则比较的是所指向的对象的地址对于复合数据类型(类),使用equals()和“==”效果是一样的,两者比较的都是对象在内存中的存放地址(确切的说,是堆内存地址)。equals注意:equals方法不能作用于基本数据类型的变量如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;诸如String、Date等类对equals方法进行了重写的话,比较的是所

2020-11-28 23:59:20 205

原创 java面试知识点总结(1)—垃圾回收

首先大家先做一道题。1、在java中,对象的内存在哪个时刻回收,取决于垃圾回收器何时运行。2、一旦垃圾回收器准备好释放对象占用的存储空间,将首先调用其finalize()方法, 并且在下一次垃圾回收动作发生时,才会真正的回收对象占用的内存(《java 编程思想》)3、在C++中,对象的内存在哪个时刻被回收,是可以确定的,在C++中,析构函数和资源的释放息息相关,能不能正确处理析构函数,关乎能否正确回收对象内存资源。在java中,对象的内存在哪个时刻回收,取决于垃圾回收器何时运行,在java中,所有

2020-11-26 23:23:45 118

原创 快速排序

package sort;import java.util.Arrays;public class quick {//快速排序 public static void quick_sort(int s[], int l, int r) { if (l < r) { //Swap(s[l], s[(l + r) / 2]); //将中间的这个数和第一个数交换 参见注1 int i = l, j = r, x = s[l];

2020-11-18 21:18:45 105

原创 插入排序

文章目录一:简单的插入排序一:简单的插入排序1:插入排序介绍插入式排序属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。2:插入排序(Insertion Sorting)的基本思想是:把 n 个待排序的元素看成为一个有序表和一个无序表,开始时有 序表中只包含一个元素,无序表中包含有 n-1 个元素,排序过程中每次从无序表中取出第一个元素,把它的排 序码依次与有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。package sort;

2020-11-17 19:42:17 82

原创 查找算法归纳(顺序,二分,插值,斐波那契)

文章目录一:顺序查找(线性查找)二:二分查找三:插值查找四:斐波那契查找一:顺序查找(线性查找)这个查找算法是比较简单的一种,直接在数组中一个一个查找就行了。/** * 线性查找 */public class SeqSearch { public static void main(String[] args) { int arr[]={3,5,2,6,8}; int index=seqSearch(arr,5); if(index==-1)

2020-10-10 22:04:39 97

原创 子类重写父类的方法@Override的快捷键

ctrl+o

2020-10-09 09:18:49 3941

原创 Java八大数据类型

文章目录一:数据类型1:整型数据类型2:浮点数据类型二:字符型三:布尔型:boolean一:数据类型1:整型数据类型byte:byte a =127; //1个字节,8位 -27~27-1short:short c=10;//2个字节,16位 -2^15~ 2^15-1int:int b = 0x10;//4个字节,32位 -231~231-1 Integerlong:long d = 10L;//8字节,64位 -263~263-1,在后面加l或L2:浮点数据类型float、doubl

2020-09-29 21:09:58 107

原创 linux下zookeeper的安装与简单使用

文章目录一:解压二:配置三:修改环境变量四:操作一:解压tar -xzvf zookeeper-3.4.8.tar.gz你自己的名字改成你自己的。二:配置zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg修改zoo_sample.cfg 的文件名为 zoo.cfgmv zoo_sample.cfg zoo.cfg然后编辑 zoo.cfg 配置文件vi zoo.cfg然后,按“i”,进入编辑模式,在zoo.cfg文件中

2020-09-27 20:12:04 129

原创 Linux环境下搭建JDK环境

文章目录一:解压文件二:配置环境三:检验一:解压文件把你的jdk包导入你的linux系统你想放置的文件夹中,然后执行解压命令。tar -xzvf jdk-8u74-linux-x64.tar.gz你的jdk名字是啥你就写啥跟我可能不一样,,然后坐等解压完成。二:配置环境我们开始配置环境变量,Linux将环境变量存在 /etc/profile 中,到这个目录下(etc)执行:vim profile#set java environmentexport JAVA_HOME=/usr/l

2020-09-27 20:01:43 82

原创 springboot集成redis中连接redis时出现的问题

运行redis时,出现 java.net.ConnectException: Connection refused: connect或者是其他问题,只要是关于连接redis的问题都可以看下面的解决办法,我百度了一下午才解决。我的redis只允许本地访问这个地方我设置了linux虚拟的网址,如果你的springboot想要连接redis,必须这样做除非你的redis允许其他用户连接,否则请修改这个地方一定要选择no,你的程序才能连接上redis。实在不行你也可以在是springboot中配置一下

2020-09-26 21:48:52 721

原创 windows下的mysql管理工具连接linux中的mysql

grant all privileges on *.* to root@'%' identified by '123456';flush privileges;刷新下权限,然后去mysql管理工具去连接就行了123456就是你的数据库密码,root就是mysql账号可以改成自己的。—————————————————————————————你也可以通过ssh连接但是有点麻烦这两个地方都要配置真心挺麻烦,而且你的java代码还不好写,用第一种方法的话url可以这样写:url=jdbc:m

2020-09-22 21:50:20 551

原创 CentOS上的linux中安装mariaDB数据库

文章目录一:安装镜像源二:安装bash-completion超级补全包三:安装MySQL分支版本一:安装镜像源rm -rf /etc/yum.repos.d/*切记后面的网址是不能不复制的wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repoyum makecache二:安装bash-completion超级补全包yum install -y bash-comp

2020-09-22 17:10:49 295

原创 nginx静态代理

文章目录一:Nginx静态代理实现方式方式一:方式二:举例(方式二):一:Nginx静态代理实现方式方式一:在nginx.conf的location中配置静态资源的后缀例如:当访问静态资源,则从linux服务器/opt/static目录下获取(举例)location ~ .*.(js|css|htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$ { root /opt/static

2020-09-14 21:00:29 398

原创 负载均衡

文章目录一:负载均衡1:硬件负载均衡2:软件负载均衡二:nginx实现负载均衡三:负载均衡实现部署myweb项目一:负载均衡1:硬件负载均衡比如 F5、深信服、Array 等 优点是有厂商专业的技术服务团队提供支持,性能稳定 缺点是费用昂贵,对于规模较小的网络应用成本太高2:软件负载均衡比如 Nginx、LVS、HAProxy 等 优点是免费开源,成本低廉我们在学习的过程中肯定是使用软件负载均衡比较多吧,我们学的比较多的是nginx反向服务代理器。二:nginx实现负载均衡nginx通过修改

2020-09-14 17:33:58 229 1

原创 清除火狐浏览器的缓存

crtl +shift+delete

2020-09-14 09:11:59 224 1

原创 linux启动多个tomcat服务器

首先你得将压缩包传进linux系统中的文件夹中,然后解压他,解压的命令就不用说了把,自己可以百度到各种后缀的解压的命令。解压后的位置记住,我的是下图的位置。在xshell中找到这个文件夹然后定位到bin目录,然后执行./startup.sh启动服务器如果你想开启两个服务器的话,一定要修改端口记事本打开server.xml修改以下的内容即可1、修改连接端口 <Server port="8005" shutdown="SHUTDOWN"> -- 将8005修改为900

2020-09-13 21:58:00 666

原创 nginx部署静态web服务器

首先操作nginx都必须要操作nginx.conf,因为我们要修改nginx,conf里面的数据,所以我们要将nginx.conf拷贝到桌面上(或者其他地方也行随意),然后修改就完事了。首先找到conf文件夹,执行sz nginx.conf将文件传到你想传的位置然后在第一个location下面复制一个location对应的linux目录是这样的然后将修改好的上传覆盖原来的那个文件rf -y把你的静态web复制到ace目录下就行然后去访问就行了。友情提示:这个地方的192.168.1

2020-09-13 09:03:19 166

原创 虚拟机使用nginx

流程cd /opt——>ll——>cd /usr/local/——>cd nginx——>cd sbin——>./nginx检查是否

2020-09-13 08:38:20 145

原创 nginx启动以及安装成功的也页面

免费开源版的官方网站: 添加链接描述Nginx 有 Windows 版本和 Linux 版本,但更推荐在 Linux 下使用 Nginx;安装前的准备Nginx的安装需要确定Linux安装相关的几个库,否则配置和编译会出现错误, 具体的检查安装过程为:(1) gcc编译器是否安装 检查是否安装: yum list installed | grep gcc 执行安装: yum install gcc -y(2) openssl库是否安装 检查是否安装: yum list installed |

2020-09-07 21:41:36 1380

空空如也

空空如也

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

TA关注的人

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