- 使用ProGuard混淆JavaWeb项目代码在开发JavaWeb应用时,为了保护源代码不被轻易反编译和阅读,通常会采用代码混淆技术。ProGuard是一个广泛使用的免费工具,可以用来优化、缩小和混淆Java字节码。本文将详细介绍如何使用ProGuard对JavaWeb项目进行代码混淆。1. ProGuard简介ProGuard是一个Java类文件的过滤器,它可以删除无用的类、字段、方法和属... 使用ProGuard混淆JavaWeb项目代码在开发JavaWeb应用时,为了保护源代码不被轻易反编译和阅读,通常会采用代码混淆技术。ProGuard是一个广泛使用的免费工具,可以用来优化、缩小和混淆Java字节码。本文将详细介绍如何使用ProGuard对JavaWeb项目进行代码混淆。1. ProGuard简介ProGuard是一个Java类文件的过滤器,它可以删除无用的类、字段、方法和属...
- 探索虚拟线程:原理与实现介绍 (Introduction)Java 虚拟线程 (Virtual Threads) 是 Java 平台在 JDK 21 中正式发布的一项革命性新特性 (经过 JDK 19 和 20 的预览)。它们是一种轻量级的、由 JVM 管理的线程,旨在极大地简化编写高吞吐量并发应用,特别是那些涉及大量等待(如网络 I/O 或数据库查询)的应用。与传统的平台线程(即操作系统线... 探索虚拟线程:原理与实现介绍 (Introduction)Java 虚拟线程 (Virtual Threads) 是 Java 平台在 JDK 21 中正式发布的一项革命性新特性 (经过 JDK 19 和 20 的预览)。它们是一种轻量级的、由 JVM 管理的线程,旨在极大地简化编写高吞吐量并发应用,特别是那些涉及大量等待(如网络 I/O 或数据库查询)的应用。与传统的平台线程(即操作系统线...
- Arthas mc(Memory Compiler/内存编译器 ) Arthas mc(Memory Compiler/内存编译器 )
- 目录一:断开连接的本质二:四次挥手三:“三次握手”和“四次挥手”异同四:TCP连接状态转换五:滑动窗口六:流量控制一:断开连接的本质通过上一篇文章的学习,我们知道“三次握手”的目的和本质就是让通信双方能够保存对端的信息,当信息这个数据量过大的时候,就要引用数据结构。那么断开连接的本质就是把对端的信息从数据结构中进行删除,释放掉。二:四次挥手1:FIN2:过程梳理引入:与“三次握手”中“一定... 目录一:断开连接的本质二:四次挥手三:“三次握手”和“四次挥手”异同四:TCP连接状态转换五:滑动窗口六:流量控制一:断开连接的本质通过上一篇文章的学习,我们知道“三次握手”的目的和本质就是让通信双方能够保存对端的信息,当信息这个数据量过大的时候,就要引用数据结构。那么断开连接的本质就是把对端的信息从数据结构中进行删除,释放掉。二:四次挥手1:FIN2:过程梳理引入:与“三次握手”中“一定...
- 目录一:连接管理二:三次握手(重点)三:解决“后发先至”问题一:连接管理1:建立连接【JavaEE】——TCP回显服务器(万字长文超详细)-CSDN博客在之前的学习中,我们知道用下述的这个代码(构造方法),将客户端 和服务器的内核建立连接,服务器在调用accept方法拿到操作系统内核中的连接,从而达到应用程序层面上服务器和客户端的连接。注:这个方法不是很明白的可以点击上面那条链... 目录一:连接管理二:三次握手(重点)三:解决“后发先至”问题一:连接管理1:建立连接【JavaEE】——TCP回显服务器(万字长文超详细)-CSDN博客在之前的学习中,我们知道用下述的这个代码(构造方法),将客户端 和服务器的内核建立连接,服务器在调用accept方法拿到操作系统内核中的连接,从而达到应用程序层面上服务器和客户端的连接。注:这个方法不是很明白的可以点击上面那条链...
- 目录一:自定义协议二:xml方案三:json方案四:protobuffer方案五:传输层六:UDP协议七:校验和/检验和一:自定义协议程序员在调用操作系统提供的网络API写出来的代码都是属于应用层的(回顾五个层级:应用层,传输层,网络层,数据链路层,物理层),应用层自身就有许多已经创建好的协议,但多数情况下是需要程序员自定义协议的1:自定义协议主要约定好两方面的内容(1)交互哪些信息解释:... 目录一:自定义协议二:xml方案三:json方案四:protobuffer方案五:传输层六:UDP协议七:校验和/检验和一:自定义协议程序员在调用操作系统提供的网络API写出来的代码都是属于应用层的(回顾五个层级:应用层,传输层,网络层,数据链路层,物理层),应用层自身就有许多已经创建好的协议,但多数情况下是需要程序员自定义协议的1:自定义协议主要约定好两方面的内容(1)交互哪些信息解释:...
- 目录一:局域网二:局域网的连接方式二:广域网三:网络通信四:协议五:五元组六:协议分层七:封装(数据发送过程)八:分用(数据接收过程)九:经典交换机的封装分用十:经典路由器的封装分用一:局域网1:概念局域网Local Area Network 简称LAN局域网是本地,局部组建的一种私有网络二:局域网的连接方式1:网线直连2:集线器组建意识把一个网口扩展成多个,但扩展出来的多个网口彼此间会影... 目录一:局域网二:局域网的连接方式二:广域网三:网络通信四:协议五:五元组六:协议分层七:封装(数据发送过程)八:分用(数据接收过程)九:经典交换机的封装分用十:经典路由器的封装分用一:局域网1:概念局域网Local Area Network 简称LAN局域网是本地,局部组建的一种私有网络二:局域网的连接方式1:网线直连2:集线器组建意识把一个网口扩展成多个,但扩展出来的多个网口彼此间会影...
- 目录引入:一:Callable和FutureTask类二:ReentrantLock——可重入锁三:Semaphore——信号量四:CountDownLatch引入:通过之前的学习,我们了解到CAS本质上是JVM替我们封装好的,我们没有办法感知到在java.util.concurrent中存放了一些我们多线程编程时常用的类看下面的一些接口:是不是非常熟悉,我们把这个packet包简称为(J... 目录引入:一:Callable和FutureTask类二:ReentrantLock——可重入锁三:Semaphore——信号量四:CountDownLatch引入:通过之前的学习,我们了解到CAS本质上是JVM替我们封装好的,我们没有办法感知到在java.util.concurrent中存放了一些我们多线程编程时常用的类看下面的一些接口:是不是非常熟悉,我们把这个packet包简称为(J...
- 目录一:CAS指令二:原子类三:CAS是如何避免线程安全问题四:CAS中ABA问题一:CAS指令1:概念CAS是CPU中的一条特殊的指令,它的功能就是完成“比较和交换”2:伪代码例子说明伪代码:只能表示一种逻辑,并不能实现编译执行注:CAS指令一般只关注内存当中的值,寄存器当中的值是多少不打紧,用完就不要了3:优点CAS指令不涉及锁,也能保证线程的安全二:原子类1:引入在Java中:先是操... 目录一:CAS指令二:原子类三:CAS是如何避免线程安全问题四:CAS中ABA问题一:CAS指令1:概念CAS是CPU中的一条特殊的指令,它的功能就是完成“比较和交换”2:伪代码例子说明伪代码:只能表示一种逻辑,并不能实现编译执行注:CAS指令一般只关注内存当中的值,寄存器当中的值是多少不打紧,用完就不要了3:优点CAS指令不涉及锁,也能保证线程的安全二:原子类1:引入在Java中:先是操...
- 目录一:乐观锁和悲观锁二:轻量级锁和重量级锁三:自旋锁和挂起等待锁四:普通互斥锁和读写锁五:公平锁和非公平锁六:可重入锁和不可重入锁七:synchronized自适应阶段八:锁消除九:锁粗化一:乐观锁和悲观锁1:乐观锁在加锁过程中,预估发生锁冲突的概率小,降低加锁的工作量,加锁的效率就提高了,安全系数不高(可能会引发占用大量cpu资源的问题)2:悲观锁在加锁过程中,预估发生锁冲突的概率大,... 目录一:乐观锁和悲观锁二:轻量级锁和重量级锁三:自旋锁和挂起等待锁四:普通互斥锁和读写锁五:公平锁和非公平锁六:可重入锁和不可重入锁七:synchronized自适应阶段八:锁消除九:锁粗化一:乐观锁和悲观锁1:乐观锁在加锁过程中,预估发生锁冲突的概率小,降低加锁的工作量,加锁的效率就提高了,安全系数不高(可能会引发占用大量cpu资源的问题)2:悲观锁在加锁过程中,预估发生锁冲突的概率大,...
- 目录引入:问题引入一:解决方案二:ThreadPoolExecutor(标准库线程池)三:Executors(工厂类)四:通过代码实现简单的线程池引入:问题引入在之前的学习中,我们了解到,为了降低频繁创建和销毁进程所带来的巨大开销,我们引入了轻量级进程的概念(线程)现在若线程的数量进一步提升,那么线程的频繁创建和销毁所带来的资源消耗,我们也不能忽视了所以我们进行优化,引入了“池”的概念:这... 目录引入:问题引入一:解决方案二:ThreadPoolExecutor(标准库线程池)三:Executors(工厂类)四:通过代码实现简单的线程池引入:问题引入在之前的学习中,我们了解到,为了降低频繁创建和销毁进程所带来的巨大开销,我们引入了轻量级进程的概念(线程)现在若线程的数量进一步提升,那么线程的频繁创建和销毁所带来的资源消耗,我们也不能忽视了所以我们进行优化,引入了“池”的概念:这...
- 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:阻塞队列二:“生产者消费者模型”——包饺子三:“生产者消费者模型”——分布式系统四:自己实现一个阻塞队列一:阻塞队列1:概念对于一个满的队列,入队操作就会陷入阻塞,直到这个队列有元素出队后,才可以往队列里面加入元素。对于一个空的队列,出队操作就会陷入阻塞,直到这个队列有元素入队后,才可以对队... 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:阻塞队列二:“生产者消费者模型”——包饺子三:“生产者消费者模型”——分布式系统四:自己实现一个阻塞队列一:阻塞队列1:概念对于一个满的队列,入队操作就会陷入阻塞,直到这个队列有元素出队后,才可以往队列里面加入元素。对于一个空的队列,出队操作就会陷入阻塞,直到这个队列有元素入队后,才可以对队...
- 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:单例模式(singleton)二:“饿汉模式”三:“懒汉”模式四:“饿汉”模式线程安全问题五:“懒汉”模式的线程安全问题六:指令重排序问题一:单例模式(singleton)1:概念单例模式就是,在java进程中,要求指定的类,只能有一个对象我们通过一些特殊的技巧来确保,我们的实例(对象)只有... 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:单例模式(singleton)二:“饿汉模式”三:“懒汉”模式四:“饿汉”模式线程安全问题五:“懒汉”模式的线程安全问题六:指令重排序问题一:单例模式(singleton)1:概念单例模式就是,在java进程中,要求指定的类,只能有一个对象我们通过一些特殊的技巧来确保,我们的实例(对象)只有...
- 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录引子:一:情景引入二:线程饿死问题三:wait和notify引子:wait和notify与join的用途有些类似。wait(等待)notify(通知)机制通过引入wait和notify在应用层面上对多线程代码的执行顺序产生干预。此处干预并不影响到操作系统对线程的随机调度一:情景引入有四个滑稽老铁... 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录引子:一:情景引入二:线程饿死问题三:wait和notify引子:wait和notify与join的用途有些类似。wait(等待)notify(通知)机制通过引入wait和notify在应用层面上对多线程代码的执行顺序产生干预。此处干预并不影响到操作系统对线程的随机调度一:情景引入有四个滑稽老铁...
- 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:内存可见性问题一:内存可见性问题内存可见性引起的多线程安全问题(一个线程读,一个线程写)package thread;import java.util.Scanner;/**Created with IntelliJ IDEA.Description:User: Hua YYDate: 20... 阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!目录一:内存可见性问题一:内存可见性问题内存可见性引起的多线程安全问题(一个线程读,一个线程写)package thread;import java.util.Scanner;/**Created with IntelliJ IDEA.Description:User: Hua YYDate: 20...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签