自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_42473704的博客

JAVA热爱者

  • 博客(38)
  • 收藏
  • 关注

原创 缓存穿透,击穿,雪崩

我们为什么要使用缓存技术缓存可以有效的降低数据库压力也可以增强用户体验,我们把需要经常需要访问的数据存储到缓存数据库中下次查询就不需要从数据库中去查询了, redsi性能特别好,具官方的数据读的速度是每秒11万次,写的速度是每秒8.1万次,可以更快的查询数据返回,从而更快的响应,不需要用户过多的等待哪些数据适合存储到缓存数据库中?数据访问频率高:适合缓存修改频率高:不适合缓存数据一致性高:不适合缓存使用缓存技术需要注意什么问题缓存穿透,缓存击穿,雪崩,数据一致性缓存穿透一个key去缓存数据

2020-05-18 00:46:22 268

原创 volatile关键字的作用

volatile关键字的作用volatile怎么用,有什么用保持内存可见性防止指令重排volatile怎么用,有什么用 volatile关键字用与修饰全局变量(类中方法外的变量),放在数据类型前面 例: volatile boolean flag = false; volatile private int a = 1; volatile关键字可以保持内存的可见性与指令重排保持内存可见性什么是保持内存可见性内存可见性:是指当一个线程修改了共享变量的值,其他线程能够

2020-05-10 23:05:39 196

原创 你真的懂i++和++i吗?

大部分老哥看这篇文章前可能都会认为i++先赋值再加 ++i加了再赋值 看了这篇文章后........(先卖个关子)那接下来给老哥上一个题目转存失败...

2020-04-12 01:23:20 311 1

原创 如何解决接口的幂等性

什么叫接口的幂等性?用户请求一次和多次,结果都是一样的,不会因为多次请求而产生副作用为什么要保证幂等性?防止用户在前端不小心重复点击了按钮,如注册接口如未保证幂等性,用户重复点击,则会在数据库插入多条一样的用户数据主要是防止什么?防止同一个接口,相同参数,短时间发生了多次请求什么情况下要考接口虑幂等性问题? 当该接口对数据操作的情况下需要考虑幂等性问题,如增,删,改 可能...

2020-04-03 15:30:09 817

原创 黑客是如何干掉你网站的?

黑客入侵网站一般会先进行信息收集,然后再通过收集来的信息,来进行漏洞探测 信息收集 收集什么信息? 域名注册人信息,后台url,开放端口信息,ip,邮箱,网站目录,旁站等 域名注册人信息可以通过:爱站网,站长工具等网站进行信息收集 后台url可以通过...

2020-03-27 16:50:18 1231

原创 吊打面试官之HashMap

HashMap的底层数据结构是什么? jdk1.7和jdk1.7前使用的是数组,链表 jdk1.8和jdk1.8后使用的是数组,链表,红黑树HashMap...

2020-03-14 15:41:55 1164

原创 JAVA垃圾回收机制

为什么要有垃圾回收机制? java中的垃圾回收机制是方便我们程序员开发,我们只要复制对象的创建而不用管,内存的释放,java虚拟机自动帮我们回收内存。回收哪一些内存? 主要是回收堆里面没有被引用的对象什么时候进行垃圾回收操作?是否可以人工调用方法进行垃圾回收? java堆内存的时候调用垃圾回收机制,可以调用...

2020-02-13 00:27:16 191

原创 mysql索引原理

为什么要使用索引?使用索引有什么优点和缺点? 使用索引是为了使我们查询变得更快。使用索引如果我们对数据进行修改或者删除那么他的索引也要随之改变,所以使用索引就会降低我们修改删除的效率。mysql有几种索引类型? 普通索引:这一类索引可以创建在任何数据类型中,没有限制。 唯一索引:创建该类索引时,需要保证创建索引的那一列...

2020-02-11 15:06:42 87

原创 mySql存储引擎

什么是存储引擎? 将数据以不同的技术存储到内存中,每一种技术叫一种存储引擎。mySql有几种存储引擎(以下以mysql8例)? MyISAM ,innoDB(常用) , Memory, csv ,archivemySql采用哪一种存储引擎为默认存储引擎? mysql采用innoDB为默认存储引擎不同存...

2020-02-09 00:00:27 76

原创 java反射机制

老王:小王呀,听说你酒量不错小王:酒量还行老王:能喝多少小王:白的可以喝一斤吧老王:这酒量不错哦,看你酒量不错,那你就给我来讲一讲java的反射机制吧小王:(懵逼中,我酒量不错和java的反射机制有什么关系)这个...........老王:怎么了,酒量这么好java的反射机制都不知道?小王:好吧老王:你怎么理解反射的?反射有什么作用?小王:我们不使用方式这种方式...

2019-06-09 21:52:21 114

原创 元数据与动态代理

元数据          通过元数据我们可以获得java代码执行的sql语句参数的个数,与参数的类型。也可以通过元数据获得java代码查询数据库得到的参数个数和参数类型。      获取参数元数据             1.通过PrepareStatement的getParameterMetaData的方法获取参数元数据对象ParameterMetaData        ...

