java成神之路
-
SSM:Mybatis常见面试题总结及答案
1、什么是Mybatis? 1、Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建…
-
SSM:SpringMVC工作原理详解
先来看一下什么是 MVC 模式 MVC 是一种设计模式. MVC 的原理图如下: SpringMVC 简单介绍 SpringMVC 框架是以请求为驱动,围绕 Servlet 设计,…
-
SSM:MyBatis中的$和#,用不好,准备走人!
这是一次代码优化过程中发现的问题,在功能优化后发现部分数据查不到出来了,问题就在于一条sql上的#和$ 下图为两条sql: 从图上可以看出 wwlr.LabelId in({sho…
-
springboot面试问题集锦
Q: 什么是spring boot? A:多年来,随着新功能的增加,spring变得越来越复杂。只需访问页面https://spring.io/projects,我们将看到所有在应…
-
面试必问——SpringBoot是如何实现自动配置的?
Spring Boot是Spring旗下众多的子项目之一,其理念是约定优于配置,它通过实现了自动配置(大多数用户平时习惯设置的配置作为默认配置)的功能来为用户快速构建出标准化的应用…
-
SpringBoot最核心的27个干货注解,你了解多少?
Spring Boot方式的项目开发已经逐步成为Java应用开发领域的主流框架,它不仅可以方便地创建生产级的Spring应用程序,还能轻松地通过一些注解配置与目前比较火热的微服务框…
-
网络:TCP、IP协议族(二)HTTP报文头解析
本篇博客我们就来详细的聊一下HTTP协议的常用头部字段,当然我们将其分为请求头和响应头进行阐述。下方是报文头每个字段的格式,首先是头部字段的名称,如Accept,冒号后方紧跟的是该…
-
网络:TCP、IP协议族(三)数字签名与HTTPS详解
前面几篇博客聊了HTTP的相关东西,今天就来聊一聊HTTPS的东西。因为HTTP协议本身存在着明文传输、不能很好的验证通信方的身份和无法验证报文的完整性等一些安全方面的确点,所以才…
-
网络:TCP、IP协议族(一)HTTP简介、请求方法与响应状态码
接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的。接下来的几篇博客都是关于TCP/IP协议族…
-
Java虚拟机:垃圾收集算法
垃圾收集算法 垃圾回收机制的意义 Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑…
-
Java虚拟机:JVM内存模型
JVM内存模型 内存模型 Java内存模型,往往是指Java程序在运行时内存的模型,而Java代码是运行在Java虚拟机之上的,由Java虚拟机通过解释执行(解释器)或编译执行(即…
-
Java并发编程:JMM和volatile关键字
Java内存模型 随着计算机的CPU的飞速发展,CPU的运算能力已经远远超出了从主内存(运行内存)中读取的数据的能力,为了解决这个问题,CPU厂商设计出了CPU内置高速缓存区。高速…
-
Java虚拟机:JVM类加载机制
JVM类加载机制 如下图所示,JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化,下面我们就分别来看一下这五个过程。 加载 加载是类加载过程中的一个阶段,这个阶段会在内存…
-
Java虚拟机:垃圾收集器和内存分配策略
垃圾收集器和内存分配策略 垃圾收集器 说垃圾收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。下图展示了7种作用于不同分代的收集器,其中用于回收新生代的收集器包括S…
-
Java虚拟机:JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解 现实企业级Java应用开发、维护中,有时候我们会碰到下面这些问题: OutOfMem…
-
Java虚拟机:JVM内存模型和volatile详解
JVM内存模型和volatile详解 Java内存模型 随着计算机的CPU的飞速发展,CPU的运算能力已经远远超出了从主内存(运行内存)中读取的数据的能力,为了解决这个问题,CPU…
-
Java虚拟机:怎么确定对象已经死了?
怎么确定对象已经死了? 怎么确定对象已经死了?怎么确定一个对象已经死了? 引用计数算法 给对象中添加一个引用计数器,每当有个地方引用它,计数器值就加1,引用失效,计数器减1,任何时…
-
Java并发编程:线程封闭和ThreadLocal详解
什么是线程封闭 当访问共享变量时,往往需要加锁来保证数据同步。一种避免使用同步的方式就是不共享数据。如果仅在单线程中访问数据,就不需要同步了。这种技术称为线程封闭。在Java语言中…
-
Java虚拟机:虚拟机类加载机制
虚拟机类加载机制 代码编译的结果从本地机器码转变成字节码,是存储格式发展的一小步,确是编程语言发展的一大步。 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换…
-
Java基础:JavaIO流学习总结
IO是指对数据流的输入和输出,也称为IO流,IO流主要分为两大类,字节流和字符流。字节流可以处理任何类型的数据,如图片,视频等,字符流只能处理字符类型的数据。 IO流的本质是数据传…