摘要: 一.什么是死锁? 死锁是由于两个或以上的线程互相持有对方需要的资源,导致这些线程处于等待状态,无法执行。 二.产生死锁的四个必要条件 1.互斥性:线程对资源的占有是排他性的,一个资源只能被一个线程占有,直到释放。 2.请求和保持条件:一个线程对请求被占有资源发生阻塞时,对已经获得的资源不释放。 3. 阅读全文
posted @ 2018-11-06 12:15 AJimmyFang 阅读(31860) 评论(0) 推荐(4)
摘要: 一.java内存模型的诞生原因以及作用 1.诞生原因 java虚拟机中规范定义的一种内存模型,来屏蔽调各种硬件和操作系统之间的内存访问差异,为了实现java程序在各种平台都能达到一致的内存访问效果。这是它诞生的缘由。 2.作用 其实这个内存模型主要就是去定义程序中各个变量的访问规则,即在虚拟机中将变 阅读全文
posted @ 2018-11-05 23:48 AJimmyFang 阅读(182) 评论(0) 推荐(0)
摘要: 1.数据库的锁作用 主要防止幻读,脏读,不可重复读,处理数据库并发。 2.锁的分类 a.根据锁的粒度来分,有行级锁以及表级锁。 <1>表级锁:MyIsam就是用的表级锁,它是偏向读的,在执行select查询操作的时候,会自动给涉及的表加上读锁,总所周知,读锁会阻塞写,所以当一个线程在读时,其他人是可 阅读全文
posted @ 2018-11-05 22:38 AJimmyFang 阅读(373) 评论(0) 推荐(0)
摘要: 一.Tcp的作用 1.提供面向连接,可靠的字节流服务。 a.面向连接是说,交换数据前要建立连接。 b.可靠是通过把数据分割成数据块,以及超时重发的机制。 c.字节流是指程序之间的数据传输是通过字节构成的字节流。 二.Tcp报文首部详解 首先来看看Tcp包首部,其中主要有端口号,数据包序号,确认序号, 阅读全文
posted @ 2018-11-05 17:27 AJimmyFang 阅读(203) 评论(0) 推荐(0)
摘要: 一.equals与== 1.equals方法 a.默认情况下如果是继承超类的equals方法其实底层也是用了==,也是比较引用的地址,但是我们可以重写这个方法,让它按照我们想要的方式去比较对象的内容。 b.属于Object类的方法,可以重写,私人订制。 2.== a.用于比较变量或对象的内存地址一不 阅读全文
posted @ 2018-11-05 15:58 AJimmyFang 阅读(145) 评论(0) 推荐(0)
摘要: 一.八种数据类型以及其封装类 1.一共为四种: 整型:byte,short,int,long,占用字节分别为1,2,4,8,默认值都为0。 浮点型:float,double,占用字节为4,8,默认值分别为0L和0。 字符型:char,占用字节为2,默认为空。 布尔型:boolean,占用字节为1,默 阅读全文
posted @ 2018-11-05 15:28 AJimmyFang 阅读(316) 评论(0) 推荐(0)
摘要: 一.什么是索引? 1.索引 一种帮助数据库高效获取(已经排序而且查找快)数据的数据结构,记住,它是一种数据结构。那么根据已经学习了的数据结构,它是用的哪种呢?别急,先来了解一下索引的分类。 2.索引的分类 1.B-Tree索引:大部分引擎支持,这也是我们学习的重点,也是平时使用最多的。 2.Full 阅读全文
posted @ 2018-11-05 11:12 AJimmyFang 阅读(824) 评论(0) 推荐(0)
摘要: 一.什么是横向越权和纵向越权. 1.横向越权:攻击者想访问与他权限相同的用户,例如:在忘记密码回答问题成功后,会跳到重设密码的页面,这个时候如果用户随意填用户名和密码,而且数据库也刚刚好存在这个用户时,那么就会修改其他用户的密码,这就是横向越权 2.纵向越权:低级别攻击者想访问高级别用户的资源。 二 阅读全文
posted @ 2018-11-04 21:19 AJimmyFang 阅读(5132) 评论(0) 推荐(1)
摘要: 高复用服务响应对象的设计与使用 一.什么是高复用服务响应对象?它有什么作用? 1.这次项目中,为了实现前后端分离,设计了一个所有接口都使用,封装后台业务数据放回json数据给前端的对象,用于实现前后端的分离,开发效率有了明显的提高。 二.怎么使用? 1.首先,要明确,这个对象要实现序列化接口。它主要 阅读全文
posted @ 2018-11-04 20:21 AJimmyFang 阅读(1084) 评论(0) 推荐(2)