javaorm的原理分析
我们在讨论ORM实现映射的时候,很多人对于映射的实际过程不是很了解,这就导致对于其原理的理解上一知半解。本篇会将对象之间的映射为大家带来完整的流程展示,帮助大家弄清楚ORM简化数据库操作的过程,并得出原理的结论,最后再带来一个orm的用法实例分享。1.ORM映射关系在实际开发中,程序...
2024-01-10jvm之栈、堆
1. Java Virtual Machine 人群当中,一位叫java的小伙子正向周围一众人群细数着自己取得的荣耀与辉煌。就在此时,c老头和c++老头缓步走来,看着被众人围住的java,c老头感叹地对着身旁的c++说道:“原以为你就可以挑起我的梁子一直走下去的。” c++笑着回应道:“江山代有才人出,这世界以后总会...
2024-01-10浅析js中mvvm模式实现的原理
以Vue.js框架为例子,使用的mvvm模式view指的是页面的html和css构成的视图。model指的是从后端取到的数据模型viewmodel 指的是前端开发人员组织生成和维护的视图数据层。这一层包含的是视图行为和数据。视图行为指的是如页面加载进来时请求什么,将指定的数据放到指定的元素上,点击某个元素触...
2024-01-10查看jvm的cg情况
1.查询java程序的pidps -ef|grep java 查询或者top 查询2.使用jstat查看gc情况jstat -gc pid 1000[间隔时间] 得到如下bash-4.4# jstat -gc 28 1000 S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT 34048.0 ...
2024-01-10类的加载过程(深入理解jvm)
1.1.通过类的全限定名找到二进制字节流1.2.将字节流中的静态存储结构转化为方法区中的动态存储结构1.3.在内存中生成一个java.lang.Class对象作为方法区这个类各种数据的访问入口2.验证:校验字节码文件是否符合规则,是否会破会虚拟机的安全性2.1.文件格式验证(是否符合class格式要求,可以被虚拟...
2024-01-10详解jvm中的标量替换
概述通常在java中创建一个对象,大家都认为是在堆中创建。 在jdk6开始有逃逸分析,标量替换等技术,关于在堆中创建对象不再绝对。关于标量替换,通过以下几点进行概述:逃逸分析标量替换是什么测试标量替换逃逸分析逃逸分析是一种分析技术,分析对象的动态作用域,供其他优化措施...
2024-01-10【JS】理解js中堆栈原理
回顾js数据类型有哪些?ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值。基本类型值指的是简单的数据段,而引用类型值指那些可能由多个值构成的对象。复习一下两种数据类型各有哪些:基础类型(Undefined, Null, Boolean, Number, String, Symbol(ES6新添加的))一共6种引用类型(Obje...
2024-01-10浅谈jvm中的垃圾回收策略
java和C#中的内存的分配和释放都是由虚拟机自动管理的,此前我已经介绍了CLR中GC的对象回收方式,是基于代的内存回收策略,其实在java中,JVM的对象回收策略也是基于分代的思想。这样做的目的就是为了提高垃圾回收的性能,避免对堆中的所有对象进行检查时所带来的程序的响应的延迟,因为jvm执...
2024-01-107种jvm垃圾回收器,这次全部搞懂
前言之前我们讲解了jvm的组成结构与垃圾回收算法等知识点,今天我们来讲讲jvm最重要的堆内存是如何使用垃圾回收器进行垃圾回收,并且如何使用命令去配置使用这些垃圾回收器。堆内存详解上面这个图大家应该已经很明白了吧。大家就可以理解成一个房子被分成了几个房间,每个房间的作用不同...
2024-01-10JVM栈帧之操作数栈与局部变量表
前置知识阅读本文需要对以下知识有所了解: * 栈 * 汇编 * Java 基础 * 逆波兰表达式(有学过的同学阅读本文毫无障碍)引子基于寄存器的设计模式就我们所熟知的x86或arm指令集来说,其对数据的操作都是基于寄存器。例如,要对两个数执行加法操作则需要将这两个数分别送入两个寄存器再执行加法操...
2024-01-10再看 JVM(2)
文章太长了,分2篇写吧,上一篇:再看 JVM(1)堆内存想必大家对堆内存都是耳熟能详了,自己都去仔细研究过了,但是这里还是要重点说明,尽量力争全面,有些细节点的点还是有很多人不知道的 φ(≧ω≦*)♪堆内存特点几乎所有的对象实例都在堆空间分配内存方法结束后,堆中的对象不会马上...
2024-01-10JVM栈和栈帧
前情提要对于没有深度递归的函数来说,无需担心上篇文章中的算法。当知道正在处理数据集有限时,我会使用这种简单的基本递归形式。由于你并不知道在应用程序中会处理多少数据,因此确保你的递归算法是尾递归(tail-recursive)就变得十分重要,否则你将可能遇到讨厌的 StackOverflowError.举个例子,...
2024-01-10JVM
如果需要热部署,使用“双亲委派”是不行的,如何打破“双亲委派”呢~一. 源代码“双亲委派”源代码如下(ClassLoader.java):public Class<?> loadClass(String name) throws ClassNotFoundException { return loadClass(name, false);}protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoun...
2024-01-10HiveonMR调优
当HiveQL跑不出来时,基本上是数据倾斜了,比如出现count(distinct),groupby,join等情况,理解 MR 底层原理,同时结合实际的业务,数据的类型,分布,质量状况等来实际的考虑如何进行系统性的优化。Hive on MR 调优主要从三个层面进行,分别是基于MapReduce优化、Hive架构层优化和HiveQL层优化。MapReduce调优...
2024-01-10JVM调优的基本思路
和Web应用程序一样,Tomcat作为一个Java程序也跑在JVM中,因此如果要对Tomcat进行调优,需要先了解JVM调优的原理。而对于JVM调优来说,主要是JVM垃圾收集的优化,一般来说是因为有问题才需要优化,所以对于JVM GC来说,如果观察到Tomcat进程的CPU使用率比较高,并且在GC日志中发现GC次数比较频繁、GC停顿...
2024-01-10面试中必问的jvm与性能优化
三个加载器各自完成自己的工作,但它们是如何协调工作呢?哪一个类该由哪个类加载器完成呢?为了解决这个问题,Java采用了委托模型机制。 委托模型机制的工作原理很简单:当类加载器需要加载类的时候,先请示其Parent(即上一层加载器)在其搜索路径载入,如果找不到,才在自己的搜索路径搜索...
2024-01-10Vuejs响应式原理
最近一段时间在阅读Vue源码,从它的核心原理入手,开始了源码的学习,而其核心原理就是其数据的响应式。并且结合设计模式进行学习观察者模式&&发布订阅者模式这里简短的介绍这两种模式的联系和差异,观察者模式观察者模式定义了对象间的一种一对多的依赖关系,当一个对象的状态发生...
2024-01-10详解Vue的异步更新实现原理
最近面试总是会被问到这么一个问题:在使用vue的时候,将for循环中声明的变量i从1增加到100,然后将i展示到页面上,页面上的i是从1跳到100,还是会怎样?答案当然是只会显示100,并不会有跳转的过程。怎么可以让页面上有从1到100显示的过程呢,就是用setTimeout或者Promise.then等方法去模拟。讲道理,...
2024-01-10Vue深入响应式原理
Vue 最独特的特性之一,是其非侵入性的响应式系统。数据模型仅仅是普通的 JavaScript 对象。而当你修改它们时,视图会进行更新。这使得状态管理非常简单直接,不过理解其工作原理同样重要,这样你可以避开一些常见的问题.如何追踪变化当你把一个普通的 JavaScript 对象传入 Vue 实例作为 data 选项...
2024-01-10浅谈vue原理(一)
哎,不知道多久之前说的要说说vue原理的,后来就忘记了,嘿嘿,这次就来看看vue的大概原理吧! 看过我博客的人应该知道,我不是很喜欢用那种太专业的术语的,喜欢用小白都能看懂的话来说,所以可能有的地方表达的不是很专业,不要打我╮(╯_╰)╭ 前提:起码要简单使用过vue,知...
2024-01-10Vue响应式原理深入解析及注意事项
前言Vue最明显的特性之一便是它的响应式系统,其数据模型即是普通的 JavaScript 对象。而当你读取或写入它们时,视图便会进行响应操作。文章简要阐述下其实现原理,如有错误,还请不吝指正。下面话不多说了,来随着小编来一起学习学习吧。响应式data<div id = "exp">{{ message }}</div>const vm = new Vue({ ...
2024-01-10vue支付原理
新建支付宝应用 第一步:创建应用· 生成秘钥生2.2 按照官方要求生成秘钥 把生成的app公钥粘贴到沙箱环境的app中 2.4 查看沙箱环境账号和密码 3.测试支付宝获取支付宝扫码链接3.1 支付宝开发地址支付宝开放平台: https://open.alipay.com/platform/home.htm支付宝沙箱环境: ...
2024-01-10【JS】vue中MVVM原理及其实现
vue中MVVM原理及其实现一、理解 MVVMMVVM - Model View ViewModel:数据,视图,视图模型。三者与 Vue 的对应:view 对应 template,vm 对应 new Vue({…}),model 对应 data。三者的关系:view 可以通过事件绑定的方式影响 model,model 可以通过数据绑定的形式影响到view,viewModel是把 model 和 view 连起来的连接器。MVVM ...
2024-01-10javaDelayQueue的原理
在对DelayQueue延迟功能的使用上,很多人不能后完全理解延迟的一些功能使用,这里我们深入来挖掘一下DelayQueue的原理。下面将从构造方法、接口、继承体系三个方面进行分析,需要注意的是,相较于其它的阻塞队列,DelayQueue因为延迟的功能多了接口的使用,一起来看具体内容。1.构造方法public Delay...
2024-01-10[转] 深入理解vue 一些底层原理
20180224114219152.png使用vue会让人感到身心愉悦,它同时具备angular和react的优点,轻量级,api简单,文档齐全,简单强大,麻雀虽小五脏俱全.倘若用一句话来概括vue,那么我首先想到的便是官方文档中的一句话:Vue.js(读音 ...
2024-01-10vue 权限管理
核心想法:1.登陆后获得用户角色,通过角色获得用户的权限,注入权限对应的路由。2.刷新页面,从localStorage用角色(更好的方式是通过token)再次获得所属权限,再次注入路由。在管理界面左端循环权限对应的路由菜单。3.localStorage存用户的信息(token),权限路由不会存。所有的路由分为2种:公共...
2024-01-10