暂时未有相关云产品技术能力~
暂无个人介绍
注解是JAVA5引入JAVA的一个特性,理解起来会有点抽象,这里笔者先给出自己对注解的一个理解——注解就是一张便签! 其次要有一个概念就是注解的应用是基于反射的。 本文举出的三个实例中例1和例3是引用其它的优秀文献 出处为how2J以及 https://blog.csdn.net/briblue/article/details/73824058一文
servlet、filter、listener三大组件。 由于SpringBoot是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用。 没有web.xml,所以要使用注解来添加组件,分为两步:
JDBC2.0在1.0版本java.sql.*上增加了一个扩展包javax.sql.*包,这个包里面包含两个接口: 1.DataSource,数据源。 2.ConnectionPoolDataSource,数据池。 DataSource的源码可以看到,这个接口的作用就是拿来获取connection连接的。 各个数据库厂商只负责实现connection, 至于获取connection,在JDBC1.0里面是由DriverManager来负责的。 JDBC2.0版本之所新增DataSource,原因很简单——数据库连接池。1.0版本时每用一次connection都需要重新new,而da
JDBC是JAVA十三大规范之一,由JAVA定义顶级接口API,各个数据库厂商去实现。常用的四大接口——Driver,DriverManager,Connection,Statement。 这里先给出结论: 所谓的JAVA制定标准,就是指JAVA给出接口,厂家各自去实现。 比如Driver,Connection,Statement等都是有接口,有实现。 通过向DriverManager注册不同Driver来确定Connection,Statement的类型
在开始讨论JAVA中的红黑树之前,就前几篇关于二叉树的文章做个总结。 平衡二叉树:高度差绝对值不超过1,任意节点左右子树均为平衡二叉树。 AVL树:平衡二叉树只是一个概念,AVL树,红黑树都是这个概念的落地实现。AVL树其实就是《手撕JAVA十三》一文中说的通过RR,RL,LL,LR旋转而成的平衡二叉树。这些旋转都属于AVL树的算法。
红黑树一般用在较为底层的地方作为保证效率的数据结构, 且红黑树的删除算法特别复杂!了解即可,手写出的难度较大。 对于删除算法,很多书上没有提及,或者写的很混乱。 全网亦没有一篇文章通俗易懂的讲清楚了其中过程, 此文也是参考了几篇大牛的博文,部分为笔者原创,部分为引用整合。 红黑树的删除其实就是基于二叉搜索树的删除上加入一个调色过程。 在弄清楚红黑树的删除操作之前,需要明白二叉搜索树的删除方法。 首先要明白几个概念:
手撕JAVA(十四)一文中有些地方表述有误,笔者日后在做修改。这里用画图的方式展示两次红黑树的完整建图过程,一次简单,一次复杂,根据建图过程,就可以理解红黑树是如何实现的。 总结的几点为: 1.根节点必为黑色,任何调整动作都无法将根节点染红 2.新插入节点的父节点和uncle节点同为红色,直接染黑父节点和uncle节点,染红祖父节点(如果祖父节点为根节点,就免疫)
红黑树是配合二叉树的一种实现,主要要满足以下性质: 1.根节点必须为黑色 2.父子不能同为红色 3.从任何节点出发,到达叶节点经过的黑色节点数量一致 对每个新插入的节点存在以下情况: 1.没有爸爸: 那么它自己变为黑色,做根节点。
一、二叉搜索树 这里我们不用太多书面化的语言来定义,笔者认为在讨论数据结构、算法相关的内容时用太多书面化、学术化的语言是一种让人很烦的事情。咬文嚼字,不便于读者理解。 简单来说二叉树搜索树,其实就是用来做二分查找的一种二叉树。 特点是:根节点的左子树值均小于根节点的值,根节点的右子树值均大于根节点的值。 比如123 4 567建树的结果就是
一.hashMap与linkedHashMap 经过两篇文章的讨论,已经可以清楚的知道hashmap利用hash算法将数据均匀分布。这种分布是无序的,即放入顺序和读取顺序不一致。那么JAVA中有没有又是基于hash又是有序的数据结构喃?有!它就是——linkedHashMap。
一.hashcode()方法 首先hashcode()方法是万类始祖Object自带的一个方法,翻看源码可以知道是一个native方法,也就是说是调用的操作系统底层函数生成的一个值——hashcode。hashCode是jdk根据对象的地址或者字符串或者数字算出来的int类型的数值。
一.什么是hash 百度百科上的定义是: 是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
Spring修改配置的方式有以下几种: 1.修改配置文件 首先清楚直接能在SpringBoot配置文件中修改的属性,必须是自动配置类绑定在配置文件类中的属性。如果自动配置类根本就没有绑定配置文件类,那么SpringBoot配置文件中无法直接修改。 2.自定义组件 绑定了配置类的依赖类可以直接去通过配置文件修改,但是有些依赖类并没有绑定配置文件类,这样就不能通过SpringBoot的配置文件去直接修改配置。
在《手撕JAVA(四)低依赖架构思想》一文中阐述了如何通过依赖倒置来解耦,并且得到了结论这种架构思想的落地实现就是Spring。很多有一定J2EE开发经验的读者读到此处会反驳,依赖倒置其实就是遵循了面向接口编程的思想,Spring的核心组件IOC并不是面向接口编程啊,它管理的还是一个一个的类。 在解答这个疑惑之前,顺带提个题外话——关于面向接口编程。
天上飞的理念,必有落地的实现! 软件系统中一个类中用到了另一个类就产生了依赖,依赖是不可避免的。但我们尽量要降低依赖,以达到高类聚、低耦合的系统架构。低依赖软件系统架构的思想为——依赖倒置,具体可解读为两点: 1.上层模块尽量不要依赖于具体的下层模块,而是应该尽量让它们共同依赖于一个抽象。 2.抽象尽量不要依赖于具体对象,而是应该具体对象依赖于抽象。
1.什么是WEB? 2.什么是Servlet? 3.什么是容器? 4.三大组件,servlet、filter、listener