1、先说一下源码解析的过程:JDK-->JRE-->JVM(以openJDK代替)注意:这里要了解jdk和jre和jvm他们分别是什么?以及他们的关系才可以继续。这里先上一章从网上下载的关系图方便理解2、笔者本地的jdk是oraclejdk,jvm所在位置就是安装的jdk。jdk下jre下bin下server下的jvm.dll。也就是F:\Java\jdk\jdk1.7.0_60\jr
转载 2023-07-20 23:44:05
196阅读
# Java MVC框架底层原理 在现代的Web开发中,MVC(Model-View-Controller)架构是一种非常流行的设计模式,它将应用程序分为三个部分:模型(Model)、视图(View)和控制器(Controller)。其中,模型负责数据存储与处理,视图负责用户界面的展示,控制器负责业务逻辑的处理。在Java开发中,有很多优秀的MVC框架,如Spring MVC、Struts等,它
原创 2024-07-14 07:14:20
13阅读
# Java MVC底层实现原理 MVC(Model-View-Controller)是一种设计模式,广泛应用于Java Web开发中。它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller),以实现业务逻辑和用户界面的分离。下面我们将通过一个简单的示例来了解Java MVC底层实现原理。 ## 整体流程 以下是实现Java MVC的基本流程:
原创 10月前
29阅读
深入理解synchronized底层源码 前言 这篇文章从JVM源码分析synchronized的实现逻辑,这样才能更加对synchronized深度的认识。 进程:操作系统资源分配的基本单位。线程:cpu调度的基本单位(真实执行) 一、synchronized的使用场景 synchronized一
转载 2022-06-01 11:19:52
106阅读
JDK1.7和1.8 LinkedList的源码是一样的 public class LinkedList<E> {//e是一个反选,具体的类型要在实例化的时候确定}transient int size = 0;//集合中元素的数量​ private static class Node<E> { E ...
转载 2021-08-15 21:47:00
180阅读
2评论
public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E> { //外部操作数 protected transient int modCount = 0;//0 } public abstract class AbstractSequ
原创 2023-06-21 18:22:11
149阅读
# JavaScript底层源码探秘 JavaScript是一种广泛使用的编程语言,最初被设计用于浏览器中的小脚本,但随着Web的发展,它已经发展成为一种通用编程语言。为了更好地理解JavaScript的魅力,我们可以探索其底层源码的基本工作原理,尤其是在引擎层面的实现。 ## JavaScript引擎的概念 JavaScript引擎是一个将JavaScript代码转化为机器代码并执行的程序
原创 9月前
45阅读
1.HashMap在创建对象的时候值k v 就确定了 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable { //重要属性 static final int D ...
转载 2021-08-22 21:31:00
252阅读
2评论
# 如何实现“Python 底层源码” 在学习Python底层源码的过程中,您将会发现许多Python的核心功能都是由一些底层结构和算法实现的。对于初学者而言,从理解整个流程开始会是一个有效的起点。本文的目标是引导您通过几个步骤,了解如何研究和实现Python的底层源码,并帮助您上手实际的实现。 ## 整体流程 以下是实现“Python底层源码”的基本流程: | 步骤 | 描述
原创 2024-09-16 04:31:35
55阅读
一、Redis数据结构1.1 Redis数据结构-动态字符串我们都知道Redis中保存的Key是字符串,value往往是字符串或者字符串的集合。可见字符串是Redis中最常用的一种数据结构。不过Redis没有直接使用C语言中的字符串,因为C语言字符串存在很多问题:获取字符串长度的需要通过运算非二进制安全不可修改Redis构建了一种新的字符串结构,称为简单动态字符串(Simple Dynamic S
本文内容适合刚接触spring security的新手,大神请跳过。spring security是一个用来保护spring应用程序的框架,它在用户访问web程序的时候会进行身份的认证(判断当前用户是谁)和授权(当前用户能访问哪些uri,不能访问哪些uri)。我们经常见到场景:1.访问某些网站时需要先登录用户名和密码;2.当你用自己的用户名密码登录某电商网站后,你只能浏览自己的订单,不能看别人的,
底层原理 - 对象的本质一、Objective-C的本质1、OC的本质OC代码的底层实现其实都是C/C++代码,编译器先把OC代码转换成C/C++代码,接着转成汇编语言,最后转成机器语言最终运行在手机上; 所以OC代码的本质其实就是c/c++代码;OC对象转换过程2、Objective-C的对象、类主要是基于C/C++的什么数据结构实现的?Objective-C的面向对象都是基于C/C++的数据结
转载 2024-09-05 12:46:26
78阅读
在本篇博文中,我们将深入探讨“MySQL底层源码”相关的问题,涵盖从它的背景到技术原理、架构解析、源码分析、案例分析,以及扩展讨论的整体过程。准备好了吗?让我们开始吧! ## 背景描述 在数据库系统中,MySQL作为一种流行的关系型数据库管理系统 (RDBMS),被广泛用于Web应用程序以及数据存储。理解其底层源码,无疑能帮助我们更深入地掌握这一技术,并更好地进行性能优化及故障排查。 四象限
原创 7月前
54阅读
# Redisson底层源码实现教程 ## 1. 整体流程 为了帮助你理解Redisson底层源码的实现,下面是一个整体流程的表格,展示了实现的步骤和需要做的事情。 | 步骤 | 描述 | | --- | --- | | 1 | 导入Redisson库和相关依赖 | | 2 | 创建Redisson客户端连接 | | 3 | 选择数据结构(如Map或Set) | | 4 | 对数据结构进行操
原创 2023-10-03 13:13:46
72阅读
Python中dict和set实现原理Jolly • 2017 年 11 月 05 日python的dict和set设计上是很巧妙的,底层是用c语言编写,哈希表实现,这样确保了高效的数据处理。1、dict的性能远高于list2、list的查询消耗随着查询数量的增大而增大3、dict的查询消耗并不会随着查询数量的增大而增大dict内部实现是根据哈西表来实现的:1、当申明dict变量的时候,就会在内存
什么是JSJavaScript是一种基于对象的动态、弱类型脚本语言(简称JS),是一种解释型语言,和其他的编程语言不同,如java/C++等编译型语言,这些语言在代码执行前会进行通篇编译,先编译成字节码(机器码)。然后在执行。而JS不是这样做的,JS是不需要编译成中间码,而是可以直接在浏览器中运行,JS运行过程可分为两个阶段,编译和执行。(可参考你不知道的JS这本书),当JS控制器转到一段可执行的
文章目录List集合ArrayListVectorLinkedListSet集合HashSetLinkedHashSetMap集合Map 接口的遍历方式HashMapHashtablePropertiesTreeSetTreeMap开发中如何选择集合实现类Iterator遍历Collection工具类 List集合集合类中元素有序(即添加顺序和取出顺序一致)、且可重复List集合中的每个元素都有
转载 2023-09-28 12:46:22
53阅读
7.1 MVC 三层架构什么是 MVC ?答:Model view Controller 模型、视图、控制器模型:实体类,数据库中对应的 一个一个 字段。视图:JSP 写的页面控制器:Servlet(web 服务用来控制 整个 程序)早些年开发的时候,我们知道 建立一个 网站。肯定是需要 写 web 资源,但是 数据又是 时刻更新的,所以还要 跟 数据库进行关联。但是 怎么 进行关联呢? 那肯定
转载 2023-07-17 00:12:48
43阅读
      SpringMvc是主流的MVC框架,它是基于Spring提供的web应用框架,该框架遵循servlet规范。该框架的作用是接收Servlet容器(如Tomcat)传递过来的请求并返回响应。SpringMvc的核心就是servlet实例,而这个servlet在spring中就是DispatcherServlet实例。    dispat
MVC 模式是一种软件框架模式,被广泛应用在 JavaEE 项目的开发中。MVC 模式很好理解,但也十分重要,在今后的 Web 应用开发中,我们都离不开它。 之前,我们学习过了 Servlet、JSP,看起来它们都可以独立完成许多功能,却各有特点,MVC 就提供了一种扬长避短,双剑合璧的方法。
  • 1
  • 2
  • 3
  • 4
  • 5