Java类的加载过程:
1.初始化JVM(Java虚拟机);2.产生启动类的加载器;3.加载标准扩展类加载器(子类自动加载);4.加载系统类加载器(子类自动加载);5.加载class文件(父类加载)
类加载的五个阶段:
加载—》验证—》准备—》解析—》初始化
【JAVA虚拟机有且只有五种需要立即初始化】
类加载初始化阶段特点:1.final修饰的常量将会放置于常量池,调用不会触发初始化。2.反射调用未初始化的类将先初始化。3.调用子类时若父类未初始化将先初始化父类。4.主类先初始化(main方法所在的类)
Java类加载器特点:
1、由AppClass Loader(系统类加载器)开始加载指定的类
2、类加载器将加载任务交给其父,如果其父找不到,再由自己去加
3、Bootstrap Loader(启动类加载器)是最顶级的类加载器
Java类的热部署:
1、类的热加载:
2、配置Tomcat:
1)直接把项目web文件夹放在webapps里
2)在tomcat\conf\server.xml中的<host></host>内部添加<context/>标签
3)在%tomcat_home%\conf\Catalina\localhost中添加一个XML
热部署与热加载的区别
部署方式
热部署在服务器运行时重新部署项目
热加载在运行时重新加载class
实现原理
热部署直接重新加载整个应用
热加载在运行时重新加载class
使用场景
热部署更多的是在生产环境使用
热加载则更多的是在开发环境使用
类加载的五个阶段:
加载 静态加载,方法区
验证
准备 赋初始值
解析
初始化
Java类的热部署
Java的热部署与热加载区别
部署方式:
热部署在服务器运行时重新部署项目
热加载在运行时重新加载class
实现原理:
热部署直接重新加载整个应用
热加载在运行时重新加载Class
使用场景:
热部署更多是在生产环境使用
热加载则更多是在开发环境使用
热部署:
优点:
1.无论本地还是线上,都适用;
2.无需重启服务器;
——提高开发、调试效率
——提升发布、运维效率,降低运维成本
第三种方式:xml写法
第三种方式。
原理解析。
第二种方式
maven install 就是将springboot项目打包成jar包存在本地仓库。
java -jar xxx.jar就是启动项目。
Springboot的两种发布方式
SpringBoot热部署的实现方式
Java类的热部署的方式
热部署和热加载的区别
热部署和热加载的原理
热部署和热加载的区别
Java热部署和热加载的联系
reloadable = true tomcat 热部署
实现热部署的方法3,看起来最简单了
pom.xml添加代码实现热部署,重要,有用
参考评论内容:
使用idea工具时候需要设置自动编译
1. 打开settings界面:File->Settings
2. 选中Compiler选项:Build,Execution,Deployment->Compiler
3. 选中Make project automatically
springloaded
1在pom添加依赖
2下载springloaded jar包
spring-boot-devtools
1.pom.xml直接添加依赖
类加载的五个阶段:加载 验证 准备 解析 初始化
Java类的热部署
1.类的热加载
2.配置Tomcat
Java类的加载过程
Java热部署与热加载联系
1.不重启服务器编译/部署项目
2.基与Java的类加载器实现
热部署与热加载的区别
1.热部署是在服务器运行时重新部署项目
2.热加载是在运行时重新加载class(只加载class文件)
使用场景
1.热部署更多的是在生产环境使用
2.热加载更多的是在开发环境中使用
Java类的加载过程
热部署原理
两种方式:
1.springloaded
a.在pom添加依赖
b.下载springloaded jar包
2.spring-boot-devtools
在pom文件中添加:
<dependency>
<groupId>org.simpleframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
Tomcat热部署的几种方式:
1.直接把程序放到webapps文件夹中,可在控制台看加载效果
2.在server.xml中host标签中添加context标签,
<Context debug="0" docBase="项目位置" path="/虚拟访问路径" privilegedd="true" reloadable="true"/>
3.在conf\Catalina\localhost下添加xml文件;服务器会使用xml的名字作为访问路径相当于第二种context标签的path
总结:可以根据项目不同的需求采用这三种方式,替换文件后可通过后台窗口查看热部署效果