<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[java1024p的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/java1024p</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; java1024p]]></copyright><item><title><![CDATA[Java 什么是 AQS ？]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/153833839</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/153833839</guid><author>java1024p</author><pubDate>Fri, 24 Oct 2025 16:42:29 +0800</pubDate><description><![CDATA[AQS是什么？它是一个构建锁和同步器的基础框架。核心思想？用一个state变量表示状态，一个FIFO队列管理等待线程。工作模式？模板方法模式。AQS负责队列管理和线程调度，使用者只需实现tryAcquiretryRelease等核心状态控制方法。为什么重要？它是Java并发包的基石，理解了AQS，就理解了大部分JUC同步工具类的工作原理。它是一个相对底层的组件，日常开发中直接使用的机会不多，但却是理解Java并发编程精髓的关键。]]></description><category></category></item><item><title><![CDATA[Android Studio安装及组件配置（SDK、JDK、Gradle）]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/153833559</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/153833559</guid><author>java1024p</author><pubDate>Fri, 24 Oct 2025 16:35:23 +0800</pubDate><description><![CDATA[这样可以更灵活地配置组件和路径，避免将所有文件都下载到C盘。]]></description><category></category></item><item><title><![CDATA[【JAVA进阶篇教学】第十五篇：Java中AQS讲解]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146437067</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146437067</guid><author>java1024p</author><pubDate>Sat, 22 Mar 2025 11:33:38 +0800</pubDate><description><![CDATA[在 Java 中，AQS（AbstractQueuedSynchronizer）是一个用于实现同步器的抽象类，它提供了一种通用的机制来管理共享资源的访问。AQS 的主要作用是通过维护一个同步队列来实现对共享资源的同步访问，避免了多线程访问共享资源时可能出现的竞态条件和死锁等问题。]]></description><category></category></item><item><title><![CDATA[SQL实现md5加密方法]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146432662</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146432662</guid><author>java1024p</author><pubDate>Sat, 22 Mar 2025 02:31:39 +0800</pubDate><description><![CDATA[MD5(Message Digest Algorithm 5) 是一种广泛使用的哈希算法，它将输入的字符串（或数据）转换为固定长度的 128 位（16 字节）哈希值。不可逆性：MD5 是一种单向哈希算法，这意味着你无法从 MD5 哈希值还原出原始数据。输出固定长度：无论输入数据的长度如何，MD5 输出的哈希值始终是 32 个字符的十六进制数（128 位）。碰撞性。]]></description><category></category></item><item><title><![CDATA[SpringCloud实战【九】 SpringCloud服务间调用]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146432116</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146432116</guid><author>java1024p</author><pubDate>Sat, 22 Mar 2025 00:54:54 +0800</pubDate><description><![CDATA[这也就是我们接下来要介绍的服务间调用的前提条件。上面的代码比较简单，就不详细的介绍了，主要是RestTemplate中提供了getForObject方法(实际上RestTemplate提供了很多种调用的方法，主要分为Get或者Post)，可以指定要调用接口的地址，指定返回的值的类型。代码和第一次的代码基本一样，唯一的区别就是获取服务地址和端口的地方替换成了注册中心中的Application的名字，并且我们的RestTemplate在使用上和第一次没有任何区别，只是在url中不同。下面我们看一下返回的结果。]]></description><category></category></item><item><title><![CDATA[SpringBoot3 升级介绍]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146166775</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146166775</guid><author>java1024p</author><pubDate>Mon, 10 Mar 2025 23:33:17 +0800</pubDate><description><![CDATA[Springboot是Spring家族中的一个框架，它是用来简单应用程序的创建和开发过程，化繁为简，简化SSM(SpringMVC + Spring + MyBatis)框架的配置。比如说在使用SSM框架开发的时候，我们需要配置web.xml，配置spring，配置mybatis，并将它们整合到一起，而是用Springboot就不同了，它采用了大量的默认配置来简化这些文件的配置过程。]]></description><category></category></item><item><title><![CDATA[Spring Boot实时推送技术详解：三个经典案例]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146159678</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146159678</guid><author>java1024p</author><pubDate>Mon, 10 Mar 2025 17:34:06 +0800</pubDate><description><![CDATA[id: ID!实现Resolver：处理GraphQL查询和订阅请求。@Component// 模拟消息发布});前端处理：前端使用GraphQL客户端订阅新消息，并处理接收到的数据。GraphQL订阅的优势在于能够精确请求所需数据，并且能够在数据变化时实时推送更新。本文介绍了三种使用Spring Boot实现实时消息推送的方法：长轮询、WebSocket和GraphQL订阅。每种方法都有其独特的优势和适用场景。]]></description><category></category></item><item><title><![CDATA[Redis之Redis事务]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146151229</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146151229</guid><author>java1024p</author><pubDate>Mon, 10 Mar 2025 12:47:52 +0800</pubDate><description><![CDATA[watch指令类似于乐观锁，在事务提交时，如果watch监控的多个KEY中任何KEY的值已经被其他客户端更改，则使用EXEC执行事务时，事务队列将不会被执行，同时返回Nullmulti-bulk应答以通知调用者事务执行失败。]]></description><category></category></item><item><title><![CDATA[Node.js看我的就行了！！！]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146107522</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146107522</guid><author>java1024p</author><pubDate>Fri, 07 Mar 2025 22:58:31 +0800</pubDate><description><![CDATA[最近nodejs崩了好多次，所以我决定重装。由于没有卸载干净，折腾了我两天#终于，我今天下午装好了我们从卸载开始(没有安装的小伙伴直接到第二步)]]></description><category></category></item><item><title><![CDATA[MySQL版本选择与安装]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146050761</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146050761</guid><author>java1024p</author><pubDate>Wed, 05 Mar 2025 19:13:50 +0800</pubDate><description><![CDATA[如果您的应用程序已经在一个较旧的版本上运行良好，并且没有迫切的升级需求，可以继续使用该版本，但应计划在未来进行升级。全面的性能改进：8.0版本引入了更多的性能优化和新特性，如默认的InnoDB存储引擎和更好的并行复制。对于大多数用户，建议使用最新的稳定版本，如MySQL 8.0，因为它提供了最佳的性能、安全性和新特性。如果您正在开发新的应用程序，建议直接使用最新的MySQL版本，以充分利用其提供的所有优势。改进的安全性：提供了更多的安全特性，如默认的加密连接和新的用户账户管理。]]></description><category></category></item><item><title><![CDATA[MySQL 启动失败 (code=exited, status=1FAILURE) 异常解决方案]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146049203</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146049203</guid><author>java1024p</author><pubDate>Wed, 05 Mar 2025 17:51:33 +0800</pubDate><description><![CDATA[在日常运维和开发过程中，MySQL数据库的稳定运行至关重要。然而，MySQL有时会因为配置文件错误或环境问题而启动失败。本文将以 MySQL 启动失败的案例为例，详细介绍如何通过查看日志文件，定位问题并解决 MySQL 启动异常。通过上述步骤，我们成功解决了 MySQL 启动失败的问题。首先，查看 MySQL 的错误日志文件，找到具体的错误信息。通过错误提示，确定配置文件中的问题所在。修改或注释掉错误的配置项，确保 MySQL 能够正常启动。重启 MySQL 服务，验证问题是否解决。]]></description><category></category></item><item><title><![CDATA[Java面试知识点总结]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146046360</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146046360</guid><author>java1024p</author><pubDate>Wed, 05 Mar 2025 16:26:36 +0800</pubDate><description><![CDATA[在数据库中,所谓事务是指一组逻辑操作单元即一组sql语句。当这个单元中的一部分操作失败,整个事务回滚，只有全部正确才完成提交。事务的ACID属性1. 原子性（Atomicity）原子性是指事务是一个不可分割的工作单位，事务中的操作要么都发生，要么都不发生。2. 一致性（Consistency）事务必须使数据库从一个一致性状态变换到另外一个一致性状态。(数据不被破坏)3. 隔离性（Isolation）事务的隔离性是指一个事务的执行不能被其他事务干扰.4. 持久性（Durability）]]></description><category></category></item><item><title><![CDATA[java中多线程常见面试题]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146031207</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146031207</guid><author>java1024p</author><pubDate>Wed, 05 Mar 2025 01:19:28 +0800</pubDate><description><![CDATA[线程之间的共享变量存储在主内存（main memory）中，每个线程都有一个私有的本地内存（local memory），本地内存中存储了该线程以读/写共享变量的副本。2. 将 Runnable 对象作为一个类的内部类，共享数据作为这个类的成员变量，每个线程对共享数据的操作方法也封装在外部类，以便实现对数据的各个操作的同步和互斥，作为内部类的各个 Runnable 对象调用外部类的这些方法。数据的分析，数据迁移的时候，可以用多线程，比如hadoop中mapreduce计算时候，可以增加分区。]]></description><category></category></item><item><title><![CDATA[ChatGLM2-6B模型推理流程和模型架构详解]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/146030448</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/146030448</guid><author>java1024p</author><pubDate>Wed, 05 Mar 2025 00:01:47 +0800</pubDate><description><![CDATA[因为本人在做大模型优化方面的研究，之前拆了ChatGLM2的源代码，看看能从哪些地方深入。结果刚拆完没多久，昨天，也就是10 月 27 日，智谱 AI 在 2023 中国计算机大会(CNCC)上发布了自研第三代对话大模型 ChatGLM3，这是智谱 AI 在今年内第三次对 ChatGLM 基座模型进行了深度优化。目前还没去拆它的源代码，所以也不太清楚和2代之间有什么区别。但2代的结构我觉得可以先发以下。好烦，本来以为拆完了后可以推进下一步了，没想到被官方背刺了。]]></description><category></category></item><item><title><![CDATA[重学SpringBoot3-Spring WebFlux之SSE服务器发送事件]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145981870</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145981870</guid><author>java1024p</author><pubDate>Mon, 03 Mar 2025 11:55:26 +0800</pubDate><description><![CDATA[服务器发送事件（SSE）是一种从服务器向客户端推送数据的技术，属于HTML5的一部分。与传统的 HTTP 请求-响应模型不同，SSE 是单向的，服务器可以持续不断地向客户端发送数据，而客户端通过一次长连接持续接收这些更新。单向通信：SSE 仅允许服务器向客户端推送数据，客户端无法向服务器发送数据。基于 HTTP 协议：SSE 是建立在 HTTP 协议之上的，浏览器原生支持，不需要额外的协议处理。自动重连：SSE 支持自动重连，当连接意外断开时，客户端会自动尝试重新连接服务器。]]></description><category></category></item><item><title><![CDATA[比较Spring AOP和AspectJ]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145971542</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145971542</guid><author>java1024p</author><pubDate>Sun, 02 Mar 2025 22:13:08 +0800</pubDate><description><![CDATA[它与我现有的或新的应用程序兼容吗？在哪里可以实施AOP？它与我的应用程序集成的速度有多快？性能开销是多少？在本文中，我们将着眼于回答这些问题，并介绍Spring AOP和AspectJ（这两种最流行的Java AOP框架）。下表概述了Spring AOP和AspectJ之间的主要区别：Spring AOPAspectJImplemented in pure Java-- 用纯Java实现。]]></description><category></category></item><item><title><![CDATA[如何在docker中的mysql容器内执行命令与执行SQL文件]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145969872</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145969872</guid><author>java1024p</author><pubDate>Sun, 02 Mar 2025 20:54:03 +0800</pubDate><description><![CDATA[通过 docker ps -a 查询当前运行的容器，找到想执行命令的容器名称。若想执行sql文件，则将sql文件放入当前文件夹下后将项目内的 SQL 文件拷贝到 mysql 容器内部的 root下。然后进入 mysql 容器内部。进入mysql容器内部执行以下命令后回车，输入数据库密码进入 mysql 数据库如图：切换到对应的数据库下，例如数据库 zd，记得后面要加分号use zd;]]></description><category></category></item><item><title><![CDATA[分布式监控Skywalking安装及使用教程（保姆级教程）]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145968263</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145968263</guid><author>java1024p</author><pubDate>Sun, 02 Mar 2025 19:15:21 +0800</pubDate><description><![CDATA[本文主要讲解分布式链路追踪监控系统Skywalking的安装及使用教程，从0到1，图文并茂的保姆级教程。SkyWalking是一款用于分布式系统跟踪和性能监控的开源工具。它可以帮助开发人员了解分布式系统中不同组件之间的调用关系和性能指标，从而进行故障排查和性能优化。它支持多种语言和框架，包括Java、.NET、Node.js等。它通过在应用程序中插入代理或使用特定的SDK来收集跟踪数据，并将这些数据发送到SkyWalking服务器进行分析和展示。分布式跟踪。]]></description><category></category></item><item><title><![CDATA[一个比 Nginx 还简单的 Web 服务器]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145948487</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145948487</guid><author>java1024p</author><pubDate>Sat, 01 Mar 2025 15:25:25 +0800</pubDate><description><![CDATA[企业级的 Web 服务器非常多，Nginx、Tomcat、Apache、IIS、FastAPI、Flask 等。今天松哥再给大家介绍一个开源的 Web 服务器，这款服务器具备自动 HTTPS 功能和高度可配置性，它的名字是：Caddy。Caddy 是一个 Go 编写的 Web 服务器，类似于 Nginx，Caddy 提供了更加强大的功能，随着 v2 版本发布，Caddy 已经可以作为中小型站点 Web 服务器的另一个选择。相较于 Nginx 来说使用 Caddy 的优势如下:Caddy 轻量简单，对新手也比]]></description><category></category></item><item><title><![CDATA[【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用]]></title><link>https://blog.youkuaiyun.com/java1024p/article/details/145940183</link><guid>https://blog.youkuaiyun.com/java1024p/article/details/145940183</guid><author>java1024p</author><pubDate>Fri, 28 Feb 2025 23:23:12 +0800</pubDate><description><![CDATA[是 Oracle 11g 中用于修改和删除表中数据的重要 SQL 语句。在操作时，需特别注意数据筛选条件的准确性，以避免意外更改或删除数据。是管理数据表中记录的核心操作，其灵活性和强大功能使其在日常开发中被广泛使用。但在操作时需特别小心，确保筛选条件准确并采取必要的备份与验证措施，以避免因误操作造成数据丢失或不一致。用于更新表中的现有数据，可以更新单行或多行记录，需结合。对关键表进行更新或删除前，建议备份数据，尤其在生产环境中。，将删除表中的所有记录，但表结构仍然保留。可返回更新或删除的行数据。]]></description><category></category></item></channel></rss>