![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 70
Running_lemon
努力学习,只为了看到更多风景。
展开
-
Spring循环依赖
Spring循环依赖循环依赖概念:三级缓存概念:解决流程:循环依赖概念:多个bean之间相互依赖,产生了闭环,比如A依赖B,B依赖A,这就是循环依赖。三级缓存概念:名称:概念:一级缓存:singletonObjects:存放完整的bean对象二级缓存:earlySingletonObjects:存放半成品对象三级缓存:singletonFactories:存放对象的Lambda表达式解决流程:第一步:Spring开始初始化对象A,先实原创 2021-08-15 22:58:58 · 99 阅读 · 0 评论 -
HashMap底层实现原理
HashMap底层实现原理数据存储结构:数据存储原理:扩容机制:HashMap是面试时经常会问到的问题。数据存储结构:在JDK1.7中,HashMap的数据存储结构是数组 加 链表;在JDK1.8中,HashMap的数据存储结构是数组 加 链表 加 红黑树,之所以在JDK1.8中加入红黑树,是因为当链表的长度过长时,查询效率会降低,而红黑树的查询速度快,为了加快查询效率,当链表的数据长度达到8时,转换为红黑树,当数据长度降为6时,转换回链表;数据存储原理:当使用HashMap存储数据时,对数据的原创 2021-08-15 22:23:17 · 94 阅读 · 0 评论 -
Java基础_MyBatis
Java基础_MyBatis动态sql作用及执行原理:延迟加载:动态sql作用及执行原理:作用: MyBatis中动态sql可以让我们在mapper.xml(xml映射文件)中以标签形式编写sql动态语句,完成逻辑判断和动态拼接sql的功能;执行原理: 使用OGNL从sql参数对象中计算表达式的值,根据表达式的值动态拼接sql,以此来完成动态sql的功能;延迟加载:延迟加载: MyBatis仅支持association(一对一)关联对象和collection(一对多)关联集合对象的延迟加载,在My原创 2021-01-08 10:37:47 · 103 阅读 · 1 评论 -
Java基础_Maven
Java基础_Maven概念:IDEA创建Maven项目:中央仓库配置:概念:Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具;maven的核心功能便是合理叙述项目间的依赖关系,通俗点讲,就是通过pom.xml文件的配置获取jar包,而不用手动去添加jar包;链接: https://blog.csdn.net/zeal9s/article/details/84023846IDEA创建Mave原创 2021-01-08 10:35:46 · 68 阅读 · 0 评论 -
Java基础_Ajax
Java基础_Ajax原理:XmlHttpRequest中post和get的区别:原生Ajax和jquery Ajax的区别:原理:简单来说,就是通过XMLHttpRequest对象像服务器发送异步请求,从服务器获取数据之后,再通过JS来操作DOM节点;XmlHttpRequest中post和get的区别:链接: https://www.cnblogs.com/aimeeblogs/articles/9501946.html原生Ajax和jquery Ajax的区别:链接: https://bl原创 2021-01-08 10:25:57 · 82 阅读 · 0 评论 -
Java基础_Servlet
Java基础_Servlet实例化Servlet:Servlet响应过程:Servlet的生命周期:forward和redirect的区别:HttpServletRequest获取中文乱码问题:HttpServletResponse响应中文乱码问题:实例化Servlet:当初次请求Servlet时,Servlet容器会根据web.xml实例化Servlet类,当有新的客户请求时,Servlet容器不会再实例化这个Servlet类,而是开启一个新的线程,所以会出现单实例多线程的状态;Servlet响应过原创 2021-01-08 10:24:15 · 63 阅读 · 0 评论 -
Java基础_JDBC
Java基础_JDBC概述:DML和DDL:Statement、PreparedStatement和CallableStatement:执行:批处理:自定义连接池:DBCP连接池:C3P0连接池:DBUtils工具类:QueryRunner:索引创建及作用:ORM框架:概述:Java访问数据库的标准规范,可以为不同的关系型数据库提供统一访问,由一组用Java语言编写的接口和类组成;链接: https://blog.csdn.net/qq_41855420/article/details/1020761原创 2021-01-08 10:19:35 · 68 阅读 · 0 评论 -
Java基础_反射
Java基础_反射概念及作用:获取类的方式:在工厂设计模式中的应用:概念及作用:概念 :在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;动态获取的以及动态调用对象的方法;作用:反编译;通过反射机制访问java对象的属性、方法、构造方法等;应用场景:JDBC加载驱动;框架;Spring ioc获取类的方式:Class class1 = Class.forName(“反射.Person”); //通原创 2021-01-08 09:59:43 · 100 阅读 · 1 评论 -
Java基础_网络通信
Java基础_网络通信TCP/IP层次结构:HTTP和HTTPS:Socket:TCP(传输控制协议):UDP(用户数据报协议):Json解析:HTTP中GET和POST的区别:TCP/IP层次结构:分为四个层次:网络接口层,网络层,传输层,应用层;HTTP和HTTPS:HTTP: 互联网上应用最广泛的一种网络协议,是一个客户端和服务端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,可以使浏览器更加高效,使网络传输减少;HTTPS: HTTP的安全版,是以安全为目标原创 2021-01-08 09:54:32 · 94 阅读 · 0 评论 -
Java基础_线程
Java基础_线程进程:线程:线程实现之继承Thread类:线程实现之实现Runnable接口:线程池:线程池的状态:sleep和wait的区别:并行和并发的区别:停止线程的方式:守护线程:join方法:Volatile关键字:共享内存模型:ThreadLocal:信号量:临界资源:同步代码块:死锁:synchronized关键字:释放同步监视器:生产者与消费者设计模式:进程:进程是具有一定独立功能的程序对于数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位;进程在执行过程中拥有独立的内存原创 2021-01-07 21:58:35 · 135 阅读 · 0 评论 -
Java基础_IO流
Java基础_IO流定义:字节流:字符流:转换流:InputStreamReader和OutputStreamWriter:RandomAccessFile:文件复制:定义:一组有顺序,有起点和终点的字节集合;是对数据传输的总称和抽象;用来处理设备之间的数据传输;字节流:以字节为单位;可以操作任何类型的数据;操作时不会用到缓冲区;针对文件本身的直接操作;字符流:以字符为单位;只能操作纯字符的数据;通过缓冲区来操作文件;转换流:字符流和字节流的桥梁;字节数据和字符数据之间通过指定编码进行相互转原创 2021-01-07 21:58:53 · 79 阅读 · 0 评论 -
Java基础_集合
Java基础_集合概念:与数组的区别:集合框架体系:Collection和Collections的区别:泛型:ArrayList和LinkedList:HashSet、LinkedHashSet和TreeSet:HashMap和TreeMap:概念:一种工具类,是一个用来存放对象的容器;存放的是对象的引用;与数组的区别:集合数组可以存放不同类型的;存放的是同一类型;不固定长度;固定长度;对象一定是引用类型;元素可以是基础类型,也可以是引用类型;集合框架体系原创 2021-01-07 21:59:02 · 81 阅读 · 0 评论 -
Java基础_常用基础类
Java基础_常用基础类枚举类:String:StringBuffer与StringBuilder:基础类型的包装类:Date类:Calendar类:GregorianCalendar类:Math类:Random类:Runtime类:System类:枚举类:使用enum关键字修饰枚举;所有的枚举值都是 public static final 的;String:1、字符串;2、是一个对象,不是基础数据类型;3、字符串常量,每次修改产生新的String对象;4、适用于少量的字符串操作的情况;代码原创 2021-01-07 21:59:09 · 88 阅读 · 0 评论 -
Java基础_面向对象
Java基础_面向对象定义及特点:关键字:构造方法:get和set方法:Java中的内部类:Object类:抽象类和接口:抽象类:接口:两者区别:重载与重写:引用类型转换:定义及特点:定义: 类是对象的抽象;对象是类的实例;特点: 封装、继承、多态;链接: https://www.cnblogs.com/hysum/p/7100874.html关键字:关键字作用static指代静态 ;静态方法是类的方法,不需要创建对象就可以被调用;无法从static方法内部发出对非stat原创 2021-01-07 21:59:23 · 58 阅读 · 0 评论 -
Java基础_数组
Java基础_数组创建数组:数组处理:数组与List的转换:数组的查找与排序:数组的优缺点:二维数组的查找:创建数组:dataType[ ] arrayRefVar = new dataType[arraySize]代码路径:E:\IDEA_Study\Scattered_Study\Study\src\数组\ArrayTest1.java数组处理:数组输出、数组总和、数组最大元素、for each循环、数组排序代码路径:E:\IDEA_Study\Scattered_Study\Study\s原创 2021-01-07 21:59:30 · 77 阅读 · 0 评论