> For the complete documentation index, see [llms.txt](https://jupiter-1992.gitbook.io/jupiter-note/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jupiter-1992.gitbook.io/jupiter-note/master.md).

# README

我的笔记❤️💛💚💙💜

Jupiter（原文来自蝉时雨），仅作为学习参考用

| 目录 | 描述                                                        |
| -- | --------------------------------------------------------- |
| 前端 | 前端知识库，包括且不限于 JavaScript、TypeScript、Nodejs、React、Vue 等知识总结 |
| 后端 | 后端知识库，包括且不限于 Java、Spring、Linux、MySQL、Docker 等知识总结         |

* [README](/jupiter-note/master.md)
* 前端
  * JavaScript
    * [01 JavaScript 秘密花园](/jupiter-note/qian-duan/javascript/01javascript-mi-mi-hua-yuan.md)
    * [02 JavaScript 正则技巧](/jupiter-note/qian-duan/javascript/02javascript-zheng-ze-ji-qiao.md)
    * [03 从浏览器解析 JS 运行机制](/jupiter-note/qian-duan/javascript/03-cong-liu-lan-qi-jie-xi-js-yun-hang-ji-zhi.md)
    * [04 Canvas 基础用法](/jupiter-note/qian-duan/javascript/04canvas-ji-chu-yong-fa.md)
    * [05 Blob Url And Data Url](/jupiter-note/qian-duan/javascript/05-blob-url-and-data-url.md)
    * [06 函数节流与函数防抖](/jupiter-note/qian-duan/javascript/06-han-shu-jie-liu-yu-han-shu-fang-dou.md)
    * [07 排序算法初探](/jupiter-note/qian-duan/javascript/07-pai-xu-suan-fa-chu-tan.md)
    * [08 洗牌算法实现数组乱序](/jupiter-note/qian-duan/javascript/08-xi-pai-suan-fa-shi-xian-shu-zu-luan-xu.md)
    * [09 正则匹配 match 和 exec](/jupiter-note/qian-duan/javascript/09-zheng-ze-pi-pei-match-he-exec.md)
    * [10 正则匹配汉字](/jupiter-note/qian-duan/javascript/10-zheng-ze-pi-pei-han-zi.md)
  * CSS
    * [01 Flex 弹性布局](/jupiter-note/qian-duan/css/01flex-dan-xing-bu-ju.md)
    * [02 Position 定位](/jupiter-note/qian-duan/css/02position-ding-wei.md)
  * Node
    * [01 Node Tips](/jupiter-note/qian-duan/node/01-node-tips.md)
    * [02 七天学会 NodeJS](/jupiter-note/qian-duan/node/02-qi-tian-xue-hui-nodejs.md)
  * Note
    * [01 Note](/jupiter-note/qian-duan/note/01-note.md)
    * [02 Interview](/jupiter-note/qian-duan/note/02-interview.md)
    * [03 Snippets](/jupiter-note/qian-duan/note/03-snippets.md)
    * [04 Git](/jupiter-note/qian-duan/note/04-git.md)
    * [05 Tool](/jupiter-note/qian-duan/note/05-tool.md)
  * React
    * [01 React Props Children 传值](/jupiter-note/qian-duan/react/01reactpropschildren-chuan-zhi.md)
    * [02 Use a Render Prop!](/jupiter-note/qian-duan/react/02-use-a-render-prop.md)
    * [03 React Hook](/jupiter-note/qian-duan/react/03-react-hook.md)
    * [04 React Hook 定时器](/jupiter-note/qian-duan/react/04reacthook-ding-shi-qi.md)
    * [05 Fetch data with React Hooks](/jupiter-note/qian-duan/react/05-fetch-data-with-react-hooks.md)
    * [06 React 和 Vue 中 key 的作用](/jupiter-note/qian-duan/react/06react-he-vue-zhong-key-de-zuo-yong.md)
    * [07 TypeScript 中 interface 和 type 区别](https://github.com/Jupiter-1992/mynote/tree/342969f6e0facda4475ea18ad1572e6d447cfbc7/前端/React/07-TypeScript-中-interface-和-type-区别.md)
    * [08 TypeScript 中 is 关键字](/jupiter-note/qian-duan/react/08typescript-zhong-is-guan-jian-zi.md)
  * Vue
    * [01 Vue Tips](/jupiter-note/qian-duan/vue/01-vue-tips.md)
    * [02 Vue 构建项目写入配置文件](/jupiter-note/qian-duan/vue/02vue-gou-jian-xiang-mu-xie-ru-pei-zhi-wen-jian.md)
    * [03 Vue 项目引入 SVG 图标](/jupiter-note/qian-duan/vue/03vue-xiang-mu-yin-ru-svg-tu-biao.md)
    * [04 Vue 一键导出 PDF](/jupiter-note/qian-duan/vue/04vue-yi-jian-dao-chu-pdf.md)
    * [05 动态可响应对象](/jupiter-note/qian-duan/vue/05-dong-tai-ke-xiang-ying-dui-xiang.md)
  * 实战系列
    * [01 WebSocket 心跳重连机制](/jupiter-note/qian-duan/shi-zhan-xi-lie/01websocket-xin-tiao-zhong-lian-ji-zhi.md)
    * [02 图片加解密二三事](/jupiter-note/qian-duan/shi-zhan-xi-lie/02-tu-pian-jia-jie-mi-er-san-shi.md)
    * [03 优雅实现 BackTop](/jupiter-note/qian-duan/shi-zhan-xi-lie/03-you-ya-shi-xian-backtop.md)
    * [04 动态加载 JS 文件](/jupiter-note/qian-duan/shi-zhan-xi-lie/04-dong-tai-jia-zai-js-wen-jian.md)
    * [05 神奇的 Document.designMode](/jupiter-note/qian-duan/shi-zhan-xi-lie/05-shen-qi-de-document.designmode.md)
* 后端
  * Java
    * [01 面向对象基本特征与原则](/jupiter-note/hou-duan/java/01-mian-xiang-dui-xiang-ji-ben-te-zheng-yu-yuan-ze.md)
    * [02 Java 数据类型](/jupiter-note/hou-duan/java/02java-shu-ju-lei-xing.md)
    * [03 Java String](/jupiter-note/hou-duan/java/03-java-string.md)
    * [04 Java 只有值传递](/jupiter-note/hou-duan/java/04java-zhi-you-zhi-chuan-di.md)
    * [05 Java final 与 static](/jupiter-note/hou-duan/java/05javafinal-yu-static.md)
    * [06 Java Object 通用方法](/jupiter-note/hou-duan/java/06javaobject-tong-yong-fang-fa.md)
    * [07 Java 继承](/jupiter-note/hou-duan/java/07java-ji-cheng.md)
    * [08 Java 反射](/jupiter-note/hou-duan/java/08java-fan-she.md)
    * [09 Java 异常](/jupiter-note/hou-duan/java/09java-yi-chang.md)
    * [10 Java 容器](/jupiter-note/hou-duan/java/10java-rong-qi.md)
    * [11 Java 虚拟机](/jupiter-note/hou-duan/java/11java-xu-ni-ji.md)
    * [12 Java IO](/jupiter-note/hou-duan/java/12-java-io.md)
    * [13 Java HashMap](/jupiter-note/hou-duan/java/13-java-hashmap.md)
    * [14 Java List](/jupiter-note/hou-duan/java/14-java-list.md)
    * [15 Java Stream](/jupiter-note/hou-duan/java/15-java-stream.md)
    * [16 Java 枚举](/jupiter-note/hou-duan/java/16java-mei-ju.md)
    * [17 Java 日期与时间](/jupiter-note/hou-duan/java/17java-ri-qi-yu-shi-jian.md)
    * [18 Java fail fast](/jupiter-note/hou-duan/java/18-java-fail-fast.md)
    * [19 Java BiFunction 和 BinaryOperator](/jupiter-note/hou-duan/java/19javabifunction-he-binaryoperator.md)
  * 并发编程
    * [01 Java 并发](/jupiter-note/hou-duan/bing-fa-bian-cheng/01java-bing-fa.md)
    * [02 synchronized](/jupiter-note/hou-duan/bing-fa-bian-cheng/02-synchronized.md)
    * [03 volatile](/jupiter-note/hou-duan/bing-fa-bian-cheng/03-volatile.md)
    * [04 ReentrantLock](/jupiter-note/hou-duan/bing-fa-bian-cheng/04-reentrantlock.md)
    * [05 ReadWriteLock](/jupiter-note/hou-duan/bing-fa-bian-cheng/05-readwritelock.md)
    * [06 StampedLock](/jupiter-note/hou-duan/bing-fa-bian-cheng/06-stampedlock.md)
    * [07 CompletableFuture](/jupiter-note/hou-duan/bing-fa-bian-cheng/07-completablefuture.md)
    * [08 ForkJoin](/jupiter-note/hou-duan/bing-fa-bian-cheng/08-forkjoin.md)
    * [09 ThreadLocal](/jupiter-note/hou-duan/bing-fa-bian-cheng/09-threadlocal.md)
    * [10 CountDownLatch](/jupiter-note/hou-duan/bing-fa-bian-cheng/10-countdownlatch.md)
    * [11 ThreadPoolExecutor](/jupiter-note/hou-duan/bing-fa-bian-cheng/11-threadpoolexecutor.md)
    * [12 ExecutorService](/jupiter-note/hou-duan/bing-fa-bian-cheng/12-executorservice.md)
    * [13 Atom 原子类](/jupiter-note/hou-duan/bing-fa-bian-cheng/13atom-yuan-zi-lei.md)
    * [14 BlockingQueue](/jupiter-note/hou-duan/bing-fa-bian-cheng/14-blockingqueue.md)
  * 高效编程
    * [01 30 seconds of java8](/jupiter-note/hou-duan/gao-xiao-bian-cheng/01-30-seconds-of-java8.md)
    * [02 函数式替代 for 循环](/jupiter-note/hou-duan/gao-xiao-bian-cheng/02-han-shu-shi-ti-dai-for-xun-huan.md)
    * [03 Java 字符串拼接](/jupiter-note/hou-duan/gao-xiao-bian-cheng/03java-zi-fu-chuan-pin-jie.md)
    * [04 单例模式的几种实现](/jupiter-note/hou-duan/gao-xiao-bian-cheng/04-dan-li-mo-shi-de-ji-zhong-shi-xian.md)
    * [05 HashMap 排序](/jupiter-note/hou-duan/gao-xiao-bian-cheng/05hashmap-pai-xu.md)
  * 理论概念
    * [01 Java Servlet](/jupiter-note/hou-duan/li-lun-gai-nian/01-java-servlet.md)
    * [02 Java 服务端分层模型](/jupiter-note/hou-duan/li-lun-gai-nian/02java-fu-wu-duan-fen-ceng-mo-xing.md)
    * [03 经典排序算法](/jupiter-note/hou-duan/li-lun-gai-nian/03-jing-dian-pai-xu-suan-fa.md)
    * [04 LRU 缓存淘汰算法](/jupiter-note/hou-duan/li-lun-gai-nian/04lru-huan-cun-tao-tai-suan-fa.md)
    * [05 BloomFilter 判断元素存在](/jupiter-note/hou-duan/li-lun-gai-nian/05bloomfilter-pan-duan-yuan-su-cun-zai.md)
    * [06 Java HashMap 面试大全](/jupiter-note/hou-duan/li-lun-gai-nian/06javahashmap-mian-shi-da-quan.md)
    * [07 HTTP 状态码详解](/jupiter-note/hou-duan/li-lun-gai-nian/07http-zhuang-tai-ma-xiang-jie.md)
    * [08 Cookie 和 Session](/jupiter-note/hou-duan/li-lun-gai-nian/08cookie-he-session.md)
    * [09 基于消息队列的分布式事务解决方案](/jupiter-note/hou-duan/li-lun-gai-nian/09-ji-yu-xiao-xi-dui-lie-de-fen-bu-shi-shi-wu-jie-jue-fang-an.md)
  * 实战系列
    * [01 AES CBC 加解密](/jupiter-note/hou-duan/shi-zhan-xi-lie/01aescbc-jia-jie-mi.md)
    * [02 Magic 魔数获取文件类型](/jupiter-note/hou-duan/shi-zhan-xi-lie/02magic-mo-shu-huo-qu-wen-jian-lei-xing.md)
    * [03 获取请求 IP 地址](/jupiter-note/hou-duan/shi-zhan-xi-lie/03-huo-qu-qing-qiu-ip-di-zhi.md)
    * [04 Kaptcha 与数学公式验证码](/jupiter-note/hou-duan/shi-zhan-xi-lie/04kaptcha-yu-shu-xue-gong-shi-yan-zheng-ma.md)
    * [05 Netty 获取客户端 IP.md](/jupiter-note/hou-duan/shi-zhan-xi-lie/05netty-huo-qu-ke-hu-duan-ip.md)
    * [06 高性能无锁队列 Disruptor](/jupiter-note/hou-duan/shi-zhan-xi-lie/06-gao-xing-neng-wu-suo-dui-lie-disruptor.md)
    * [07 前后端接入阿里云盾](/jupiter-note/hou-duan/shi-zhan-xi-lie/07-qian-hou-duan-jie-ruali-yun-dun.md)
  * Spring
    * [01 Spring Boot](/jupiter-note/hou-duan/spring/01-spring-boot.md)
    * [02 Spring Validation](/jupiter-note/hou-duan/spring/02-spring-validation.md)
    * [03 Spring Data](/jupiter-note/hou-duan/spring/03-spring-data.md)
    * [04 Spring 容器](/jupiter-note/hou-duan/spring/04spring-rong-qi.md)
    * [05 Spring AOP](/jupiter-note/hou-duan/spring/05-spring-aop.md)
    * [07 Spring Transactional 注解](/jupiter-note/hou-duan/spring/07springtransactional-zhu-jie.md)
    * [08 Spring Cloud Netflix](/jupiter-note/hou-duan/spring/08-spring-cloud-netflix.md)
    * [09 Spring Cloud Alibaba](/jupiter-note/hou-duan/spring/09-spring-cloud-alibaba.md)
    * [10 Spring Security oAuth2](/jupiter-note/hou-duan/spring/10-spring-security-oauth2.md)
    * [11 Spring Boot 请求拦截](/jupiter-note/hou-duan/spring/11springboot-qing-qiu-lan-jie.md)
    * [13 Spring Boot 异步编程](/jupiter-note/hou-duan/spring/13springboot-yi-bu-bian-cheng.md)
    * [14 Spring Boot 定时任务](/jupiter-note/hou-duan/spring/14springboot-ding-shi-ren-wu.md)
    * [15 Spring Boot 管理 bean](/jupiter-note/hou-duan/spring/15springboot-guan-li-bean.md)
    * [16 Mybatis 逆向代码生成](/jupiter-note/hou-duan/spring/16mybatis-ni-xiang-dai-ma-sheng-cheng.md)
    * [17 JWT](/jupiter-note/hou-duan/spring/17-jwt.md)
    * [18 JPA](/jupiter-note/hou-duan/spring/18-jpa.md)
    * [19 Apache Shiro](/jupiter-note/hou-duan/spring/19-apache-shiro.md)
    * [20 Spring 异步请求](/jupiter-note/hou-duan/spring/20spring-yi-bu-qing-qiu.md)
    * [21 Spring Boot 跨域解决方式](/jupiter-note/hou-duan/spring/21springboot-kua-yu-jie-jue-fang-shi.md)
  * MySQL
    * [01 MySQL](/jupiter-note/hou-duan/mysql/01-mysql.md)
    * [02 SQL 语句 where 1=1](/jupiter-note/hou-duan/mysql/02sql-yu-ju-where11.md)
    * [03 truncate 和 delete](/jupiter-note/hou-duan/mysql/03truncate-he-delete.md)
    * [04 事务](/jupiter-note/hou-duan/mysql/04-shi-wu.md)
    * [05 关系模型](/jupiter-note/hou-duan/mysql/05-guan-xi-mo-xing.md)
    * [06 Mybatis](/jupiter-note/hou-duan/mysql/06-mybatis.md)
    * [07 MySQL 查看数据库表详情](https://github.com/Jupiter-1992/mynote/tree/342969f6e0facda4475ea18ad1572e6d447cfbc7/后端/MySQL/07-MySQL-查看数据库表详情/README.md)
  * Nginx
    * [01 Nginx 指北](/jupiter-note/hou-duan/nginx/01nginx-zhi-bei.md)
    * [02 常用端口](/jupiter-note/hou-duan/nginx/02-chang-yong-duan-kou.md)
    * [03 nginx gzip 压缩](/jupiter-note/hou-duan/nginx/03nginxgzip-ya-suo.md)
  * Netty
    * [01 BIO、NIO、AIO](/jupiter-note/hou-duan/netty/01-bio-nio-aio.md)
    * [02 Netty Server](/jupiter-note/hou-duan/netty/02-netty-server.md)
    * [03 Handler 执行顺序](/jupiter-note/hou-duan/netty/03handler-zhi-hang-shun-xu.md)
    * [04 Handler 对比](/jupiter-note/hou-duan/netty/04handler-dui-bi.md)
    * [05 消息发送](/jupiter-note/hou-duan/netty/05-xiao-xi-fa-song.md)
  * Note
    * [01 Note](/jupiter-note/hou-duan/note/01-note.md)
    * [02 Interview](/jupiter-note/hou-duan/note/02-interview.md)
    * [03 Snippets](/jupiter-note/hou-duan/note/03-snippets.md)
    * [04 Vagrant](/jupiter-note/hou-duan/note/04-vagrant.md)
    * [05 Docker](/jupiter-note/hou-duan/note/05-docker.md)
    * [06 Lombok](/jupiter-note/hou-duan/note/06-lombok.md)
    * [07 Swagger](/jupiter-note/hou-duan/note/07-swagger.md)
    * [08 Redis](/jupiter-note/hou-duan/note/08-redis.md)
    * [09 面试指南](/jupiter-note/hou-duan/note/09-mian-shi-zhi-nan.md)
    * [10 IDEA 高效指南](/jupiter-note/hou-duan/note/10idea-gao-xiao-zhi-nan.md)
  * Linux
    * [01 Linux 文件权限系统](/jupiter-note/hou-duan/linux/01linux-wen-jian-quan-xian-xi-tong.md)
    * [02 Linux 常用软件安装](/jupiter-note/hou-duan/linux/02linux-chang-yong-ruan-jian-an-zhuang.md)
    * [03 CentOS 防火墙](/jupiter-note/hou-duan/linux/03centos-fang-huo-qiang.md)
  * Project
    * [01 微信点餐系统](/jupiter-note/hou-duan/project/01-wei-xin-dian-can-xi-tong.md)
    * [02 Docker FastDFS](/jupiter-note/hou-duan/project/02-docker-fastdfs.md)
    * [03 Docker RocketMQ](/jupiter-note/hou-duan/project/03-docker-rocketmq.md)
    * [04 Moemall Admin Snippets](/jupiter-note/hou-duan/project/04-moemall-admin-snippets.md)
    * [05 Netty 聊天系统](/jupiter-note/hou-duan/project/05netty-liao-tian-xi-tong.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://jupiter-1992.gitbook.io/jupiter-note/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
