08 2022 档案
发表于 2022-08-27 00:58阅读:17评论:0推荐:0
摘要:阅读全文 »
Java 基础篇 Java 有哪些特点 并发性的:你可以在其中执行许多语句,而不必一次执行它 面向对象的:基于类和面向对象的编程语言。 独立性的:支持一次编写,到处运行的独立编程语言,即编译后的代码可以在支持 Java 的所有平台上运行。 Java 的特性 Java 的特性有如下这几点 简单,Jav
发表于 2022-08-27 00:52阅读:36评论:0推荐:0
摘要:阅读全文 »
什么是存储过程?有哪些优缺点? 什么是存储过程?有哪些优缺点? 存储过程就像我们编程语言中的函数一样,封装了我们的代码(PLSQL、T-SQL)。 存储过程的优点: 能够将代码封装起来 保存在数据库之中 让编程语言进行调用 存储过程是一个预编译的代码块,执行效率比较高 一个存储过程替代大量T_SQL
发表于 2022-08-27 00:41阅读:0评论:0推荐:0
摘要:啥是Mybatis MyBatis本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。 2013年11月迁移到Github。 iBATIS一词来源于“internet”和“ab
阅读全文 »
发表于 2022-08-27 00:38阅读:683评论:0推荐:0
摘要:若依-Ruo Yi(分离版) 一、了解框架 1、简介(什么是若依) RuoYi 是一款基于SpringBoot + Bootstrap 的快速开发框架。 RuoYi 官网地址:http://ruoyi.vip(opens new window) RuoYi 在线文档:http://doc.ruo
阅读全文 »
发表于 2022-08-24 11:10阅读:61评论:0推荐:0
摘要:1、什么是双亲委派? 2、为什么需要双亲委派,不委派有什么问题? 3、”父加载器”和”子加载器”之间的关系是继承的吗? 4、双亲委派是怎么实现的? 5、我能不能主动破坏这种双亲委派机制?怎么破坏? 6、为什么重写loadClass方法可以破坏双亲委派,这个方法和findClass()、defineC
阅读全文 »
发表于 2022-08-22 20:02阅读:21评论:0推荐:0
摘要:1:文件管理 ls命令 – 显示指定工作目录下的文件及属性信息 cp命令 – 复制文件或目录 mkdir命令 – 创建目录文件 mv命令 – 移动或改名文件 pwd命令 – 显示当前工作目录的路径 2:文档编辑 cat命令 – 在终端设备上显示文件内容 echo命令 – 输出字符串或提取后的变量值
阅读全文 »
发表于 2022-08-22 19:36阅读:168评论:0推荐:0
摘要:阅读全文 »
一: Mysql的存储引擎分类 InnoDB: 支持事务,行锁及无锁读提高了并发的效率,为了数据的完整性,支持外键 MyISAM: 不支持事务和外键,表级别锁,优势在于访问速度快,一般用于只读或者以读为主的数据场景。 Memory: 在内存中存储所有数据,应用于对非关键数据的快速查询,默认使用HAS
发表于 2022-08-22 19:32阅读:203评论:0推荐:0
摘要:阅读全文 »
一: 你可以简单描述下SpringMvc的执行流程吗 1、前端控制器(DispatchServlet)接收到客户端发送的请求 2、收到请求后它会转发给处理器映射器(HandlerMapping),请求获取Handler。 3、处理器映射器根据请求url找到具体的处理器,生成处理器对象和处理器拦截器(
发表于 2022-08-22 19:25阅读:36评论:0推荐:0
摘要:阅读全文 »
面试题目 一:什么是对象 回答思路: 这个问题的主要考察的是你对面向对象语言的理解,回答时除了回答面向对象的定义外,更重要的是要学会延伸说明和类相关的一些特性。 定义: 在系统中,对象是用于客观描述一个事物的一个实体,而类则是这类实体的抽象,它是构成系统的一个基本单位。一个对象由一组描述对象的属性和
发表于 2022-08-22 19:21阅读:141评论:0推荐:0
摘要:面试题目 (一): 为什么JAVA存在异常机制 异常机制是指当程序出现错误时,该如何处理,它给程序提供了一个安全的退出通道,就跟我们大楼的安全通道类似,当出现火灾或者不可控的情况时,人们可以通过安全通道逃生。 (二): 程序错误的分类 主要分为三种既编译时错误、运行时错误、逻辑错误。 1、编译时错误
阅读全文 »
发表于 2022-08-22 19:19阅读:1131评论:0推荐:0
摘要:阅读全文 »
🐣 二、面试官这样询问的用意 面试官提问一个问题的时候,我们需要不是马上去答复,而是要揣摩出面试官提问的用意,这样才能够给出更全面的回答。关于这个问题,我个人猜想面试官的大概用意如下: 1、看你是否了解过面向接口编程(不用奇怪,很多人只是听说过,有个模糊的概念,叫他说并不一定能说清楚) 2、看你是
发表于 2022-08-22 19:15阅读:85评论:0推荐:0
摘要:阅读全文 »
一: 面试官:谈谈你对Mysql索引的认识 (一): 回答问题的方式 一般回到面试官问题的时候,可以按照五部曲的方式,使用这个逻辑回答面试官问题,Offer跑不了(但是为了更简单的了解本片文章的知识,文章的顺序就不按照这个顺序来编写,大家理解后,可以根据自己的方式来组装回答),即: 1、 xx是什么
发表于 2022-08-22 18:16阅读:20评论:0推荐:0
摘要:阅读全文 »
1. Java语言介绍 1.1 Java语言跨平台原理 在需要运行Java应用程序的操作系统中,安装一个与操作系统对应的Java虚拟机即可。Java虚拟机(JVM)就像一个翻译一样,将java语言程序翻译成各种操作系统能够运行的程序。 1.2 JRE和JDK 1.2.1 JRE(Java Runti
发表于 2022-08-22 18:05阅读:97评论:0推荐:1
摘要:阅读全文 »
第一章 绪论 1.1 数据结构的基本概念 数据: 数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。 数据元素: 是数据的基本单位,通常作为一个整体进行考虑和处理。 数据项: 一个数据元素可由若干数据项组成,数据项是
发表于 2022-08-20 23:49阅读:45评论:0推荐:0
摘要:阅读全文 »
线性表的抽象数据类型定义: Date 线性表的数据对象集合为{A1, A2, ..., AN},每个元素的类型均为DateType 。其中除了第一个元素A1外,每一个元素有且只有一个直接前驱,除了最后一个元素AN外,每一个元素有且只有一个直接后继。数据元素之间的关系是一对一的关系。 operatio
发表于 2022-08-20 21:03阅读:0评论:0推荐:0
摘要:阅读全文 »
不过本文不是要讲述数据结构和算法的,而是另外一个面试重点Redis,因为Redis也是跨语言的共同技术点,无论是Java还是C++都会问到,所以是个高频面试点。 笔者是2017年才开始接触Redis的,期间自己搭过单机版和集群版,不过现在公司大一些都完全是运维来实现的,我们使用者只需要在web页面进
发表于 2022-08-20 20:58阅读:0评论:0推荐:0
摘要:阅读全文 »
时间、空间复杂度比较 排序算法 平均时间复杂度 最差时间复杂度 空间复杂度 数据对象稳定性 冒泡排序 O(n2) O(n2) O(1) 稳定 选择排序 O(n2) O(n2) O(1) 数组不稳定、链表稳定 插入排序 O(n2) O(n2) O(1) 稳定 快速排序 O(n*log2n) O(n2)
发表于 2022-08-20 20:57阅读:0评论:0推荐:0
摘要:阅读全文 »
目 录 1、UDP 和 TCP 的特点与区别 2、UDP 、TCP 首部格式 3、什么是TCP 的三次握手和四次挥手 4、TCP 的三次握手(为什么三次?) 5、TCP 的四次挥手(为什么四次?) 6、TCP 长连接和短连接的区别 7、TCP粘包、拆包及解决办法 8、TCP 可靠传输 9、TCP 滑
发表于 2022-08-20 20:54阅读:0评论:0推荐:0
摘要:阅读全文 »
1、为什么有了进程,还要有线程呢? 为了提高系统资源的利用率和系统的吞吐量,通常进程可让多个程序并发的执行,但是也会带来一些问题 官话 进程如果在执行的过程被阻塞,那这个进程将被挂起,这时候进程中有些等待的资源得不到执行: 进程在同一时间只能做一件事儿 基于以上的缺点,操作系统引入了比进程粒度更小的
发表于 2022-08-20 20:49阅读:0评论:0推荐:0
摘要:阅读全文 »
const 作用 修饰变量,说明该变量不可以被改变; 修饰指针,分为指向常量的指针(pointer to const)和自身是常量的指针(常量指针,const pointer); 修饰引用,指向常量的引用(reference to const),用于形参类型,即避免了拷贝,又避免了函数对值的修改;
发表于 2022-08-20 20:47阅读:0评论:0推荐:0
摘要:阅读全文 »
本文知识点目录 为什么需要学习Spring Cloud 什么是Spring Cloud 设计目标与优缺点 设计目标 优缺点 Spring Cloud发展前景 整体架构 主要项目 Spring Cloud Config Spring Cloud Netflix Spring Cloud Bus Spr
发表于 2022-08-20 20:43阅读:0评论:0推荐:0
摘要:阅读全文 »
文章知识点目录 概述 1.什么是 Spring Boot? 2.Spring Boot 有哪些优点? 3.Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的? 配置 4.什么是 JavaConfig? 5.Spring Boot 自动配置原理是什么? 6.你如何理解 Spring B
发表于 2022-08-20 20:41阅读:0评论:0推荐:0
摘要:阅读全文 »
1、基础概念 1.1. 不同版本的 Spring Framework 有哪些主要功能? Version Feature Spring 2.5 发布于 2007 年。这是第一个支持注解的版本。 Spring 3.0 发布于 2009 年。它完全利用了 Java5 中的改进,并为 JEE6 提供了支持。
发表于 2022-08-20 20:11阅读:40评论:0推荐:0
摘要:阅读全文 »
代码优化的最重要的作用应该是:避免未知的错误。在代码上线运行的过程中,往往会出现很多我们意想不到的错误,因为线上环境和开发环境是非常不同的,错误定位到最后往往是一个非常小的原因。然而为了解决这个错误,我们需要先自验证、再打包出待替换的class文件、暂停业务并重启,对于一个成熟的项目而言,最后一条其
发表于 2022-08-20 20:10阅读:105评论:0推荐:0
摘要:阅读全文 »
语法糖(Syntactic Sugar),也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言本身功能来说没有什么影响,只是为了方便程序员的开发,提高开发效率。说白了,语法糖就是对现有语法的一个封装。 Java作为一种与平台无关的高级语言,当然也含有语法糖,这些语法糖并不被虚拟机所支持,在编
发表于 2022-08-20 20:08阅读:50评论:0推荐:0
摘要:阅读全文 »
MM简介 Java Memory Model简称JMM, 是一系列的Java虚拟机平台对开发者提供的多线程环境下的内存可见性、是否可以重排序等问题的无关具体平台的统一的保证。(可能在术语上与Java运行时内存分布有歧义,后者指堆、方法区、线程栈等内存区域)。 并发编程有多种风格,除了CSP(通信顺序
发表于 2022-08-20 20:06阅读:16评论:0推荐:0
摘要:阅读全文 »
同步和异步 同步,Synchronous,即调用方法开始,一旦调用就必须等待方法执行完返回才能继续下面的操作。 举个例子,你去银行ATM取钱,你必须等到ATM吐完钱你拿到钱取完卡你才能离开。 异步,Asynchronous,即不关心方法执行的过程,触发要调用的方法就继续执行下面的操作,不会像同步那样
发表于 2022-08-20 18:33阅读:28评论:0推荐:0
摘要:阅读全文 »
1、集合接口 java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。声明了适用于JAVA集合(只包括Set和Lis
发表于 2022-08-20 18:31阅读:19评论:0推荐:0
摘要:阅读全文 »
我们经常听说List是有序且重复的,Set是无序不重复的。这里有个误区,这里说的顺序有两个概念,一是按添加的顺序排列,二是按自然顺序a-z排列。Set并不是无序的,传统说的Set无序是指HashSet,它不能保证元素的添加顺序,更不能保证自然顺序,而Set的其他实现类是可以实现这两种顺序的。 保证元
发表于 2022-08-20 15:33阅读:192评论:0推荐:0
摘要:本系列将采用Java语言来进行描述。亦即总结常见的的数据结构,以及在Java中相应的实现方法,务求理论与实践一步总结到位。 首先给出Java集合框架的基本接口/类层次结构: java.util.Collection [I] +--java.util.List [I] +--java.util.Arr
阅读全文 »
发表于 2022-08-20 15:23阅读:122评论:0推荐:0
摘要:阅读全文 »
数据结构与算法是程序员内功体现的重要标准之一,且数据结构也应用在各个方面,业界更有程序=数据结构+算法这个等式存在。各个中间件开发者,架构师他们都在努力的优化中间件、项目结构以及算法提高运行效率和降低内存占用,在这里数据结构起到相当重要的作用。此外数据结构也蕴含一些面向对象的思想,故学好掌握数据结构
发表于 2022-08-19 19:50阅读:76评论:0推荐:0
摘要:阅读全文 »
如果说 IOC 是 Spring 的核心,那么面向切面编程AOP就是 Spring 另外一个最为重要的核心@mikechen AOP的定义 AOP (Aspect Orient Programming),直译过来就是 面向切面编程,AOP 是一种编程思想,是面向对象编程(OOP)的一种补充。 面向切
发表于 2022-08-18 23:32阅读:216评论:0推荐:0
摘要:阅读全文 »
原文链接:12 种常见算法思想汇总(opens new window) #一、枚举算法思想(暴力算法) 将问题的所有可能答案一一列举,根据判断条件判断此答案是否合适,一般用循环实现。 经典运用:百钱买百鸡、填写运算符 #二、递推算法思想 顺推法:从已知条件出发,逐步推算出要解决问题的方法。 逆推法:
发表于 2022-08-16 22:04阅读:136评论:0推荐:0
摘要:什么是反射? 反射(Reflection)是Java 程序开发语言的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。 Oracle官方对反射的解释是 Reflection enables Java code to discover information ab
阅读全文 »
发表于 2022-08-15 00:57阅读:0评论:0推荐:0
摘要:阅读全文 »
云原生从字面意思上来看可以分成云和原生两个部分。 云是和本地相对的,传统的应用必须跑在本地服务器上,现在流行的应用都跑在云端,云包含了IaaS,、PaaS和SaaS。 原生就是土生土长的意思,我们在开始设计应用的时候就考虑到应用将来是运行云环境里面的,要充分利用云资源的优点,比如️云服务的弹性和分布
发表于 2022-08-12 01:16阅读:0评论:0推荐:0
摘要:阅读全文 »
ZooKeeper相信大家已经听过这个词了,不知道大家对他了解多少呢?我第一次听到ZooKeeper的时候是在学Eureka的时候(外行人都能看懂的SpringCloud,错过了血亏!),同样ZooKeeper也可以作为注册中心。 后面听到ZooKeeper的时候,是因为ZooKeeper可以作为分
发表于 2022-08-11 17:51阅读:0评论:0推荐:0
摘要:阅读全文 »
现在开发一般都是Mybatis,也有公司用的Hibernate或者Spring Data JPA。很多时候,不同的项目由不同的程序员开发,在公司层面可能没有将技术完全统一起来,一个项目用Mybatis,一个项目用Hibernate都是很有可能的。 不管用的是什么ORM框架,都是在JDBC上封装了一层
发表于 2022-08-11 15:06阅读:0评论:0推荐:0
摘要:阅读全文 »
最近如果拉过austin项目代码的同学,可能就会发现多了一个austin-stream模块。其实并不会意外,因为这一切都在计划当中进行。 这个模块主要是接入流式处理平台(flink),用于实时计算清洗数据给到业务以及系统维护者更方便去使用消息推送平台austin。 这篇文章主要来聊聊接入的背景以及我
发表于 2022-08-11 14:59阅读:0评论:0推荐:0
摘要:阅读全文 »
什么是Servlet? Servlet其实就是一个遵循Servlet开发的java类。Servlet是由服务器调用的,运行在服务器端。 为什么要用到Servlet? 我们编写java程序想要在网上实现 聊天、发帖、这样一些的交互功能,普通的java技术是非常难完成的。sun公司就提供了Servlet
发表于 2022-08-11 14:54阅读:0评论:0推荐:0
摘要:阅读全文 »
Spring Boot 算是目前 Java 领域最火的技术栈了,松哥年初出版的 《Spring Boot + Vue 全栈开发实战》迄今为止已经加印了 8 次,Spring Boot 的受欢迎程度可见一斑。经常有人问松哥有没有推荐的 Spring Boot 学习资料?当然有!买松哥书就对了,哈哈。除
发表于 2022-08-11 14:52阅读:810评论:0推荐:0
摘要:阅读全文 »
知识体系图: 1、线程是什么? 线程是进程中独立运行的子任务。 2、创建线程的方式 方式一:将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法 方式二:声明实现 Runnable 接口的类。该类然后实现 run 方法 推荐方式二,因为接口方式比继承方式更灵活,也减少程序
发表于 2022-08-11 14:51阅读:0评论:0推荐:0
摘要:阅读全文 »
数据库常见面试题(开发者篇) 什么是存储过程?有哪些优缺点? 什么是存储过程?有哪些优缺点? 存储过程就像我们编程语言中的函数一样,封装了我们的代码(PLSQL、T-SQL)。 存储过程的优点: 能够将代码封装起来 保存在数据库之中 让编程语言进行调用 存储过程是一个预编译的代码块,执行效率比较高
发表于 2022-08-11 14:47阅读:0评论:0推荐:0
摘要:阅读全文 »
推荐阅读 超全的设计模式简介(45种) design-patterns-for-humans 中文版(github 仓库永久更新) MongoDB 资源、库、工具、应用程序精选列表中文版 有哪些鲜为人知,但是很有意思的网站? 一份攻城狮笔记 每天搜集 Github 上优秀的项目 一些有趣的民间故事
发表于 2022-08-11 08:49阅读:41评论:0推荐:0
摘要:阅读全文 »
引言 网络协议是每个前端工程师都必须要掌握的知识,TCP/IP 中有两个具有代表性的传输层协议,分别是 TCP 和 UDP,本文将介绍下这两者以及它们之间的区别。 想阅读更多优质文章请猛戳GitHub博客 一、TCP/IP网络模型 计算机与网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测
发表于 2022-08-11 01:31阅读:113评论:0推荐:0
摘要:阅读全文 »
1.什么是微服务 1)一组小的服务(大小没有特别的标准,只要同一团队的工程师理解服务的标识一致即可) 2)独立的进程(java的tomcat,nodejs等) 3)轻量级的通信(不是soap,是http协议) 4)基于业务能力(类似用户服务,商品服务等等) 5)独立部署(迭代速度快) 6)无集中式管
发表于 2022-08-11 01:20阅读:72评论:0推荐:0
摘要:阅读全文 »
0个最难回答的Java面试题 这是我收集的10个较难回答的 Java 面试题。这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题。这些问题都是容易在各种 Java 面试中被问到的。 1. 为什么 wait,notify 和 notifyAll 是在 Object 类中定义的而不
发表于 2022-08-10 22:50阅读:21评论:0推荐:0
摘要:阅读全文 »
SpringBoot 常见问题分析 HikariCP 常见问题分析 MyBatis常见问题分析 Spring 常见问题分析 thymeleaf 常见问题分析 Ajax 常见问题分析 Summary 本小节主要希望提高同学们对问题的思考,分析以及解决问题的能力,并对问题进行总结,沉淀,形成经验和习惯。
发表于 2022-08-10 22:44阅读:63评论:0推荐:0
摘要:高并发的基本表现为单位时间内系统能够同时处理的请求数,
高并发的核心是对CPU资源的有效压榨。
举个例子,如果我们开发了一个叫做MD5穷举的应用,每个请求都会携带一个md5加密字符串,最终系统穷举出所有的结果,并返回原始字符串。这个时候我们的应用场景或者说应用业务是属于CPU密集型而不是IO密集型。这个时候CPU一直在做有效计算,甚至可以把CPU利用率跑满,这时我们谈论高并发并没有任何意义。(当然,我们可以通过加机器也就是加CPU来提高并发能力,这个是一个正常猿都知道废话方案,谈论加机器没有什么意义,没有任何高并发是加机器解决不了,如果有,那说明你加的机器还不够多!🐶)
阅读全文 »
发表于 2022-08-10 22:21阅读:23评论:0推荐:0
摘要:阅读全文 »
① 当服务越来越多时,服务 URL 配置管理变得非常困难,F5 硬件负载均衡器的单点压力也越来越大。
② 当进一步发展,服务间依赖关系变得错踪复杂,甚至分不清哪个应用要在哪个应用之前启动,架构师都不能完整的描述应用的架构关系。
③ 接着,服务的调用量越来越大,服务的容量问题就暴露出来,这个服务需要多少机器支撑?什么时候该加机器?
为了解决这由于架构的演变所产生的问题几个问题,于是,dubbo 产生了。当然,解决这个问题的技术不止 dubbo 。
发表于 2022-08-10 14:00阅读:0评论:0推荐:0
摘要:阅读全文 »
前言 作为前端开发中现行最火的框架之一,Vue 在面试中出现的频率不断增加。基于此,总结了一些 Vue 方面经常出现的面试题,留给自己查看消化,也分享给有需要的小伙伴 感兴趣的小伙伴也可以点击 这里,查看前端方面的其他面试题,欢迎 star 关注 如果文章中有出现纰漏、错误之处,还请看到的小伙伴留言
发表于 2022-08-10 12:46阅读:130评论:0推荐:0
摘要:阅读全文 »
一、生命周期 先贴两张图: vue生命周期 小程序生命周期 相比之下,小程序的钩子函数要简单得多。 vue的钩子函数在跳转新页面时,钩子函数都会触发,但是小程序的钩子函数,页面不同的跳转方式,触发的钩子并不一样。 onLoad: 页面加载一个页面只会调用一次,可以在 onLoad 中获取打开当前页面
发表于 2022-08-10 12:42阅读:0评论:0推荐:0
摘要:阅读全文 »
在了解 Webpack 原理前,需要掌握以下几个核心概念,以方便后面的理解:
Entry:入口,Webpack 执行构建的第一步将从 Entry 开始,可抽象成输入。
Module:模块,在 Webpack 里一切皆模块,一个模块对应着一个文件。Webpack 会从配置的 Entry 开始递归找出所有依赖的模块。
Chunk:代码块,一个 Chunk 由多个模块组合而成,用于代码合并与分割。
Loader:模块转换器,用于把模块原内容按照需求转换成新内容。
Plugin:扩展插件,在 Webpack 构建流程中的特定时机会广播出对应的事件,插件可以监听这些事件的发生,在特定时机做对应的事情。
发表于 2022-08-10 12:16阅读:0评论:0推荐:0
摘要:阅读全文 »
浏览器器内核拿到内容后,渲染大概可以划分成以下几个步骤:
解析html建立dom树
解析css构建render树(将CSS代码解析成树形的数据结构,然后结合DOM合并成render树)
布局render树(Layout/reflow),负责各元素尺寸、位置的计算
绘制render树(paint),绘制页面像素信息
浏览器会将各层的信息发送给GPU,GPU会将各层合成(composite),显示在屏幕上。
发表于 2022-08-10 12:08阅读:0评论:0推荐:0
摘要:阅读全文 »
同源策略是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。
同源的定义
如果两个 URL 的 protocol、port (en-US) (如果有指定的话) 和 host 都相同的话,则这两个 URL 是同源。这个方案也被称为“协议/主机/端口元组”,或者直接是 “元组”。
同源策略控制不同源之间的交互,例如在使用XMLHttpRequest 或 标签时则会受到同源策略的约束。这些交互通常分为三类:
跨源写操作(Cross-origin writes)一般是被允许的。例如链接(links),重定向以及表单提交。特定少数的 HTTP 请求需要添加预检请求。
跨源资源嵌入(Cross-origin embedding)一般是被允许(后面会举例说明)。
跨源读操作(Cross-origin reads)一般是不被允许的,但常可以通过内嵌资源来巧妙的进行读取访问。
发表于 2022-08-10 12:01阅读:0评论:0推荐:0
摘要:阅读全文 »
edis是一个开源的内存中的数据结构存储系统,它可以用作:数据库、缓存和消息中间件。
它支持多种类型的数据结构,如字符串(String),散列(Hash),列表(List),集合(Set),有序集合(Sorted Set或者是ZSet)与范围查询,Bitmaps,Hyperloglogs 和地理空间(Geospatial)索引半径查询。其中常见的数据结构类型有:String、List、Set、Hash、ZSet这5种。
发表于 2022-08-10 11:53阅读:0评论:0推荐:0
摘要:阅读全文 »
说几个你所知道的设计模式 单例模式 保证一个类仅有一个实例,并提供一个访问他的全局访问点例如框架中的数据库连接 - 类似DB类 策略模式 针对一组算法,将每一个算法封装到具有共同接口的独立的类中,例如进入个人主页时,根据浏览者的不同,给予不同的显示与操作 - 类似不同用户呈现不同效果 注册模式 提供
发表于 2022-08-10 11:42阅读:22评论:0推荐:0
摘要:阅读全文 »
Google 在很久之前就开始使用容器模型来解决 VM 模式的弊端。简单来说容器模型允许我们在同一台主机上运行多个容器,而且共用主机的 CPU、RAM 等资源。
那么它对开发者来说意味着是么呢?
它可以保证对所有的开发者和服务器来说,我们的工作环境都是一致的。比如: 生产环境、仿真环境、测试环境。
任何人都可以分分钟配置好项目,无需乱搞配置、安装库和设置依赖。
简单来说,docker 是一个平台,它允许我们使用容器来开发、部署、运行应用程序。
发表于 2022-08-10 11:14阅读:0评论:0推荐:0
摘要:阅读全文 »
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。
如果你学过html,css,你会知道你写的页面只能自己访问,别人不能远程访问你写的页面,Tomcat就是提供能够让别人访问自己写的页面的一个程序
发表于 2022-08-10 11:03阅读:0评论:0推荐:0
摘要:阅读全文 »
综合类 综合类 地址前端知识体系 http://www.cnblogs.com/sb19871023/p/3894452.html前端知识结构 https://github.com/JacksonTian/fks前端知识体系 http://www.cnblogs.com/sb19871023/p/3
发表于 2022-08-10 01:18阅读:0评论:0推荐:0
摘要:阅读全文 »
JVM是Java Virtual Machine(Java 虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
Java语言的一个非常重要的特点就是平台无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。
发表于 2022-08-10 01:15阅读:0评论:0推荐:0
摘要:阅读全文 »
结论:
浏览器工作流程:构建DOM -> 构建CSSOM -> 构建渲染树 -> 布局 -> 绘制。
CSSOM会阻塞渲染,只有当CSSOM构建完毕后才会进入下一个阶段构建渲染树。
通常情况下DOM和CSSOM是并行构建的,但是当浏览器遇到一个不带defer或async属性的script标签时,DOM构建将暂停,如果此时又恰巧浏览器尚未完成CSSOM的下载和构建,由于JavaScript可以修改CSSOM,所以需要等CSSOM构建完毕后再执行JS,最后才重新DOM构建。
发表于 2022-08-10 01:12阅读:0评论:0推荐:0
摘要:阅读全文 »
从线程是否需要对资源加锁可以分为 悲观锁 和 乐观锁
从资源已被锁定,线程是否阻塞可以分为 自旋锁
从多个线程并发访问资源,也就是 Synchronized 可以分为 无锁、偏向锁、 轻量级锁 和 重量级锁
从锁的公平性进行区分,可以分为公平锁 和 非公平锁
从根据锁是否重复获取可以分为 可重入锁 和 不可重入锁
从那个多个线程能否获取同一把锁分为 共享锁 和 排他锁
发表于 2022-08-10 01:12阅读:0评论:0推荐:0
摘要:Java最新面试题汇总,希望这些文字对于面试的你们有帮助。 基础面试题 Java面试题-基础篇一 Java面试题-基础篇二 Java面试题-集合框架篇三 Java基础面试题(4) Java基础面试题(5) Java多线程与并发面试题 Java中高级面试题【第一部分】 Java中高级面试题【第二部分】
阅读全文 »
发表于 2022-08-10 01:09阅读:0评论:0推荐:0
摘要:阅读全文 »
MySQL 是一种关系型数据库,在Java企业级开发中非常常用,因为 MySQL 是开源免费的,并且方便扩展。阿里巴巴数据库系统也大量用到了 MySQL,因此它的稳定性是有保障的。MySQL是开放源代码的,因此任何人都可以在 GPL(General Public License) 的许可下下载并根据个性化的需要对其进行修改。MySQL的默认端口号是3306。
发表于 2022-08-10 01:06阅读:0评论:0推荐:0
摘要:从本章开始,我们正式进入Java多线程进阶篇的学习。初学者通过基础篇的学习,应该已经对多线程的初步使用有了基本概念和掌握。多线程这块知识的学习,真正的难点不在于多线程程序的逻辑有多复杂,而在于理清J.U.C包中各个多线程工具类之间的关系、特点及其使用场景(从整体到局部、高屋建瓴,这对学习任何知识都至
阅读全文 »
发表于 2022-08-10 01:04阅读:0评论:0推荐:0
摘要:Spring AOP 实战 看了上面这么多的理论知识, 不知道大家有没有觉得枯燥哈. 不过不要急, 俗话说理论是实践的基础, 对 Spring AOP 有了基本的理论认识后, 我们来看一下下面几个具体的例子吧.下面的几个例子是我在工作中所遇见的比较常用的 Spring AOP 的使用场景, 我精简了
阅读全文 »
发表于 2022-08-10 01:02阅读:0评论:0推荐:0
摘要:基本知识 其实, 接触了这么久的 AOP, 我感觉, AOP 给人难以理解的一个关键点是它的概念比较多, 而且坑爹的是, 这些概念经过了中文翻译后, 变得面目全非, 相同的一个术语, 在不同的翻译下, 含义总有着各种莫名其妙的差别. 鉴于此, 我在本章的开头, 着重为为大家介绍一个 Spring A
阅读全文 »
发表于 2022-08-10 00:55阅读:0评论:0推荐:0
摘要:阅读全文 »
在没有 Docker 的时代,我们会使用硬件虚拟化(虚拟机)以提供隔离。这里,虚拟机通过在操作系统上建立了一个中间虚拟软件层 Hypervisor ,并利用物理机器的资源虚拟出多个虚拟硬件环境来共享宿主机的资源,其中的应用运行在虚拟机内核上。但是,虚拟机对硬件的利用率存在瓶颈,因为虚拟机很难根据当前业务量动态调整其占用的硬件资源,因此容器化技术得以流行。其中,Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。
发表于 2022-08-10 00:51阅读:32评论:0推荐:0
摘要:阅读全文 »
本篇文章我们来聊聊大家日常开发中常用的一个集合类 - HashMap。HashMap 最早出现在 JDK 1.2中,底层基于散列算法实现。HashMap 允许 null 键和 null 值,在计算哈键的哈希值时,null 键哈希值为 0。HashMap 并不保证键值对的顺序,这意味着在进行某些操作后,键值对的顺序可能会发生变化。另外,需要注意的是,HashMap 是非线程安全类,在多线程环境下可能会存在问题。
发表于 2022-08-10 00:48阅读:0评论:0推荐:0
摘要:阅读全文 »
面向对象编程很重要的一个方面,就是对象的继承。A 对象通过继承 B 对象,就能直接拥有 B 对象的所有属性和方法。这对于代码的复用是非常有用的。
大部分面向对象的编程语言,都是通过“类”(class)实现对象的继承。传统上,JavaScript 语言的继承不通过 class(ES6 引入了class 语法),而是通过“原型对象”(prototype)实现。那么在JS中常见的继承方式有几种呢?
发表于 2022-08-10 00:38阅读:0评论:0推荐:0
摘要:阅读全文 »
Linux系统的组成:
linux内核(linus 团队管理)
shell:用户与内核交互的接口
文件系统:ext3、ext4等。windows 有 fat32 、ntfs
第三方应用软件
Linux的几个优点:
免费
很多软件原生是在Linux下运行的,庞大的社区支持,生态环境好。
开源,可被定制,开放,多用户的网络操作系统。
相对安全稳定
发表于 2022-08-10 00:33阅读:0评论:0推荐:0
摘要:阅读全文 »
一、什么是泛型? Java泛型设计原则:只要在编译时期没有出现警告,那么运行时期就不会出现ClassCastException异常. 泛型:把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊的类型 参数化类型: 把类型当作是参数一样传递 <数据类型> 只能是引用类型 相关术语: Array
发表于 2022-08-10 00:28阅读:0评论:0推荐:0
摘要:阅读全文 »
在典型的Java面试中, 面试官会从线程的基本概念问起
如:为什么你需要使用线程, 如何创建线程,用什么方式创建线程比较好(比如:继承thread类还是调用Runnable接口),然后逐渐问到并发问题像在Java并发编程的过程中遇到了什么挑战,Java内存模型,JDK1.5引入了哪些更高阶的并发工具,并发编程常用的设计模式,经典多线程问题如生产者消费者,哲学家就餐,读写器或者简单的有界缓冲区问题。仅仅知道线程的基本概念是远远不够的, 你必须知道如何处理死锁,竞态条件,内存冲突和线程安全等并发问题。掌握了这些技巧,你就可以轻松应对多线程和并发面试了。
发表于 2022-08-10 00:25阅读:0评论:0推荐:0
摘要:阅读全文 »
1 B树 在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区别。 1.1 B树概念 B树也称B-树,它是一颗多路平衡查找树。二叉树我想大家都不陌生,其实,B树和后面讲到的B+树也是从最简单的二叉树变换而来的,并没有什么神秘的
发表于 2022-08-10 00:21阅读:0评论:0推荐:0
摘要:
至少n位的数字:^\d{n,}
零和非零开头的数字:^(0|[1-9][0-9]*)
带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?
有两位小数的正实数:^[0-9]+(.[0-9]{2})?
非零的正整数:^[1-9]\d*
非负整数:^\d+
阅读全文 »
数字:^[0-9]*
发表于 2022-08-10 00:16阅读:0评论:0推荐:0
摘要:阅读全文 »
为了说明 JS 面试的复杂性,首先,请尝试给出以下结果: onsole.log(2.0 == “2” == new Boolean(true) == “1”) 十有八九的会给出false, 其实运行结果是true,原因请看 这里。 1) 理解 JS 函数 函数是 JavaScript 的精华,是 J
发表于 2022-08-10 00:13阅读:0评论:0推荐:0
摘要:阅读全文 »
一般来说没有被引用的对象就是垃圾,就是要被清除, 有个例外如果几个对象引用形成一个环,互相引用,但根访问不到它们,这几个对象也是垃圾,也要被清除。
发表于 2022-08-10 00:08阅读:33评论:0推荐:0
摘要:阅读全文 »
CSS能够生成各种形状。正方形和矩形很容易,因为它们是 web 的自然形状。添加宽度和高度,就得到了所需的精确大小的矩形。添加边框半径,你就可以把这个形状变成圆形,足够多的边框半径,你就可以把这些矩形变成圆形和椭圆形。
我们还可以使用 CSS 伪元素中的 ::before 和 ::after,这为我们提供了向原始元素添加另外两个形状的可能性。通过巧妙地使用定位、转换和许多其他技巧,我们可以只用一个 HTML 元素在 CSS 中创建许多形状。
虽然我们现在大都使用字体图标或者svg图片,似乎使用 CSS 来做图标意义不是很大,但怎么实现这些图标用到的一些技巧及思路是很值得我们的学习。
发表于 2022-08-09 11:18阅读:20评论:0推荐:0
摘要:阅读全文 »
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git有什么特点?简单来说就是:高端大气上档次!
发表于 2022-08-09 11:10阅读:31评论:0推荐:0
摘要:阅读全文 »
Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!牛是怎么定义的呢?大家可以体会一下。
Git迅速成为最流行的分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。
历史就是这么偶然,如果不是当年BitMover公司威胁Linux社区,可能现在我们就没有免费而超级好用的Git了。
发表于 2022-08-09 10:49阅读:131评论:0推荐:0
摘要:阅读全文 »
通常来讲,只要运行在服务器系统之上,绑定了服务器IP地址并且在某一个端口监听用户请求并提供服务的软件都可以叫服务器软件。
发表于 2022-08-09 10:36阅读:0评论:0推荐:0
摘要:阅读全文 »
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。