2018-10-10 11:25:51 301

原创 C3P0连接池与Druid连接池

 c3p0连接池使用           搭建环境                     导入c3p0的zar包,再引入c3p0配置文件  注意:c3p0配置文件一定要放在src目录下面,而且配置文件的名字一定要为  c3p0-config.xml                          c3p0连接池需要用到的zar包介绍                      ...

2018-09-19 18:14:05 125

原创 jdbc连接数据库

JDBC介绍            jdbc主要用于java代码连接数据库,java代码就可以向数据库发送sql语句,操作数据。 使用Java代码连接数据库的步骤              环境搭建                       导入数据库驱动包驱动包(mysql-connector-java-5.1.37-bin.jar)             创建对...

2018-09-16 17:23:44 126

原创 常用sql语句

SQL语句的分类DDL 数据定义语言 DML 数据操作语言 DCL 数据控制语言 TCL 事物控制语言 DQL 数据查询语言               DDL常用语句DLL操作数据库 create  database   库名; 创建数据库 create  database  if  not exists  库名; ...

2018-09-15 17:28:54 170

原创 File类与递归(随手笔记,不要认真)

File类介绍                这个类专门用来操作文件和文件夹     File类方法介绍       获取方法String  getAbsolutePath() 获取文件或文件夹的绝对路径 String  getPath() 获取文件的构造路径 String  getName() 获取文件的名字 Long  len...

2018-09-09 23:39:23 110

原创 Stream流

