随笔分类 - java web
摘要:《深入理解 Java 虚拟机》学习笔记 内存区域 运行时数据区域 主要分为 6 部分: 1. 程序计数器 2. 虚拟机栈 3. 本地方法栈 4. Java 堆 5. 方法区 如图所示: 1. 程序计数器(线程私有) 1. 程序计数器是当前线程所执行字节码的行号指示器 2. 字节码解释器工作时就是通过
阅读全文
摘要:Guava 集合类 和 Guava Caches 1. 什么是 Guava Guava 是 google 推出的一个第三方 java 库,用来代替 jdk 的一些公共操作,给我印象特别深的就是 Collection 的扩展和本地缓存的扩展这两个方面了。所以今天也就主要来讲讲 guava 的 coll
阅读全文
摘要:Spring 事务 关于理论性的内容,我在之前的一篇文章中介绍过,这里不再过多阐述,这里给出之前文章的链接: "Spring 事务管理" 什么是事务 是一组逻辑操作,要么执行,要么不执行。 事务的特性 ACID (原子性、一致性、隔离性、持久性) 并发事务带来的问题 脏读 丢失修改 不可重复读 幻读
阅读全文
摘要:isEmpty 和 isBlank 区别 类提供了 String 的常用操作,最为常用的判空有如下两种 和 。 分析 我们通过源码来分析区别: java public static boolean isEmpty(String str) { return str == null || str.len
阅读全文
摘要:@RequestBody, @ResponseBody 注解理解 自己以前没怎么留意过,来实习后公司采用前后端分离的开发方式,前后端拿到的注释都是 json 格式的,这时候 @RequestBody, @ResponseBody 这两个注解就非常好用,下面详细介绍用法: @RequestBody 1
阅读全文
摘要:1. 导入依赖 这里以 20180813 的 json 版本为例 2. 构建 json 2.1 直接构建 直接构建即直接实例化一个 JSONObject 对象,而后调用其 put() 方法,将数据写入。put() 方法的第一个参数为 key 值,必须为 String 类型,第二个参数为 value,
阅读全文
摘要:lombok 注解 1. 什么是 lombok 注解 Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注解实现这一目的。 简单来说,使用 lombok 可以帮助我们减少 等方法的编写,虽然 IDEA也提供了自动
阅读全文
摘要:枚举 注意: 枚举是单例的,单例要保证私有化构造器。 1. 如何自定义枚举类 1. 提供类的属性,声明为 private final 2. 声明为 final 的属性,在构造器中初始化 3. 通过公共方法(get)方法来调用属性 4. 创建枚举类的对象:将类的对象声明 public static f
阅读全文
摘要:Java反射理解(五) 方法反射的基本操作 方法的反射 1. 如何获取某个方法 方法的名称和方法的参数列表才能唯一决定某个方法 2. 方法反射的操作 举例 具体操作请看下面举例: 总结步骤如下: 1. 获取对象的类类型: 2. 获取方法,名称和参数列表来决定(记住要 操作): 获取的是public的
阅读全文
摘要:Java反射的理解(六) 通过反射了解集合泛型的本质 上述写了那么多,我们可能会有个疑问,为什么要用反射,步骤比我们常规的加载类操作复杂多了,别急,这个问题我最后才解答,我们先来了解集合泛型的本质。 直接上代码: 在刚开始中,如果我们尝试 list.add(20) 肯定会报错的,因为指定的 list
阅读全文
摘要:Java反射理解(四) 获取成员变量构造函数信息 步骤 获取成员变量信息: 1. 获取类类型对象 2. 成员变量也是对象, 类中封装了关于成员变量的操作: 方法获取的是所有的public的成员变量的信息 获取的是该类自己声明的成员变量的信息 3. 得到成员变量的类型的类类型 4. 得到成员变量的名称
阅读全文
摘要:Java 反射理解(三) Java获取方法信息 基本的数据类型、void关键字,都存在类类型。 举例如下: Class类的基本API操作 要想获取方法信息,有以下几个步骤: 1. 获取该对象的类类型。 2. 获取类的名称 3. 获取方法对象: 方法获取的是所有的public的函数,包括父类继承而来的
阅读全文
摘要:Java 反射理解(一) Class 类的使用 概念 这里阐述几个基本概念: 1. 在面向对象的世界里,万事万物皆对象。(在 Java 语言中,静态的成员、普通数据类型除外) 2. 类也是对象,类是 的实例对象。 3. 类类型是什么? 类类型可以简单理解为类的类型。在万物皆对象的 Java 中,我们
阅读全文
摘要:leecode 刷题(32) 链表的中间节点 描述: 给定一个带有头结点 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 示例 2: 提示: 给定链表的结点数介于 1 和 100 之间。 思路: 做这道题有两种思路: 1. 先遍历一遍整个链表,按
阅读全文
摘要:SpringBoot 进阶 这里讲两个小方面: 表单验证 AOP 1. 表单验证 SpringBoot 中的表单验证功能步骤如下: 1. 在 controller 类中将用 和 设置参数的单个属性转换为对象: 2. 在对象类中添加注解,设置拦截属性 3. 在 controller 类中将设置表单验证
阅读全文
摘要:SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录。 1. 启动方式 1. IDEA 启动 2. 命令行启动: 3. 部署到服务器启动: 先进行打包, 移动到项目的 target 目录下,可以看到一个后缀名为 jar 的文件,便是刚刚我们打包的 jar 包, 使用命令行启动
阅读全文
摘要:Spring 事务管理 一、Java 事务导引 事务简介: 1. 什么是事务 事务是正确执行一系列的操作(或动作),使得数据库从一种状态转换成另一种状态,且保证操作全部成功,或者全部失败。 2. 事务原则是什么 事务必须服从 ISO/IEC 所指定的 ACID 原则。 ACID原则的具体内涵如下:
阅读全文
摘要:JDBC Template 其实有比 JDBC Template 更好的操作数据库的框架(如 Mybatis),但是 JDBC Template 是基础,有助于我们更好的了解 Spring 中JDBC 操作,所以还是讲解一下。 使用 Spring 组件 JDBC Template 简化持久化操作。
阅读全文
摘要:Spring 基于 AspectJ 的 AOP 开发 在 Spring 的 aop 代理方式中, AspectJ 才是主流。 1. AspectJ 简介 AspectJ 是一个基于 java 语言的 AOP 框架 Spring 2.0 后新增了对 AspectJ 切点表达式支持 @AspectJ 是
阅读全文
摘要:Spring AOP 代理 1. Spring AOP 增强类型 AOP 联盟为通知 Advice 定义了 。 Spring 按照通知 Advice 在目标类方法的连接点位置,可以分为 5 类 前置通知: 在目标方法执行前实施增强 后置通知: 在目标方法执行后实施增强 环绕通知: 在目标方法执行前后
阅读全文

浙公网安备 33010602011771号