21. MultipartResolver 组件
概述请求到视图名的转换器接口
123456789public interface RequestToViewNameTranslator { /** * 根据请求,获得其视图名 */ @Nullable String getViewName(HttpServletRequest request) throws Exception;}
在 DispatcherServlet 中,我们已经看到,在 ModelAndView 不存在对应的视图时,会通过 RequestToViewNameTranslator 来获取默认的视图名,作为其视图。
DefaultRequestToViewNameTranslator实现 RequestToViewNameTranslator 接口,默认且是唯一的 RequestToViewNameTranslator 实现类。
构造方法1234567891011121314151617181920212223242526272829303132333435// DefaultRequestToViewNameTransla ...
类执行机制
title: 2. 类执行机制top: 98categories:- JAVA- JVM- 类执行机制tags:- JVM
在完成将class文件信息加载到JVM并产生Class对象后,就可执行Class对象的静态方法或实例化对象进行调用了。在源码编译阶段将源码编译为JVM字节码,JVM字节码是一种中间代码的方式,要由JVM在运行期对其进行解释并执行,这种方式称为字节码解释执行方式。
字节码解释执行由于采用的为中间码的方式,JVM有一套自己的指令,对于面向对象的语言而言,最重要的是执行方法的指令,JVM采用了invokestatic、invokevirtual、invokeinterface和invokespecial四个指令来执行不同的方法调用。
invokestatic对应的是调用static方法
invokevirtual对应的是调用对象实例的方法
invokeinterface对应的是调用接口的方法
invokespecial对应的是调用private方法和编译源码后生成的方法,此方法为对象实例化时的初始化方法,例如下面一段代码:
123456789101112131 ...
虚拟机
虚拟机(Virtual Machine),就是一台虚拟的计算机。 它是一个软件,用来执行一系列虚拟计算机指令。
大体上,可以分为两类:
系统虚拟机
Visual Box,VMware就属于系统虚拟机。
完全是对物理计算机的仿真,提供了一个可运行完整系统的软件平台
程序虚拟机
典型代表就是Java虚拟机
专门为执行单个计算机程序而设计
Java虚拟机中执行的指令,称为Java字节码指令
无论是系统虚拟机还是程序虚拟机,在上边运行的软件都被限制于虚拟机提供的资源中
Java虚拟机就是二进制字节码的���行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行。 每一条Java指令,Java虚拟机规范中都有详细的定义特点:
一次编译,到处运行
自动内存管理
自动垃圾回收
JVM的位置运行在操作系统上,和硬件没有直接交互
JVM整体结构
HotSpot VM是目前市面上高性能虚拟机代表作之一
采用解释器与即时编译器并存的架构
Git常用命令
创建版本库12git clone <url> // 克隆远程仓库git init // 初始化本地仓库
修改和提交123456789git status // 查看状态git diff // 查看变更内容git add . // 跟踪所有改动过的文件git add <file> // 跟踪指定的文件git mv <old> <new> // 文件改名git rm <file> // 删除文件git rm --cached <file> // 停止跟踪文件,但不删除git commit -m "comments" // 提交所有更新过的文件git commit - ...
关于我
关于我工作九年的大龄码农一枚,偶尔打打游戏,偶尔抽风学习。