自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL高级详解

存储引擎InnoDB和MyISAM性能对比对比索引优化分析SQL性能下降的原因查询语句写的差。索引失效:索引建了,但是没有用上。关联 查询太多join(设计缺陷或者不得已的需求)。服务器调优以及各个参数的设置(缓冲、线程数等)。SQL机读执行顺序select # 5 ... from # 1 ... where # 2 .... group by # 3 ...

2021-11-18 10:43:17 2249

原创 Linux下安装MySQL数据库

1.安装MySQL1.1 环境准备linux centOS7之后是交给mariadb管理,会因为mysql版本对不上出现冲突,所以要先把centOS7自带的mariadb和mysql依赖删除掉,才能安装mysql

2021-11-06 10:18:08 173

原创 JVM详解5

内存模型1. java 内存模型(JMM)Java内存模型和Java内存结构没关系JMM 即 Java Memory Model,它定义了主存(共享内存)、工作内存(线程私有)抽象概念,底层对应着 CPU 寄存器、缓存、硬件内存、 CPU 指令优化等。JMM 体现在以下几个方面:原子性: 保证指令不会受到线程上下文切换的影响。可见性:保证指令不会受 cpu 缓存的影响。有序性:保证指令不会受 cpu 指令并行优化的影响。简单的说,JMM 定义了一套在多线程读写共享数据时(成员变量、数组)时

2021-11-04 22:10:23 183

原创 JVM详解4

类加载和字节码技术Java字节码(类文件的结构)包含字节码指令,编译期处理: 源代码编译为字节码文件过程中做的优化处理;字节码文件要运行要经过类加载器运行,类加载器加载到JVM中,就可以执行文件中的字节码指令,执行需要其中执行引擎中的解释器解释执行,解释过程中会对热点代码进行运行期的编译处理1.类文件结构1.1.魔数不同文件有自己的魔数信息,用来表示文件的类型,可理解为文件的扩展名信息1.2.版本类文件中十六进制的 00 34 (十进制: 52) 表示 Java 81.3.常量池.

2021-11-03 09:44:06 194

原创 JVM详解3

5.GC调优1. 调优领域内存锁竞争CPU占用IOGC2. 确定目标低延迟/高吞吐量? 选择合适的GCCMS G1 ZGCParallelGCZing3. 最快的GC是不发生GC首先排除减少因为自身编写的代码而引发的内存问题:查看Full GC前后的内存占用,考虑以下几个问题:数据是不是太多?resultSet = statement.executeQuery(“select * from 大表”);数据表示是否太臃肿?对象图对象大小,Java中new一个Objec

2021-10-27 08:45:51 66

原创 Javaweb详解二

4、实现重定向一个web资源B收到客户端A请求后,B他会通知A客户端去访问另外一个web资源C,这个过程叫重定向常见场景:用户登录使用方法:void sendRedirect(String var1) throws IOException;测试:.public class RedirectServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpSer

2021-10-26 19:47:58 253

原创 Javaweb详解一

1.基本概念1.1.web开发:静态webhtml,css提供给所有人看的数据始终不会发生变化动态web:淘宝.提供给所有人看的数据始终会发生变化,每个人在不同时间不同地点看的信息各不相同技术栈: Servlet,asp,php在Java中,动态web资源开发的技术统称为javaweb1.2.web应用程序web应用程序: 可以提供浏览器访问的程序;a.html,b.html…多个web资源可以被外界访问,对外界提供服务;能访问到的任何一个页面或者资源,都存在与这

2021-10-26 19:46:39 1645

原创 MySQL基础二详解

演示事务的隔离级别set后面加session比较好,不加直接查看当前隔离级别没有马上生效,效果没出来,加session代表设置当前会话或连接隔离级别,比如说两个cmd窗口的事务就是不同的会话,事务的隔离级别是全局变量看事务的隔离级别,并修改为(第一种)最低隔离级别 read-uncommitted(读未提交数据)最低的隔离级别会出现脏读,不可重复读,幻读的情况事务1更新数据,但未提交事务2读取更新后的’john’临时数据,出现脏读若事务1回滚后,事务2再次读取数据,会.

2021-10-26 19:45:05 89

原创 MySQL基础一详解

数据库的特点1.将数据放到表中,表再放到库中2.一个数据库中可以有多个表,每个表都有一个的名字,用来标识自己。表名具有唯一性。3、表具有一些特性,这些特性定义了数据在表中如何存储,类似java中 “类”的设计。4、表由列组成,我们也称为字段。所有表都是由一个或多个列组成的,每一列类似java 中的”属性”5、表中的数据是按行存储的,每一行类似于java中的“对象”。MySQL服务的登录和退出方式一:通过mysql自带的客户端只限于root用户方式二:通过windows自带的客

2021-10-26 19:44:15 357

原创 Java高级-泛型

12.泛型1.泛型的概念所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时确定(即传入实际的类型参数,也称为类型实参)。12.1.为什么要用泛型泛型与File中使用泛型举例泛型的使用泛型即传入实际的参数类型,也称类型实参1.jdk5.0新增的特性2.在集合中使用泛型:总结:①集合接口或集合类在jdk5.0时都修改为带泛型的就够.②在实例化集合类时

2021-10-26 19:40:41 959

原创 Java高级-集合

11.集合集合框架的描述一.集合框架的概述1.集合,数组都是对多个数据进行存储操作的结构,简称Java容器说明: 此时的存储,主要指的是内存层面的存储,不涉及到(硬盘)持久化的存储(.txt,.jpg,avi,数据库中)2.1.数组在存储多个数据方面的特点:一旦初始化以后,其长度就确定了.数组一旦定义好,其元素的类型也就确定了.也就只能操作指定类型的数据了.比如: String[] arr;int[] arr1; Ojbect[] arr2; 还能往父类中装子类数据2.2.数组在存储

