- 博客(168)
- 资源 (4)
- 收藏
- 关注
原创 JVM虚拟机面试题(二)
11.JVM内存分哪几个区,每个区的作用是什么?java虚拟机主要分为以下一个区:方法区:1. 有时候也成为永久代,在该区内很少发生垃圾回收,但是并不代表不发生GC,在这里进行的GC主要是对方法区里的常量池和对类型的卸载2. 方法区主要用来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译后的代码等数据。3. 该区域是被线程共享的。4. 方法区里有一个运行时常量池,用于存放...
2019-12-29 17:01:22
282
原创 JVM虚拟机面试题(一)
1 简述JDK,JRE,JVM之间的关系?一、JDK(Java Development Kit)JDK(Java Development Kit),即Java开发工具包,是一个编写Java应用程序的开发环境。JDK是整个Java的核心,包括了JRE(Java运行环境)与一些Java开发工具(例如:jconsole、javac、java、javadoc、native2ascii、ja...
2019-12-29 16:08:19
318
转载 IntelliJ IDEA使用技巧(三)——Debug 篇
如上图所示:从“Server”开始,往后图标依次为:Show Execution Point :显示执行端点(Alt + F10) Step Over :跳到下一步 (F8) Step Into :进入代码或者说进入到方法内部(F7) Force Step Into :强制进入代码或者说进入到方法内部(Alt + Shift + F7) Step Out :跳到下一个断点或者跳出方...
2019-04-16 20:30:51
381
转载 IntelliJ IDEA使用技巧(二)——添加jar包
应用IntelliJ IDEA编程,知道如何添加 jar 是最基本的技能。在这里,作者将带着大家一起过一遍添加 jar 包的流程:首先,通过菜单栏中的“File”进入到“Project Structure”,然后,选择左侧的“Modules”,再选择右侧对应的“Dependencies”,接下来,点击最右侧“绿色的加号”,选择“1 JARs or directori...
2019-04-16 20:29:45
296
转载 Linux常用命令
基础命令目录和文件命令cd /home 进入 /home目录cd .. 返回上一级目录cd ../.. 返回上两级目录cd 进入个人主目录cd ~user1 进入个人的主目录cd - 返回上次所在的目录pwd 显示工作路径ls ...
2019-04-14 15:27:36
318
转载 一个 NIO 框架的启动
一个 NIO 服务端启动需要哪些要素一个典型的 NIO 服务端应该有哪些东西来支撑他的服务呢?ServerSocketChannel首先要有一个 ServerSocketChannel,就像流操作都要基于 Stream 对象一样, NIO 中的所有 I/O 操作都基于 Channel 对象。一个 Channel 代表着和某一实体的连接,这个实体可以是硬件设备、文件或者是网络套接字,...
2019-04-14 15:22:55
357
转载 Java 中的synchronized
Java语言为了解决并发编程中存在的原子性、可见性和有序性问题,提供了一系列和并发处理相关的关键字,比如synchronized、volatile、final、concurren包等。在《深入理解Java虚拟机》中,有这样一段话:synchronized关键字在需要原子性、可见性和有序性这三种特性的时候都可以作为其中一种解决方案,看起来是“万能”的。的确,大部分并发控制操作都能使用syn...
2019-04-14 15:18:36
295
转载 经典面试题|讲一讲JVM的组成
JVM(Java 虚拟机)算是面试必问的问题的了,而但凡问 JVM 一定会问的第一个问题就是:讲一讲 JVM 的组成?那本文就注重讲一下 JVM 的组成。首先来说 JVM 的组成分为,整体组成部分和运行时数据区组成部分,一般开发者关注的和面试官问的都是后者,但本文会详细讲解以上两个组成部分。一、JVM 整体组成JVM 整体组成可分为以下四个部分: 类加载器(ClassLoader...
2019-04-14 15:14:04
248
转载 Spring IOC中三种依赖注入方式
spring的核心思想是IOC和AOP,IOC-控制反转,是一个重要的面向对象编程的法则来消减计算机程序的耦合问题,控制反转一般分为两种类型,依赖注入和依赖查找,依赖什么?为什么需要依赖?注入什么?控制什么?依赖注入和控制反转是一样的概念吗?接触新的知识,小编的脑袋中全是大大的问号,不过没有关系,今天这篇博文,小编主要来简单的介绍一下在spring IOC中依赖注入的方法。依赖注入和控制反转,目的...
2018-05-16 16:22:06
718
转载 Spring IOC的理解
学习过Spring框架的人一定都会听过Spring的IoC(控制反转) 、DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC 、DI这两个概念是模糊不清的,是很难理解的,今天和大家分享网上的一些技术大牛们对Spring框架的IOC的理解以及谈谈我对Spring Ioc的理解。一、分享Iteye的开涛对Ioc的精彩讲解 首先要分享的是Iteye的开涛这位技术牛人对Spring框...
2018-05-16 16:20:04
225
转载 Spring的JDK和CGLIB两种代理的区别
一、原理区别:java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。1、如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP 2、如果目标对象实现了接口,可以强制使用CGLIB实现AOP 3、如果目标对象没有实现了接...
2018-05-16 11:25:07
606
转载 Spring AOP 代理原理及实践
由浅入深手把手带你搞定Spring AOP。为什么会有面向切面编程(AOP)?我们知道Java是一个面向对象(OOP)的语言,但它有一些弊端,比如当我们需要为多个不具有继承关系的对象引入一个公共行为,例如日志,权限验证,事务等功能时,只能在在每个对象里引用公共行为,这样做不便于维护,而且有大量重复代码。AOP的出现弥补了OOP的这点不足。为了阐述清楚Spring AOP,我们从将以下方面进行讨论:...
2018-05-16 10:25:07
355
转载 Java中String详解
一、String 使用 private final char value[]来实现字符串存储所以String对象创建之后就不能再修改此对象中存储的字符串内容,所以说String本质是字符数组char[],且其类型是不可变的!相对应String,StringBuffer与String功能大致相同,但实现方法不同,StringBuffer是可变的,而且是线程安全的。二、Java中String的创建方法...
2018-05-15 21:21:16
1006
转载 Java 8系列之重新认识HashMap
摘要HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。简介Java为数据结构中的映射定义了一个接口java.util.Map,此接口...
2018-05-14 21:27:15
241
转载 Javascript垃圾回收浅析
接上篇《JS特性性能缺陷及JIT的解决方案》,这里总结下的Javascript垃圾回收机制。一. 枚举Javascript引擎分配内存的场景:1. Objectnew Object();new MyConstructor();{ a: 4, b: 5 }Object.create();2. 数组new Array();[ 1, 2, 3, 4 ];3. 字符串new String(“hel...
2018-05-09 16:13:12
242
转载 JS特性性能缺陷及JIT的解决方案
拜读了David的《Know Your Engines: How to Make Your JavaScript Fast》,David是Mozilla的JS引擎工程师,文章主要介绍了JIT与GC原理,以及如何根据某些基本原理,优化js代码的执行效率,虽然是老文了,但对我来说仍受益匪浅。这里,我根据上文整理了本文,同时,大家也可以从侧面了解下JIT。 近5年来,在主流浏览器上,Jav...
2018-05-09 16:02:42
1393
1
转载 浅谈HTTP中Get与Post的区别
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1.根据H...
2018-05-09 15:39:30
189
原创 【Java并发编程】之十六:深入Java内存模型——happen-before规则及其对DCL的分析(含代码)
深入Java内存模型——happen-before规则及其对DCL的分析
2015-05-17 10:45:19
847
原创 【Java并发编程】之十五:并发编程中实现内存可见的两种方法比较:加锁和volatile变量
并发编程中实现内存可见的两种方法比较:加锁和volatile变量
2015-05-17 10:08:19
945
原创 数据库调优教程(十三) MySQL数据库其他优化方法
六、 MySQL数据库其他优化方法最后一章,谈谈前面没有涉及的一些优化方法。1. My.ini配置文件这里只介绍两个最重要的,其他的不过多介绍。1) 配置 最大连接数默认为100,建议设为10002) 配置 缓存在my.ini的[mysqld]节点开启查询缓存,配置如下
2015-04-12 10:37:21
686
原创 【Java并发编程】之十:使用wait/notify/notifyAll实现线程间通信的几点重要说明
使用wait/notify/notifyAll实现线程间通信的几点重要说明
2015-04-10 22:30:05
825
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人