Java实现AOP的两种方式
知道Spring的都知道Spring的切面编程AOP(Aspect Oriented Programming),这里我们不讲Spring的切面,后面有机会我们再来解剖Spring的切面编程,我们想讲解一下普通的Java代码中怎么实现AOP,有两种方式实现AOP切面,一种是原生SDK实现,一种是基于三方包cglib。 先介绍一下JDK原生的,JDK原生的是基于接口编程: 先定义一个接口: publi…
知道Spring的都知道Spring的切面编程AOP(Aspect Oriented Programming),这里我们不讲Spring的切面,后面有机会我们再来解剖Spring的切面编程,我们想讲解一下普通的Java代码中怎么实现AOP,有两种方式实现AOP切面,一种是原生SDK实现,一种是基于三方包cglib。 先介绍一下JDK原生的,JDK原生的是基于接口编程: 先定义一个接口: publi…
Java小白 如有错误之处恳请大佬即时指正~ 昨天遇到这么一道练习题: /* 定义一个大集合存入20个随机数字 筛选其中的偶数元素 存入小集合 使用自定义方法筛选偶数 */ 题目不难 但是写的时候遇到了Object—>int 转化的小小问题 不知道 有没有同学由有同样的经历 下面是正确无误的程序 public static void main(String[] args) { //1 定一个…
Maven简介 Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。 优点: 1.不需要手工找jar包,去下载。 2.是一个模块化的项目构建工具,方便维护与发布。 Maven安装与配置 1.首先要在官网下载maven,下载地址:https://maven.apache.org/download.cgi 下载下来的是一个压缩包,自己选择解压到一个目录下 2.配置环境变量 我这是…
Java的serialization提供了一种持久化对象实例的机制。当持久化对象时,可能有一个特殊的对象数据成员,我们不想用serialization机制来保存它。为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transient。transient是Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量…
目录 1 类加载器1.1 类加载1.2 类加载器 2 反射2.1 反射概述2.2 反射获取Class类的对象2.3 反射获取构造方法并使用2.4 反射获取成员变量并使用2.5 反射获取成员方法并使用2.6 案例2.6.1**案例1**:通过反射往`ArrayList`集合中,添加**字符串**数据2.6.2 **案例2**:通过配置文件运行类中的方法 3 模块化3.1 模块化概述3.2 模块的基本…
在Windows上安装JDK以及配置环境和IDEA安装,本篇是超详细的教程,细化每个步骤过程,保姆级的教程! 目录 一、下载JDK安装包 二、安装 三、配置环境变量 四、查看配置是否生效 显示以上信息表示安装配置完成 五 、安装IDEA ————————————————靓丽的分割线———————————————————— 一、下载JDK安装包 到Oracle官网下载适合的JDK安装包,选择Wi…
导入maven依赖 <dependency> <groupId>org.influxdb</groupId> <artifactId>influxdb-java</artifactId> <version>2.10</version> </dependency> influxdb工具类 packag…
题目: 思路:用一个map存储成对的括号,用一个栈结构存储String中的左括号。当开始遇到右括号时,就要消耗栈顶的一个左括号,然后根据这个左括号去map查对应的右括号,如果查到的右括号与当前遇到的右括号类型不一致,则直接false 但是当一开始就是右括号时,stack.pop()会报错,所以加多一个垫底。 class Solution { public boolean isValid(Strin…