随笔分类 - Java
摘要:java引用类型 强引用 :当内存不足的时候,都不会进行空间回收,最终JVM抛出OutOfMemoryError 软引用 :当内存不足的时候,进行对象的回收处理,往往用于高速缓存中 弱引用 :不管内存是否紧张,只要GC运行都会回收 幽灵引用 :和没引用一样。 强引用 JVM默认支持模式 在引用期间内
阅读全文
摘要:G1收集器(Garbage First) 从JDK1.7 u4版本之后正式引入到Java中的垃圾收集器 此类垃圾收集器主要应用在多CPU以及大内存的服务器环境下 主要特点是极大的减少垃圾收集的停顿时间,以提升服务器的操作性能 引入此收集器的目的是为了在将来的某一时间内可以替换掉CMS收集器 G1区域
阅读全文
摘要:GC策略 新生代GC策略: 串行GC:Serial Copying 并行回收GC:Parallel Scavenge 并行GC:ParNew 老年代GC策略: 串行GC:Serial MSC 并行GC:Parallel MSC 并发GC:CMC 新生代GC策略 新生代 串行GC(Serial Cop
阅读全文
摘要:JVM堆内存划分 在JDK1.8之后,将最初的永久带内存空间取消了,该图为JDK1.8之前的内存空间组成 取消永久代目的是为了将HotSpot于JRockit两个虚拟机标准联合为一个 在整个JVM堆内存之中实际上将内存分为了三部分: 新生带(年轻代):新对象和没达到一定年龄的对象都在年轻代 老年代:
阅读全文
摘要:java中最大的特点在于其具备良好的垃圾收集特性 GC是整个java之中最重要的安全保证 整个JVM中的GC的处理机制:对不需要的对象进行标记,而后进行清除 JVM堆内存划分 在JDK1.8之后,将最初的永久带内存空间取消了,该图为JDK1.8之前的内存空间组成 取消永久代目的是为了将HotSpot
阅读全文
摘要:java的引用类型是最为重要的数据处理模型 整个引用数据类型在数据处理之中会牵扯到:堆内存、栈内存、方法区。 整个引用操作流程 新定义的对象名称保存在本地变量表中 而后在这块区域里面需要确定要与之对应的栈内存空间 通过变量表中的栈地址可以找到堆内存 利用堆内存的对象进行本地方法的调用(方法区) 例如
阅读全文
摘要:java程序执行流程 所有的java程序代码必须保存在 .java的文件之中(源代码) 然后使用javac.exe命令将其编译为 .class文件 最后利用java.exe命令在JVM进程之中解释此程序 当JVM将所需要的 .class文件加载到JVM进程之中需要一个类加载器(ClassLoader
阅读全文
摘要:Maven的生命周期就是对所有的构建过程进行抽象和统一。 包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等构建步骤。 Maven的生命周期实际任务有插件完成,类似于设计模式中的模板方法。 Maven的三种生命周期 clean:清理项目 pre clean:执行清理前需要完
阅读全文
摘要:在实际的开发项目中,基本有三种环境: 自己的开发环境 dev 内部的测试环境 test 业务环境 product 一般情况下都会准备出三套配置文件 而后在将项目打包为 .war文件之后希望可以根据不同的环境选择不同的配置属性( .properties)文件 Maven支持这样的动态选择的打包操作 1
阅读全文
摘要:maven的pom.xml配置文件并不单单只是一个配置依赖程序包的关系,他可以配置更多的属性,包括插件项。 定义环境属性 在pom.xml文件里面定义一些基本的变量信息 可以将项目名称、版本编号、一些其他的相关属性都作为变量进行整体的声明 在整个配置就可以利用这些变量的引用实现内容的变更 插件配置
阅读全文
摘要:1、下载Maven开发包 maven下载地址:https://maven.apache.org maven开发包: Linux:apache maven 3.5.4 bin.tar.gz Windows:apache maven 3.5.0 bin.zip Maven本身需要JDK的配置支持,所以要
阅读全文
摘要:maven是什么? 它属于一种项目的管理工具,主要是进行开发包管理 现在的软件开发需要引入大量的第三方开发工具包 对于这些开发包的引用,最初的做法:下载 .jar文件,而后拷贝到项目的WEB INF/lib目录下 但是现在的开发包类型很多,版本更新迭代快 为了解决这样的问题,Apache提供的一个开
阅读全文

浙公网安备 33010602011771号