Wesley13 Wesley13
3年前
java反序列化——apache
看了好久的文章才开始分析调试java的cc链,这个链算是java反序列化漏洞里的基础了。分析调试的shiro也是直接使用了cc链。首先先了解一些java的反射机制。一、什么是反射反射是Java的特征之一,是一种间接操作目标对象的机制,核心是JVM在运行的时候才动态加载类,并且对于任意一个类,都能够知道这个类的所有属性和方法,调用方法/访问属性
Wesley13 Wesley13
3年前
java 学习 语言特色。
1.总体来说java像一个不开窍的规则制定者。包名,类型,太实在了。文件名和类名必须对应,一个文件只能有一个PUBLIC的类。定义了包名,必须按这个路径去放置目标文件。相比c的虚拟命名空间。可能java最初就是设计出来让人用记事本来写代码的?而且还怕人找不到类放在哪个目录,哪个文件下。一个文件只能一个public
爱丽丝13 爱丽丝13
4年前
快速了解 React Hooks 原理
为了保证的可读性,本文采用意译而非直译。我们大部分React类组件可以保存状态,而函数组件不能?并且类组件具有生命周期,而函数组件却不能?React早期版本,类组件可以通过继承PureComponent来优化一些不必要的渲染,相对于函数组件,React官网没有提供对应的方法来缓存函数组件以减少一些不必要的渲染,直接16.6出来的Rea
Wesley13 Wesley13
3年前
Java登录验证码,保存到redis
引入redis依赖<dependency<groupIdorg.springframework.boot</groupId<artifactIdspringbootstarterdataredis</artifactId</dependency验证码生成类pack
Wesley13 Wesley13
3年前
Java泛型的使用
泛型的定义:泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)。泛型的引入背景:集合容器类在设计阶段或声明阶段不能确定这个容器到底实际存储的是什么类型的对象
Wesley13 Wesley13
3年前
JAVA中的IO
FILE类常量importjava.io.;classhello{publicstaticvoidmain(Stringargs){System.out.println(File.separator);//输出"/"Syste
Stella981 Stella981
3年前
Noark入门之转化器
在之前,我们编写的模板类文件时,总有个子类继承模板类,来重解析父类的字符串配置奖励...当项目功能越做越多时,这种很恶心的解析一次又一次的复制很是讨厌,多人之间写法又不完全一致,导致后期维护很头大...来看一下Noark提供的转化器带来的新感受比如副本通关奖励配置格式如下道具编号:数量,道具编号:数量,道具编号:数量编码
Wesley13 Wesley13
3年前
23种架构模式
1、FACTORY?追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做
Stella981 Stella981
3年前
Play1.2.x源代码概读
说到阅读源码,阅读的方法很重要。如果逐个类逐个类的看,看到有关联的类,就跳进去看,这样效率非常低,根本看不出整个框架的逻辑思想,重要的是容易磨灭那股看代码的冲劲。看源码,起码该知道框架是从哪里启动,先从自己熟悉、感兴趣的模块下手,结合IDE一步一步debug下去,然后逐个模块攻破。首先,简单介绍一下普通web框架大致的工作流程:1.http请
Easter79 Easter79
3年前
Spring实战第四版笔记
一、Spring的功能底层一般都依赖于它的两个核心特性:依赖注入(DI)、面向切面编程(AOP)。  (1)依赖注入(DI)    背景:在一些有实际应用的类中都会有两个或者更多的类组成,这些类相互之间进行协作来完成特定的业务逻辑。按照传统的做法,每个对象负责管理与自己相互协作的对象(即它所依赖的对象,一般是使用new来创建对象)的引用,这