- SpringBoot核心源码解读之启动类源码分析 SpringBoot核心源码解读之启动类源码分析
- 目录1 前言1.1 简介GadgetInspector是Black Hat 2018提出的一个Java反序列化利用链自动挖掘工具,核心技术的Java ASM,结合字节码的静态分析。根据输入JAR包和JDK已有类进行分析,最终得到利用链本文的核心是:深入分析数据流模块(PassthroughDataflow)的每一句ASM代码,进而把握最底层的原理1.2 整体流程整个流程第一步是根据JDK和输... 目录1 前言1.1 简介GadgetInspector是Black Hat 2018提出的一个Java反序列化利用链自动挖掘工具,核心技术的Java ASM,结合字节码的静态分析。根据输入JAR包和JDK已有类进行分析,最终得到利用链本文的核心是:深入分析数据流模块(PassthroughDataflow)的每一句ASM代码,进而把握最底层的原理1.2 整体流程整个流程第一步是根据JDK和输...
- 系列文章,持续更新,欢迎关注文章首发于奇安信攻防社区原文链接:https://forum.butian.net/share/649一、Dalvik1、Dalvik介绍Dalvik是google专门为Android操作系统设计的一个虚拟机,Dalvik VM是基于寄存器的,而JVM是基于栈的;Dalvik有专属的文件执行格式dex(dalvik executable),而JVM则执行的是jav... 系列文章,持续更新,欢迎关注文章首发于奇安信攻防社区原文链接:https://forum.butian.net/share/649一、Dalvik1、Dalvik介绍Dalvik是google专门为Android操作系统设计的一个虚拟机,Dalvik VM是基于寄存器的,而JVM是基于栈的;Dalvik有专属的文件执行格式dex(dalvik executable),而JVM则执行的是jav...
- 理论上就是用户下单后,减去商品的库存就完事了。但是,如果你的系统流量很大,并发度非常高,比如淘宝的双十一,有一款爆款商品参加了活动,库存只有1000件,有几十万上百万用户抢购,商品售完1000件为止,一件不能多,一件也不能少。你还会觉得简单吗?搞不好就会出现“超卖”的情况,后果就会很严重了。 理论上就是用户下单后,减去商品的库存就完事了。但是,如果你的系统流量很大,并发度非常高,比如淘宝的双十一,有一款爆款商品参加了活动,库存只有1000件,有几十万上百万用户抢购,商品售完1000件为止,一件不能多,一件也不能少。你还会觉得简单吗?搞不好就会出现“超卖”的情况,后果就会很严重了。
- 最近,一名小伙伴跟我说:他写的程序在测试环境一点问题没有,但是发到生产环境却会频繁出现内存溢出的情况,这个问题都困扰他一周多了。于是乎,周末我便开始帮他排查各种问题。 最近,一名小伙伴跟我说:他写的程序在测试环境一点问题没有,但是发到生产环境却会频繁出现内存溢出的情况,这个问题都困扰他一周多了。于是乎,周末我便开始帮他排查各种问题。
- 今天我们再上一篇高并发干货,一起来聊聊Java中的并发原子类。接下来,我们开始今天的正文吧。 今天我们再上一篇高并发干货,一起来聊聊Java中的并发原子类。接下来,我们开始今天的正文吧。
- 其实在Java中,String类被final修饰,主要是为了保证字符串的不可变性,进而保证了它的安全性。那么final到底是怎么保证字符串安全性的呢?接下来就让我们一起来看看吧。一. final的作用1. final关键词修饰的类不可以被其他类继承,但是该类本身可以继承其他类,通俗地说就是这个类可以有父类,但不能有子类。final class MyTestClass1 { // ..... 其实在Java中,String类被final修饰,主要是为了保证字符串的不可变性,进而保证了它的安全性。那么final到底是怎么保证字符串安全性的呢?接下来就让我们一起来看看吧。一. final的作用1. final关键词修饰的类不可以被其他类继承,但是该类本身可以继承其他类,通俗地说就是这个类可以有父类,但不能有子类。final class MyTestClass1 { // .....
- 在深入了解Flink实时数据处理程序的开发之前,先通过一个简单示例来了解使用Flink的DataStream API构建有状态流应用程序的过程。 在深入了解Flink实时数据处理程序的开发之前,先通过一个简单示例来了解使用Flink的DataStream API构建有状态流应用程序的过程。
- 环境搭建:代码审计:1.第三方组件漏洞审计2.1 sql注入漏洞本项目使用了Mybatis,来定义SQL。我们主要查看Myabatis中 xxxMapper.xml 文件中是否存在使用 $ 拼接SQL语句的情况。使用 $ 是直接拼接SQL语句的,未进行转义。直接搜索${ 符号,可以发现在src/main/resources/mybatis-mapper/mysql/IgReportMappe... 环境搭建:代码审计:1.第三方组件漏洞审计2.1 sql注入漏洞本项目使用了Mybatis,来定义SQL。我们主要查看Myabatis中 xxxMapper.xml 文件中是否存在使用 $ 拼接SQL语句的情况。使用 $ 是直接拼接SQL语句的,未进行转义。直接搜索${ 符号,可以发现在src/main/resources/mybatis-mapper/mysql/IgReportMappe...
- 前言 在修复控制角标正确变化过程中,发觉前端代码组织层次出现了严重问题。传递和共享数据时自己使用的是rootScope,为此造成了全局变量空间的污染。根据《AngularJs深度剖析与最佳实践》,如果两个控制器的协作存在大量的数据共享和交互可以利用Factory等服务的“单例”特性为它们注入一个共享对象来传递数据。而自己在使用rootScope时,出现了变量不一致的情况。如下图所示... 前言 在修复控制角标正确变化过程中,发觉前端代码组织层次出现了严重问题。传递和共享数据时自己使用的是rootScope,为此造成了全局变量空间的污染。根据《AngularJs深度剖析与最佳实践》,如果两个控制器的协作存在大量的数据共享和交互可以利用Factory等服务的“单例”特性为它们注入一个共享对象来传递数据。而自己在使用rootScope时,出现了变量不一致的情况。如下图所示...
- 前言何为队列?队列:跟数组一样,队列中的数据也是呈线性排列的,它是一种先进先出(FIFO: First in First Out)的线性结构,队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表.即在队列的尾部入队,在队列的头部出队。在队列中添加和删除数据的操作分别是在两端进行的。顾名思义,他就和我们现实生活中的‘队列’是一样的,你可以把它想象操场上排成一列的队伍,在队列中,操作总... 前言何为队列?队列:跟数组一样,队列中的数据也是呈线性排列的,它是一种先进先出(FIFO: First in First Out)的线性结构,队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表.即在队列的尾部入队,在队列的头部出队。在队列中添加和删除数据的操作分别是在两端进行的。顾名思义,他就和我们现实生活中的‘队列’是一样的,你可以把它想象操场上排成一列的队伍,在队列中,操作总...
- 听说老表还不会Java,今天手把手带你入门HelloWorld。进来看看,你真的会写HelloWorld吗? 听说老表还不会Java,今天手把手带你入门HelloWorld。进来看看,你真的会写HelloWorld吗?
- 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 零基础学MySQL 解决之道 文件、数据库为了解决上述问题,使用更加利于管理数据的东东-数据库,它能更有效的管理数据。举一个生活化的案例说明:如果说图书馆是保存书籍的,那么数据库就是保存数据的。 MySQ... 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 零基础学MySQL 解决之道 文件、数据库为了解决上述问题,使用更加利于管理数据的东东-数据库,它能更有效的管理数据。举一个生活化的案例说明:如果说图书馆是保存书籍的,那么数据库就是保存数据的。 MySQ...
- 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 反射(reflection) 一个需求引出反射根据配置文件 re.properties 指定信息,创建Cat对象并调用方法hiclassfullpath = com.hspedu.Catmethod = ... 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 反射(reflection) 一个需求引出反射根据配置文件 re.properties 指定信息,创建Cat对象并调用方法hiclassfullpath = com.hspedu.Catmethod = ...
- 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 项目涉及项目框架设计java面向对象编程网络编程多线程IO流Mysql/使用集合充当内存数据库 项目开发流程 需求分析用户登录拉取在线用户列表无异常退出(客户端、服务端)私聊群聊发文件服务器推送新闻 功能... 文章和代码已经归档至【Github仓库:https://github.com/timerring/java-tutorial 】或者公众号【AIShareLab】回复 java 也可获取。 项目涉及项目框架设计java面向对象编程网络编程多线程IO流Mysql/使用集合充当内存数据库 项目开发流程 需求分析用户登录拉取在线用户列表无异常退出(客户端、服务端)私聊群聊发文件服务器推送新闻 功能...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中 -
一个AI团队帮你写代码:华为云码道Agent Space实战2026/06/25 周四 19:00-21:00
张翰文-华为云码道工程师/郭英旭-青软创新科技集团股份有限公司 软件架构师
本场直播聚焦华为云码道Agent Space两大模式:研发办公、代码开发,亲身体验从需求到代码的AI自动化能力。实操演示基于华为 CodeArts CLI,依托 OpenSpec 规格体系从零搭建业务项目。
回顾中
热门标签