2021-10-26 19:39:23 113

原创 JVM详解2

垃圾回收1.如何判断对象可以被垃圾回收的条件1.1.引用计数法如果一个对象被其他变量所引用,则让该对象的引用计数+1,如果该对象被引用2次则其引用计数为2,依次类推。某个变量不再引用该对象,则让该对象的引用计数-1,当该对象的引用计数变为0时,则表示该对象没有被其他变量所引用,这时候该对象就可以被作为垃圾进行回收。引用计数法弊端:循环引用时,两个对象的引用计数都为1,两个对象都不被使用了,但是两个对象的计数都不能归零,导致两个对象都无法作为垃圾被释放回收。最终就会造成内存泄漏!1.2.可达性

2021-10-26 13:43:06 276

原创 Java高级-枚举类与注解

10.1.枚举类的使用: 入门类的对象只有有限个,确定的自定义枚举类一.枚举类的使用1.枚举类的理解: 类的对象只有有限个,确定的.称之为枚举类2.当要定义一组常量时,强烈建议用枚举类3.如果枚举类中只有一个对象,则可以作为单例模式的实现方式// 自定义枚举类的展现public class SeasonTest { public static void main(String[] args) { // 调用枚举类的对象 Season1

2021-10-20 17:34:40 134

原创 Java高级-常用类

9.1.字符串相关的类理解String的不可变性String: 字符串,使用一对""引起来表示1.String声明为final的,不可被继承2.String实现了Serializable接口: 表示字符串是支持序列化的.即可以把字符串变成字节流通过网络传给对方实现了Comparable接口: 表示String可以比较大小3.String内部定义了final char value用于底层存储字符串数据,加final表示数组不能再被重新赋值,数组的元素也不能再被修改4.String:代表不

2021-10-20 17:33:36 87

原创 Java高级-多线程

同步和异步的区别同步: 多个线程在同步过程中,只有一个线程在工作,其他线程在等待,这个过程是单线程的(串行)异步: 多个线程同时在在进行,各干各的事(并行)8.1.程序,进程,线程的概念程序 静态,相较于动态来说,静指没有加载到内存中,没有CPU没有参与运算,默默存储在存储空间中.进程: 把程序运行起来,这时需要加载到内存空间中,同时需要CPU分配计算资源开始做运算,可可理解为正在运行的一个程序.线程(thread):进程可以进一步细化为线程,是一个程序内部的一条执行路径.每个线程,拥.

2021-10-20 17:32:57 94

原创 Java基础-面向对象3

抽象类的应用: 模板类的设计模式// 抽象类的应用: 模板方法的设计模式public class TemplateTest { public static void main(String[] args) { Template t = new SubTemplate(); t.spendTime(); }}abstract class Template{ // 计算某段代码执行所花费的时间 public void spendTime.

2021-10-20 17:31:57 280

原创 Java基础-面向对象2

子类对象实例化过程图示:思考:1.为什么super(…)和this(…)调用语句不能同时在一个构造器中出现?答: 因为他俩都只能出现在首行,所以只能写一个(好比古代皇后只能有一个)2.为什么super(…)或this(…)调用语句只能作为构造器中的第一句出现?答: 无论通过哪个构造器创建子类对象,需要保证先初始化父类.目的: 当子类继承父类后,"继承"父类中所有的属性和方法,因此子类有必要知道父类如何为对象进行初始化.所以加载顺序是首先加载间接父类,其次加载直接父类,然后才是加.

2021-10-20 17:30:35 305

原创 JVM详解1

引言什么是JVM?定义: Java Virtual Machine - java 程序的运行环境(java 二进制字节码的运行环境)

2021-10-18 22:36:49 190

原创 Java基础-面向对象1

4.面向对象属性+方法变成一个类Java面向对象学习三条主线:1.Java类及类的成员:属性,方法,构造器;代码块,内部类2.面向对象的三大特征:封装性,继承性,多态性,(抽象性)3.其他关键字:this,super,static,final,abstract,interface,package,import面向对象编程思想?(类,对象; 面向对象的三大特征;…)谈谈你对面向对象中类和对象的理解,并指出二者关系?类: 是对一类事物的描述, 抽象的, 概念上的内容对象: 实

2021-10-18 16:58:14 472

原创 Java基础-基础语法

计算机DOS命令硬盘切换:字母+分号查看当前目录下的所有文件:dir切换目录:(change directory )cd /d 字母+分号进入硬盘某文件夹:cd /d 字母+分号 \ 文件名从硬盘进入文件夹:cd 文件名返回上一级:cd …/清空屏幕:cls (clear screen)退出终端:exit查看本机ip:ipconfig进桌面:cd /d 桌面地址创建文件夹:(make)md 文件夹名进入文件夹:cd 文件夹名文件夹内建文件:cd>文件名.格式删除文件:d

2021-10-18 16:57:17 100

原创 java基础

计算机DOS命令硬盘切换:字母+分号查看当前目录下的所有文件:dir切换目录:(change directory )cd /d 字母+分号进入硬盘某文件夹:cd /d 字母+分号 \ 文件名从硬盘进入文件夹:cd 文件名返回上一级:cd …/清空屏幕:cls (clear screen)退出终端:exit查看本机ip:ipconfig进桌面:cd /d 桌面地址创建文件夹:(make)md 文件夹名进入文件夹:cd 文件夹名文件夹内建文件:cd>文件名.格式删除文件:d

2021-09-04 09:51:02 267

空空如也

空空如也

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

TA关注的人

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