Stream流的介绍               String流是jdk1.8的新特性,作用是方便操作集合和数组,可以多个操作连接起来。如何获得Stream流对象               Set集合获取Stream流对象方式和list集合获取的方式一样,双列集合要先获取单列集合才可以获取Stream流对象 public static void main(String[] a...

2018-09-09 15:22:55 111

原创 方法引用以及函数式接口

什么是函数式接口            一个接口里面只有一个抽象方法,那么这个接口就称为函数式接口                    @FunctionalInterface注解概述                    这个注解是jdk1.8的新特性,用在接口上面,说明这个接口是一个函数式接口,只能有一个抽象方法,如果有多个抽象方法就编译不通过           ...

2018-09-09 02:31:42 465

原创 java异常

什么是异常            在程序中编译或者运行出现的问题称为异常   异常的继承体系            Throwable : 这个是Java中所有异常类型的父类                       Error:错误    必须要更改代码才能解决问题                       Exception:异常   处理方式有两种,抛出处理,和...

2018-09-07 19:57:52 99

原创 java注解

注解作用             注解可以放在方法上面,类上面,和属性等等.....可以用来传递参数,或者限制某些东西,或者实现某些功能。   自定义注解        格式                修饰符    @interface    注解名{                                                          }...

2018-09-06 15:31:09 143

原创 反射

什么是反射            反射是一种机制,可以在程序运行中根据该类的字节码对象动态的创建该类对象。                 程序运行时,Java虚拟机会帮每一个类都创建一个字节码对象,(就是我们创建一个对象可以不用 " new  类名()",这种方式创建,使用其他方式创建) 反射的前提              如果我们想通过反射创建一个类的对象,我们就先要获...

2018-09-04 00:05:18 100

原创 lambda表达式

Lambda表达式介绍                    Lambda表达式是JDK1.8的新特性,是用来简化匿名类部类的 Lambda表达式的思想                     只关注要干什么,而不是怎么做                      也就是我们通过Lambda使用匿名内部类的时候,我们只要写我们的业务逻辑的代码就可以了,不需要再写其他与业务逻辑...

2018-09-03 17:18:38 93

原创 java网络编程之TCP协议

TCP协议的特点             面向连接的协议(有发送端就一定要有接收端)             通过三次连接握手建立连接             通过四次握手断开连接             基于IO流传输数据             传输数据大小没有限制             速度慢但可靠    TCP协议相关的两个类     Socket(...

2018-08-31 18:10:23 148

原创 java网络编程之UDP协议

UDP协议特点               面向无连接协议(只管发送不管对方是否接收到)               基于数据包传输:将要发送的数据,接收端IP地址,端口号打包到一个数据包中发送               传输数据大小限制在64k以内                速度快,但是不可靠(传输中可能会丢失数据)                与网络编程相关的...

2018-08-29 09:50:25 258

原创 线程池

什么是线程池                 一个用来建立线程和管理线程的容器对象。  线程池的好处                减少资源的消耗,避免频繁的创建与摧毁线程(因为创建线程需要资源)                提高程序的响应速度 (程序运行速度更加快)                提高线程的可管理性(需要线程的时候不用创建,直接找线程池要)  ...

2018-08-25 21:11:46 113

原创 线程之间的相互通信

线程之间的相互通信                  在介绍线程相互通信前为大家介绍一下有关线程通信的一些知识         线程的状态(线程的生命周期)       线程的状态 NEW 新建状态,刚刚创建完成还没开启的状态 RUNNABLE 可运行状态,有资格执行,可能在执行中,有可能不是在执行中 BLOCKED 锁阻塞状态,要等待其他线程释放锁对...

2018-08-22 19:48:00 9383 1

原创 线程安全

线程安全              什么是线程安全                         两个线程或两个以上的线程在同时操作同一个共享资源时仍然能够得到正确的结果则称为线程安全。                        这个解释感觉很难理解我给大家举个栗子吧:                         例如两个人在打糍粑一个人用锤子敲打一个人在用手翻动下面的...

2018-08-22 00:25:00 379

原创 线程的创建方式与开启一个线程

线程与进程             在我们学习线程之前先来了解一下关于线程的一些知识          什么是进程                    我们经常使用的软件他就是一个进程,一个正在运行的软件就是一个进程。                     例如:一个工厂就相当于我们的一个进程。          什么是线程                   进程中...

2018-08-19 22:41:33 3231

原创 IO流(2)字符流

字符流           介绍:字符流和字节流的区别就是,字符流是按字符为单位读取的,字节流是按字节为单位读取的,字符流只能读取文本,不能读取文件。字符流比较i聪明,当他读取文本的时候碰见英文就读取一个字节碰见汉字的时候就读取多个字节。            编码表介绍                     常用编码表                             ...

2018-08-15 16:51:08 169

原创 IO流(1)字节流

IO流           我对io流的理解是,io流其实就是对字节码的读取操作,不同的类对字节码的读取操作不一样而已,总之一句话“万物皆01”,这个是自己的理解,意思就是在电脑上存储的不管是文字还是图片或者视频等等, 都是二进制01。           javaio流的分类(其实在我看来还有一种分法,分为输入流和输出流)           注意:很多人分不清楚输入和输出,其实输...

2018-08-14 23:33:01 207

原创 关于时间的类,Date,SimpleDateFormat,Calendar

Date            概述:Date类是时间日期类,用来获取时间            构造方法 Date date = new Date();//直接输出是英文的日期格式Fri Aug 10 17:06:18 CST 2018 System.out.println(date); //这个参数是设置一个时间,里面为long类型的,是1970到你设定参数的时间...

2018-08-10 18:24:38 444

原创 java工具类,Arrays,Objects,Collections

Arrays数组工具类               常用方法介绍      (以下方法还有其他参数的重载方法,就不一一列出来了,这只是告诉大家方法的作用,其余重载的方法也相差无几)                      static   List<T>   asList(T... o)                                          ...

2018-08-10 12:43:51 121

原创 Java面对对象三大特点,继承,封装,多态

继承   什么是继承?                   在现有的类的继承上定义一个新的类,现有的类称为父类,新的类称为子类,子类会自动拥有父类的内容。                  extends 关键字:表示继承。    继承格式               class  类名  extends  父类名{                                ...

2018-08-07 10:10:11 98

原创 java常用集合介绍及应用

java集合体系                   Collection(单列集合的最顶层接口)LIst(list接口) 特点 LinkedList   元素可以重复,存储有顺序,查询慢,增删快,线程不安全 ArrayList   元素可以重复,存储有顺序,查询快,增删慢,线程不安全 Vector 已过时,被ArrayList取代 Set (set...

2018-08-03 23:21:44 164

原创 java运算符

三元运算符//a的值为9int a = 4>5 ? 7 :9;          格式                        (条件表达式)  ?表达式1:表达式2;                     如果条件表达式的结果为true,则返回表达式1的的值,如果条件表达式的结果为false则返回表达式2的值  注意                 ...

2018-08-03 18:04:49 95

原创 java变量,方法,类,接口,数组的定义格式与注意事项

java变量定义格式:             修饰符    静态关键字  final  数据类型   变量名 ;                 //修饰符 静态关键字 数据类型 变量名 public static int i ; //定义变量 //final关键字publi...

2018-08-03 12:38:03 1582

原创 JAVA基本数据类型

JAVA基本数据类型     基本数据类型分为四类八种类型     字节 对应包装类 取值范围 注意事项 整型         byte   1 Byte -128~127   short 2 Short -32768 ~ 32767   int 4 Integer...

2018-08-03 02:54:52 198

原创 JAVA环境变量配置

1,安装jdk,并记住jdk的安装位置,jdk安装的文件夹入径最好不要存在中文          *安装的时候会要求你按jre最好安装上,最好安装在jre的文件目录jdk安装在jdk的文件夹下,他们最好要安装在同一个文件夹下                            (上次我安装jdk碰见了一个问题,好像是安装jdk和jre的文件夹最好自己创建然后安装的时候现在安装到...

2018-06-17 14:23:48 179

原创 常用DOS命令

cd.. : 退回到上一级目录cd\  : 退回到根目录cd (要进入的文件夹名称): 进入文件夹d:(要切换的盘符名称)  : 回车盘符切换cd d:\(要进入的文件夹名称) :进入d盘的文件夹,再切换盘符(d:)才能进入d:\要进入的文件夹名称dir  : 列出当前目录下的文件以及文件夹cls  : 清除屏幕ipconfig: 查看本机的相关网络配置...

2018-06-17 13:28:51 163

空空如也

空空如也

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

TA关注的人

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