自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JVM堆内存模型及垃圾回收机制相关简析

JVM堆内存模型及垃圾回收机制相关简析一、简介​ 垃圾回收机制是Java中最重要的保障,而谈到垃圾回收,可以简单的概括为两个问题:​ 一、在哪里回收?​ 二、怎么回收?​ 而对于上面两个问题结合下面我要讲的,这样回答:​ 一、主要在堆内存模型中回收​ 二、先判断,后回收​ 这样可以总结为一句话,在内存模型中先进行判断流程,在进行回收流程,下面在详细解释。二、堆内存模型​ Java1.8之前堆内存逻辑上分为3部分,新生代、老年代、永久区。​ 新生代又被分

2020-12-18 19:38:55 141 1

原创 JVM之类加载相关简析

JVM之类加载相关简析一、简介​ 关于JVM在类加载这个部分涉及到的知识点,可以分为3个部分,即:​ 类加载的流程、类加载器、类加载的机制二、类加载流程​ 类加载的流程,即当程序使用某个类时,所需要的步骤,如下:​ 加载:加载指把要加载类的class文件读入内存,并创建Class对象​ 连接:连接是把类的二进制数据合并到jre中,分3个阶段​ 验证:检测被加载的类是否有正确的结构​ 准备:负责为类的静态变量分配内存,设置默认值​ 解析:将类的二进制数据中

2020-12-18 16:40:40 125 2

原创 JVM虚拟机内存结构简析

JVM虚拟机内存结构简析一、简介​ jvm(Java Virtual Machine),即我们的Java虚拟机,其内存结构可以分为5个部分,即 堆、虚拟机栈、本地方法栈、方法区、本地计数器。二、堆​ 堆区主要存放对象实例及数组,我们所new出来的对象都存在这个区域。​ 堆区是所有线程共享的,在虚拟机启动时创建。​ 堆区是GC(垃圾回收)最频繁也是最主要的区域。三、虚拟机栈​ 虚拟机栈即我们常听说的栈,用于存储局部变量表、动态链接、操作数和方法出口等信息。​ 虚拟机栈是线程私有的

2020-12-18 15:49:33 253 3

原创 单例模式的的5种写法

单例模式的的5种写法一、饿汉式public class Singleton{ private static Singleton instance=new Singleton; private Singleton(){} public static Singleton getInstance(){ return instance; }}​ 饿汉式,顾名思义,饥饿的人,迫不及待的要获取食物,即一开始类加载时就实例化了对象。二、懒汉式public clas

2020-12-18 15:07:40 99

原创 Spring通过容器创建对象的三种方式

Spring通过容器创建对象的三种方式一、构造器实例化构造器实例化是指 Spring 容器通过 Bean 对应的类中默认的构造函数实例化 Bean。下面通过案例演示如何使用构造器实例化 Bean。1. 创建项目并导入 JAR 包在 MyEclipse 中创建一个名称为 springDemo02 的 Web 项目,然后将 Spring 支持和依赖的 JAR 包复制到项目的 lib 目录中,并发布到类路径下。2. 创建实体类在项目的 src 目录下创建一个名为 com.mengma.instance

2020-12-17 19:16:38 689

原创 MyBatis工作原理8个步骤

工作原理1)读取mybatis配置文件,mybatis-config.xml(名字可任意起)为全局配置文件,配置了运行环境,框架参数等各种信息。2)加载映射文件,映射文件即sql文件,mybatis-config.xml中可以加载多个映射文件,原则上一个映射文件对应数据库中的一张表3)构造会话工厂,通过配置文件构建会话工厂SqlSessionFactoryString resource = "mybatis.xml";InputStream inputStream = Resources.

2020-12-17 19:11:16 906

原创 Mybatis核心组件简介

核心组件一、核心组件和作用1、SqlSessionFactoryBuilder(构造器)​ 它会根据配置或者代码来生成 SqlSessionFactory,采用的是分步构建的 Builder 模式。2、SqlSessionFactory(工厂接口)​ 依靠它来生成 SqlSession,使用的是工厂模式。3、SqlSession(会话)​ 一个既可以发送 SQL 执行返回结果,也可以获取 Mapper 的接口。在现有的技术中,一般我们会让其在业务逻辑代码中“消失”,而使用的是 MyBat

2020-12-17 19:09:27 288

原创 在MySql数据库中,用TIMESTAMP类型字段记录更新时间

在MySql数据库中,用TIMESTAMP类型字段记录更新时间​ 在设计数据库时,用到timestamp类型时,发现左下角有个根据当前时间戳更新的单选框,默认选中,一开始没有注意,但当同一张表中用到2个以上timestamp类型时,发现提示报错,然后去网上找博客看了下,发现基本都是嫖的同一篇博客,而且说得不够清晰,所以自己测试了一下,分享给大家。​ 首先,这个单选框的作用就是,选中以后,只要数据库中的这条数据任意字段发生修改,被选中单选框的timestamp类型字段会自动更新为当前时间。​

2020-12-09 16:00:08 431

原创 Springboot使用pagehelper实现分页

springboot整合pagehelper实现分页一、导入依赖<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.1.2</version> </dependency>二、调用分页方法public PageInfo findPage(@RequestP

2020-11-24 11:22:17 725

原创 事务

事务一、什么是事务​ 数据库的**事务(Transaction)**是一种机制、一个操作序列,包含了一组数据库操作命令。​ 事务把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库命令要么都执行,要么都不执行,因此事务是一个不可分割的工作逻辑单元。​ 在数据库系统上执行并发操作时,事务是作为最小的控制单元来使用的,特别适用于多用户同时操作的数据库系统。例如,航空公司的订票系统、银行、保险公司以及证券交易系统等二、事务的四个特性​ 事务具有 4 个特性,即原子性(Atomi

2020-11-23 09:31:26 240

原创 注解

注解分三种,内建注解、元注解、自定义注解1、内建注解:@Override用来标注方法,表示该方法是重写的方法。@Deprecated用来表示该元素已过时。@SuppressWarnings用来抑制被注解元素及其子元素的编译器警告信息。该注解有参数,各个参数表示如下:deprecation:使用了过时的程序元素。unchecked:执行了未检查的转换。unused:有程序元素未被使用。fallthrough:switch程序块直接通往下一种情况而没有break。path:在类路径、

2020-08-29 09:31:14 145

原创 多线程

多线程的定义:​ 一个程序运行即一个进程,一个进程可以有多个线程,多线程并非多个线程并行在CPU中,而是多个线程分别占据CPU不同的时间段,交替执行,顺序与优先级有关。线程类:​ Thread类得到主线程对象:​ Thread t=Thread.currentThread();创建线程类方式:​ ①继承Thread类、重写run()方法(线程的执行体,执行的内容)​ 优点:编写简单,便于直接操作,适用于单继承​ ②实现Runnable接口、实现run()方法、【作为Thread

2020-08-13 19:36:11 143

原创 Java IO和反射机制

Java I/O和反射机制一、操作文件或目录属性1、FileFile类构造方法方法说明File(String pathname)用指定的文件路径构造文件File(String dir,String subpath)在指定的目录下创建指定文件名的文件File(File parent,String subpath)根据一个文件对象和一个字文件构造文件对象File类常用方法方法说明file.exists()判断文件是否存在

2020-07-16 18:51:06 365

空空如也

空空如也

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

TA关注的人

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