自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 项目启动时候spring是如何加载和实例化各类的

1.对于注解为默认的,也就是@score不写的,默认是单例的类,这些类在项目启动的时候会依次被加载并被实例化。默认调用的是无参数的构造器。2.而对于注解是prototype类型的,即@Scope("prototype"),在首次被用到的时候加载。原文:https://www.cnblogs.com/roy-blog/p/6495393.html...

2020-09-26 12:58:02 347

转载 JVM默认内存大小

堆(Heap)和非堆(Non-heap)内存  按照官方的说法:“Java虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在Java虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heapmemory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)

2020-09-26 12:56:44 3972

转载 jvm内存默认大小,及如何调整大小

jvm大小默认是64m,如果也要增大程序运行的内存,如果要调整JVM的大小,可以在run configuration中配置VM的参数 ,-Xmx100m表示配置其的大小为100M.以下是一些配置的说明。-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M-vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了-Xms128m JVM初始分配的堆内存-Xmx512m JVM最大允许分配的堆内存,按需分配.

2020-09-26 12:55:35 2513

转载 java程序运行时内存分配详解

这篇文章主要介绍了java程序运行时内存分配详解 ,需要的朋友可以参考下一、 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个或者多个线程,每一个Java进程对应唯一一个JVM实例,每一个JVM实例唯一对应一个堆,每一个线程有一个自己私有的栈。进程所创建的所有类的实例(也就是对象)或数组(指的是数组的本身,不是引用)都放在堆中,并由该进程所有的线程共享。Java中分配堆内存是自动初始化的,即为一个对象分配内存的时候,会初始化这个对象中变量。虽然Ja...

2020-09-26 12:49:40 356

原创 tomcat和jvm的关系,主要谈项目执行流程和内存关系

tomcat和jvm的关系,总结几句话:▲ 运行一个Java程序(一个main方法),就会产生一个jvm实例,(我猜)此jvm实例的内存大小为默认大小或者如果给jvm设置了大小就按照设置的大小。main方法执行过程中产生的对象、局部变量等就放在这个jvm实例的内存里。main方法执行完毕jvm实例消亡。▲ 普通的Java程序,加载一个class(到jvm内存中),是jvm的系统类加载器干的活。tomcat也是一个Java程序,也有main方法(在org.apache.catalina.startup

2020-09-26 12:42:29 1004

转载 Tomcat的并发能力

一、一些限制Windows 每个进程中的线程数不允许超过 2000 Linux 每个进程中的线程数不允许超过 1000 在 Java 中每开启一个线程需要耗用 1MB 的 JVM 内存空间用于作为线程栈之用。 (并发量上来后 可能需要修改JVM参数调优) 建议当某个应用拥有 250 个以上并发的时候,应考虑应用服务器的集群。 还需要考虑数据库读写的并发能力二、TomcatTomcat 默认配置的最大请求数是 150,也就是说同时支持 150 个并发,当然了, Tomcat的最大并发数是可以

2020-09-25 14:08:38 3302

转载 什么是事务?事务的四个特性以及事务的隔离级别

什么是事务  事务是指是程序中一系列严密的逻辑操作,而且所有操作必须全部成功完成,否则在每个操作中所作的所有更改都会被撤消。可以通俗理解为:就是把多件事情当做一件事情来处理,好比大家同在一条船上,要活一起活,要完一起完 。事物的四个特性(ACID)  ●原子性(Atomicity):操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态。eg:拿转账来说,假设用户A和用户B两者的钱加起来一共是2000..

2020-09-25 10:28:32 973 1

转载 java类什么时候加载?,加载原理机制是怎么样的?

java类什么时候加载?,加载原理机制是怎么样的?答:很多人都不是很清楚java的class类什么时候加载在运行内存中,其实类加载的时间是发生在一下几种情况:1.实例化对象时,就像spring管理的bean一样,在tomcat启动时就实例化了bean,那么这个对象bean的类就加载了2.通过类名调用静态变量的时候(类名.class除外)jvm加载java类的原理:JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化。加载加载是类加载过程中的一个阶段,这个阶..

2020-09-24 13:16:43 1020

转载 常见的六种设计模式以及应用场景

设计模式是对设计原则的具体化。用江湖话说就是武林秘籍,总结出来的一些固定套路,可以帮助有根基的程序员迅速打通任督二脉,从此做什么都特别快。常用的模式及其场景如下。1) 单例模式。单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。应用场景:如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。2) 工厂模式。工厂模式主要是为创建对象提

2020-09-24 09:54:08 2920

转载 Java-Eclipse删除多余空行有快捷键

在eclipse中删bai除某一行就用ctrl+D快捷键。如果想删除一个文件中的所有空行。可以用下面方法。1、打eclipse2、使用快捷键Ctrl+f3、在Find输入框中输入:^\s*\n4、Replace With输入框的值为空5、在【Options】选中的"Regular expressions" (正则表达式)6、点击【Replace All】按钮。...

2020-09-21 14:26:00 381

转载 java中的static代码块为什么只执行一次

原因在最后,这是其中的一个小例子。如:  SessionFactory负责保存和使用所有配置信息,消耗内存资源非常大  所以一个web项目要保证只创建一个SessionFactory  那么在使用hibernate创建一个工具类(HibernateUtils),用于获取Session对象时需要将其放在static代码块中,  又因下边的每个方法需要使用SessionFactory对象sf,所以将其单独拆出放在方法外。static代码块只执行一次原因:      static代

2020-09-21 12:33:45 3533

转载 JAVA中静态块、静态变量加载顺序详解

public class test { //1.第一步,准备加载类 public static void main(String[] args) { new test(); //4.第四步,new一个类,但在new之前要处理匿名代码块 } static int num = 4; //2.第二步,静态变量和静态代码块.

2020-09-21 12:30:13 219

转载 描述一下JVM加载class文件的原理机制

Java中的所有类,都需要由类加载器装载到JVM中才能运行。类加载器本身也是一个类,而它的工作就是把class文件从硬盘读取到内存中。在写程序的时候,我们几乎不需要关心类的加载,因为这些都是隐式装载的,除非我们有特殊的用法,像是反射,就需要显式的加载所需要的类。类装载方式,有两种 :1.隐式装载, 程序在运行过程中当碰到通过new 等方式生成对象时,隐式调用类装载器加载对应的类到jvm中,2.显式装载, 通过class.forname()等方法,显式加载需要的类Java类的加载是..

2020-09-20 17:30:23 579

转载 jvm内存模型和内存分配

1.什么是jvm?(1)jvm是一种用于计算设备的规范,它是一个虚构出来的机器,是通过在实际的计算机上仿真模拟各种功能实现的。(2)jvm包含一套字节码指令集,一组寄存器,一个栈,一个垃圾回收堆和一个存储方法域。(3)JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。2.jdk、jre、jvm是什么关系?(1)JRE(Java

2020-09-02 10:50:01 166

转载 浅谈CPU、内存,硬盘三者关系

随着SSD的发展,只要电脑一卡顿,人们会第一想的是换SSD就可以升级电脑性能,其实不尽然。电脑卡顿跟固态硬盘固然有关系,但是它跟CPU和内存条的关系也很多,接下来带大家了解下三者之间的关系。 CPU是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。它的功能主要是解释计算机指令以及处理计算机软件中的数据。计算机的性能在很大程度上由CPU的性能决定,而CPU的性能主要体现在其运行程序的速度上。影响运行速度的性能指标包括CPU的工作频率、Cache容量、指令系统和逻辑结构等参数。而内存是计.

2020-09-02 10:45:59 477

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除