摘要:
Collection概览 java容器有两类,第一类是Collection,存储的是对象的集合;第二类是Map,存储的是键值对(两个对象以及它们之间的对应关系)的集合 Collection接口下面有三个子接口:Set、List、Queue Set:存储的元素无序、不允许重复 1、TreeSet:用红 阅读全文
摘要:
类的生命周期 加载-》验证-》准备-》解析-》初始化-》使用-》卸载 类加载过程 类加载包括以上的前五个过程:加载,验证,准备,解析,初始化 加载 1、主要完成三个工作 通过类的完全限定名称来定位定义该类的二进制字节流 将二进制字节流中的静态数据结构转化成方法区中的动态数据结构 在堆中生成一个代表该 阅读全文
摘要:
内存分配策略 1、对象优先分配在新生代Eden区 多数情况下,对象分配在新生代的Eden,若Eden区域内存不够,则引发一次Minor GC 2、大对象直接进入老年代 大对象直接分配在老年代,避免新生代里出现从Eden到Survivor频繁的内存复制 可用-XX:PretenureSizeThres 阅读全文
摘要:
什么时候回收对象 引用计数法 1、原理:为对象添加一个引用计数器,当对象增加一个引用时计数器加 1,引用失效时计数器减 1。引用计数为 0 的对象可被回收。 2、缺点:无法解决循环引用问题 可达性分析 1、原理:以 GC Roots 为起始点进行搜索,可达的对象都是存活的,不可达的对象可被回收。 2 阅读全文
摘要:
虚拟机栈 1、虚拟机栈维护一个线程中所有方法的栈帧,每个栈帧中保存着这个方法中用到的局部变量表,操作数栈,常量引用 2、可以用-Xss来设置每个线程中虚拟机栈的大小,在jdk1.4之前默认虚拟机栈大小是256K,在jdk1.5+默认虚拟机栈大小是1M 3、该区域可能抛出的异常 当线程请求的栈深度超过 阅读全文
摘要:
! done mybatis 详解(五) 动态SQL 目录1、动态SQL:if 语句2、动态SQL:if+where 语句3、动态SQL:if+set 语句4、动态SQL:choose(when,otherwise) 语句5、动态SQL:trim 语句6、动态SQL: SQL 片段7、动 阅读全文
摘要:
mybatis入门系列三之类型转换器 类型转换器介绍 mybatis作为一个ORM框架,要求java中的对象与数据库中的表记录应该对应 因此java类名 数据库表名,java类属性名 数据库表字段名,java类属性类型 数据库字段类型 前面两个都容易设置,但是第三点要求经常会出现jav 阅读全文
摘要:
mybatis入门系列二之详解输入与输出参数 基础知识 mybatis规定mapp.xml中每一个SQL语句形式上只能有一个@parameterType和一个@resultType 1、 返回值是一个对象的集合,@resultType中只能写该对象的类型,而不是写list 阅读全文
摘要:
Mybatis基础系列一 创建第一个mybatis程序 需要配置项 1、 在conf.xml的需要配置配置两个标签数据库连接和mapper,xml文件加载信息 2、 编写mapper.xml文件 3、 编写与数据库中对应的类 4、 编写测试类(可选) mybatis程序升级版 与第一种方式的不同之处 阅读全文
摘要:
SpringBoot基础知识概览 特性 核心理念:约定优于配置 特点: 1、 开箱即用,根据项目依赖自动配置 2、 功能强大的服务体系,如嵌入式服务、安全 3、 绝无代码生成,不用写.xml配置,用注解和java配置来完成 4、 完美融合第三方技术 SpringBoot注解 核心注解及其组成 一、 阅读全文