![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
知识点总结
ysjh0014
QQ:3463446481
展开
-
Java面试题
1.什么是事务,如何加入事务事务就是把一堆事情绑在一起做,都成功了才算完成,否则就恢复之前的样子举个例子:在银行ATM取钱,扣款成功后突然停电了,吐钱的操作还没有做,这时候就要恢复到没取钱时候的状态,否则扣钱了顾客却没有拿到钱使用:Spring中提供了事务管理器,需要在Spring中配置事务管理,2.SQL语句中left join、inner join、righ...原创 2020-04-06 10:06:28 · 369 阅读 · 0 评论 -
如何处理死锁
目前处理死锁的方法可归结为四种:预防死锁避免死锁检测死锁解除死锁1.预防死锁预防死锁的方法是通过破坏产生死锁的四个必要条件中的一个或几个,避免发生死锁由于互斥条件是非共享设备所必须的,不仅不能改变,还应加以保证 1).破坏请求和保持条件为了能破坏请求和保持条件,系统必须保证做到:当一个进程在请求资源时,它不能持有不可抢占资源可以通过下面两个协议实现:...原创 2019-03-18 20:07:05 · 7095 阅读 · 0 评论 -
Mysql数据库中的存储引擎
1.什么是存储引擎Mysql中的数据用各种不同的技术存储在文件或者内存中,每一种技术都使用不同的存储机制、索引技巧、锁定水平,并且最终提供广泛的不同的功能和能力,这些不同的技术以及配套的相关功能在Mysql中被称为存储引擎,我们可以根据对数据处理的需求,选择不同的存储引擎2.常用的存储引擎MyISAM存储引擎:MyISAM存储引擎基于ISAM存储引擎,并对其进行了扩展,它是在web...原创 2019-03-25 15:02:41 · 293 阅读 · 0 评论 -
http中的状态码
100:继续,客户端应继续其请求101:切换协议,服务器根据客户端的请求切换协议,只能切换到更高级的协议200:请求成功,一般用于GET与POST的请求201:已创建,成功请求并创建了新的资源202:已接受,已经接受请求,但未处理完成203:非授权信息,请求成功,但返回的meta信息不在原始的服务器,而是一个副本204:无内容,服务器处理成功,但未返回内容,在未更新网页的情...原创 2019-03-25 16:06:34 · 217 阅读 · 0 评论 -
Java中的HashMap
HashMap是一个用来存储Key-Value键值对的集合,每一个键值对叫做Entry,这些键值对分散存储在一个数组中,每个数组空间都存储一个链表结构,每一个链表节点都是一个Node对象,里面包含了key、value、next、hashHashMap数组每一个元素的初始值都是NullPut方法的实现原理:1).执行putVal方法,判断table(哈希表的链接数组,对应桶的下标,桶,...原创 2019-03-22 16:09:22 · 173 阅读 · 0 评论 -
HTTP中GET和POST的区别
当你使用Java进行Web开发时,肯定写过很多个GET和POST请求它们的区别:GET在浏览器回退时是无害的,而POST会再次提交请求GET的所有参数全部包装在URL中,明文显示,并且服务器的访问日志会记录,非常不安全,POST的URL中只有资源路径,不包含参数,参数封装在二进制的数据体中,服务器不会记录参数,相对安全GET请求会被浏览器主动缓存,POST不会,除非手动设置GE...原创 2019-03-25 20:40:21 · 203 阅读 · 0 评论 -
Java中的类加载过程
1.类加载机制虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换、解析、初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制Java是使用双亲委派模型来进行类加载的,这样能够有效确保一个类的全局唯一性,当程序中出现多个限定名相同的类时,类加载器在执行加载时,始终只会加载其中的某一个类双亲委派模型工作过程可以参考我的博文: ...原创 2019-03-23 11:05:32 · 364 阅读 · 0 评论 -
JVM中的垃圾收集器
1.Serial收集器Serial收集器是单线程的收集器,它在进行垃圾收集时,必须暂停其他所有的工作线程,直到它收集完成Serial收集器是虚拟机运行在Client模式下的默认新生代垃圾收集器适用于单CPU,新生代空间较小以及对暂停时间要求不高的应用2.ParNew收集器ParNew收集器是Serial收集器的多线程版本,除了使用多线程进行垃圾回收之外,其他行为包括Serial...原创 2019-03-23 10:15:24 · 328 阅读 · 0 评论 -
Mysql数据库中的索引
1.什么是索引索引是对数据库表中的一列或者多列的值进行排序的一种数据结构,如果把数据库中的表比作一本书,索引就是这本书的目录,通过目录可以快速查找到书中指定内容的位置索引也是一张表,该表中存储着索引的值和这个值的数据所在行的物理地址,使用索引后可以不用扫描全表来定位某行的数据,而是通过索引表来找到该行数据对应的物理地址2.索引的优缺点优点:建立索引的列可以保证行的唯一性,生成唯...原创 2019-03-24 15:34:24 · 13035 阅读 · 0 评论 -
Java面试题之反射
1.什么是反射在运行状态中,对于任何一个类,都能够知道这个类的所有属性和方法,对于任何一个对象,都能够调用它的任意一个方法和属性,这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制2.反射的作用动态的创建类的实例,将类绑定到现有的对象中,或者从现有的对象中获取类型应用程序需要在运行时从某个特定的程序集中载入一个特定的类3.反射创建类实例的三种方式以类A...原创 2019-04-01 16:08:50 · 311 阅读 · 0 评论 -
面试题:你分析过线程池源码吗?
1.为什么要用线程池?降低系统资源消耗提高线程可控性2.如何创建线程池?JDK8中提供了5种创建线程池的方法(1). newFixThreadPool创建固定大小的线程池,可控制线程最大并发数,超过的线程会在队列中等待public static ExecutorService newFixedThreadPool(int nThreads) { return ...原创 2019-04-15 15:12:15 · 205 阅读 · 0 评论 -
Java面试题之SSM框架二
1.SpringMVC的工作流程SpringMVC是一种基于Spring实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,使用了MVC架构模式的思想工作流程:1.用户将请求发送给前端控制器2.前端控制器收到请求调用处理器映射器3.处理器映射器根据请求url找到具体的处理器,生成处理器对象和处理器拦截器,将其返回给前端控制器4.前端控制器通过处理器适配器调用处理器...原创 2019-04-16 13:12:00 · 284 阅读 · 1 评论 -
Java面试题之设计模式
单例模式:定义:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例简单来说就是这个类只能有一个实例,必须自己创建自己的唯一实例,必须给其它所有对象提供这一实例适用场景:在一个系统内,要求一个类有且仅有一个对象优点:减少了内存,避免了对资源的多重占用,对于创建比较繁琐的对象,只生成一个实例,减少了系统的性能开销缺点:单例模式一般没有接口,扩展困难...原创 2019-04-01 14:15:13 · 935 阅读 · 0 评论 -
Java面试题之数据库
1.索引 Mysql数据库中的索引2.存储引擎 Mysql数据库中的存储引擎3.事务事务:事务是指逻辑上的一组操作,要么全部成功,要么全部失败Mysql事务主要用来处理操作量大,复杂度高的数据。比如,在人员管理系统中,你删除一个人员,你既需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这些数据库操作语句就...原创 2019-03-24 16:56:25 · 775 阅读 · 0 评论 -
Java基础面试题之多线程一
1.什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒2.什么是线程安全?Vector是一个线程安全类吗?如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码,如...原创 2019-03-02 14:41:15 · 531 阅读 · 0 评论 -
Java基础面试题—语法篇二
1.一个".java"源文件中是否可以有多个类(不是内部类)?有什么限制?可以有多个类,但是只能有一个public类,并且public类的类名必须与文件名一致2.Java有没有goto?Java中的保留字,现在没有在Java中使用3.Java中&和&&的区别在Java中&和&&都表示逻辑与的运算符,当运算符两边的表达式都为true...原创 2019-02-26 19:43:38 · 182 阅读 · 0 评论 -
Spring IOC/DI、AOP介绍
1.Spring IOCIOC(Inversion of Control):控制反转,IOC是一种面向对象的设计思想,可以减低代码间的耦合度,其中最常见的方式叫做依赖注入(DI)。IOC意味着将你设计好的对象交给容器控制,而不是传统的在你对象内部控制控制反转三个问题: 1.谁控制谁 2.控制了什么 ...原创 2019-03-03 09:33:20 · 276 阅读 · 0 评论 -
Java面试题之SSM框架一
1.不同版本的Spring有哪些主要功能?版本 特征 Spring2.5 发布于2007年,这是第一个支持注解的版本 Spring3.0 发布于2009年,完全利用了Java5中的改进,并为JEE6提供了改进 Spring4.0 发布于2013年,这是第一个完全支持JAVA8的版本 2.什么是Spring?Spring是一个Java企业级应用的开源开...原创 2019-03-03 16:51:11 · 212 阅读 · 0 评论 -
Java基础面试题—集合框架篇一
1.Java集合框架是什么?说出一些集合框架的优点每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:(...原创 2019-03-03 21:06:29 · 1480 阅读 · 0 评论 -
Java基础面试题—集合框架篇二
11.ArrayList和LinkedList的比较(1)ArrayList是实现了基于动态数组的数据结构,因为地址连续,一旦数据存储好了,查询操作效率会比较高(在内存里是连着放的)(2)因为地址连续,ArrayList要移动数据,所以插入和删除操作效率比较低(3)LinkedList是基于链表的数据结构,地址是任意的,所以在开辟内存空间的时候不需要等一个连续的地址,对于新增和删除操作...原创 2019-03-04 16:41:23 · 166 阅读 · 0 评论 -
Java面试题之JVM
1.Java内存区域:Java虚拟机在运行程序时会把其自动管理的内存划分为方法区、堆、程序计数器、虚拟机栈、本地方法栈,其中方法区和堆属于线程共享的数据区域,而程序计数器、虚拟机栈、本地方法栈属于线程私有的数据区域方法区 (Method Area):方法区属于线程共享的内存区域,又称Non-Heap(非堆),主要用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器、编译后的代码等...原创 2019-03-15 20:04:49 · 714 阅读 · 0 评论 -
递归函数
递归函数简言之就是自己调用自己的函数下面是一个简单的递归函数:int f(int n) { if(n<=3) return 1; else return f(n-2)+f(n-6)+1;}那么请计算f(f(9))调用了多少次递归函数首先计算里面的f(9)调用了多少次递归函数f(9)=f(7)+f(3)+1f(7)=f(5)+f(1)+1f(5)...原创 2019-03-08 10:07:19 · 675 阅读 · 0 评论 -
Java面试题之网络
1.OSI的七层协议从上往下依次是:应用层:应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则,我们把应用层交互的数据单元称为报文,应用层协议如:域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议表示层:提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。数据压缩...原创 2019-03-25 20:58:35 · 496 阅读 · 0 评论 -
Java面试题之多线程
1.进程间的通信方式无名管道通信:管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用,进程间的亲缘关系通常是指父子进程高级管道通信:将另一个程序当作一个新的进程在当前程序进程中启动,那么它算是当前进程的子进程,这种方式我们称为高级管道方式有名管道通信:有名管道通信也是半双工的通信方式,但是它允许在无亲缘关系的进程间使用消息队列通信:消息队列是消息的链表...原创 2019-03-18 20:23:49 · 1416 阅读 · 0 评论 -
Java基础面试题—语法篇一
1.Java中的重载与重写有什么区别方法重载:在一个类中有多个同名方法,但是参数个数或者类型不相同,调用时通过传递给他们不同的参数个数和类型来决定使用哪个方法,重载的时候方法名要一样,参数个数和类型不一样,返回值类型可以一样也可以不一样,不能以返回值类型作为重载函数的区分标准重载是为了让类以统一的方式处理不同类型数据的一种手段,是一个类中多态性的一种表现重写:父类与子类间的多态性,是对...原创 2019-02-25 19:12:09 · 229 阅读 · 1 评论