From c15a8af10eff050ea5a79c2632d6783ec79075c4 Mon Sep 17 00:00:00 2001 From: maxf Date: Fri, 15 Aug 2025 18:01:51 +0800 Subject: [PATCH] =?UTF-8?q?[update]=20=E4=BC=98=E5=8C=96=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- demo2/java14-example/README.md | 43 +++--- .../main/resources/static/css/common/main.css | 20 ++- .../main/resources/templates/common/menu.html | 142 ++++++++++++++++++ demo3/src/main/resources/templates/index.html | 25 ++- 4 files changed, 187 insertions(+), 43 deletions(-) diff --git a/demo2/java14-example/README.md b/demo2/java14-example/README.md index 7563f94..9698ec9 100644 --- a/demo2/java14-example/README.md +++ b/demo2/java14-example/README.md @@ -1,35 +1,26 @@ -Java 14 新特性示例 ---- +# Java 13 新特性示例 -本项目展示了Java 14的核心新特性及代码示例。 +本项目展示了Java 13的核心新特性及代码示例。 ## 特性列表 -### 1. Record(记录类)- 预览功能 -- **说明**:提供一种紧凑的语法来声明只读数据载体,减少样板代码 -- **示例位置**:`src/main/java/features/RecordExample.java` -- **启用方式**:编译/运行时需添加`--enable-preview` - -### 2. Pattern Matching for instanceof(instanceof模式匹配)- 预览功能 -- **说明**:简化 instanceof 操作,自动进行类型转换 -- **示例位置**:`src/main/java/features/PatternMatchingInstanceofExample.java` -- **启用方式**:编译/运行时需添加`--enable-preview` - -### 3. Switch Expressions(Switch表达式) -- **说明**:从预览功能转为正式功能,支持箭头语法和返回值 -- **示例位置**:`src/main/java/features/SwitchExpressionsExample.java` - -### 4. Text Blocks(文本块)- 第二次预览 -- **说明**:多行字符串文字,增强可读性和可维护性 +### 1. 文本块(Text Blocks)- 预览功能 +- **说明**:使用`"""`定义多行字符串,避免转义字符,提高可读性 - **示例位置**:`src/main/java/features/TextBlocksExample.java` + +### 2. Switch表达式增强 - 预览功能 +- **说明**:JDK 12预览功能的改进版本,支持yield返回值 +- **示例位置**:`src/main/java/features/SwitchExpressionsExample.java` - **启用方式**:编译/运行时需添加`--enable-preview` -### 5. Helpful NullPointerExceptions(更有帮助的空指针异常) -- **说明**:改进 NullPointerException 的错误信息,更准确地指出哪个变量为 null -- **示例位置**:`src/main/java/features/NullPointerExceptionExample.java` +### 3. Socket API 重新实现 +- **说明**:使用NIO实现更简单、更维护的Socket API +- **示例位置**:`src/main/java/features/SocketAPIExample.java` -### 6. Packaging Tool(打包工具)- 实验性功能 -- **说明**:提供 jpackage 工具,用于创建独立的 Java 应用程序包 -- **使用方式**:命令行工具 `jpackage`,需要单独下载 +### 4. ZGC(Z Garbage Collector)增强 +- **说明**:将ZGC的使用范围从Linux扩展到macOS和Windows(实验性) +- **启用方式**:JVM参数`-XX:+UseZGC` - \ No newline at end of file +### 5. 动态CDS Archives +- **说明**:简化了类数据共享的使用,提高启动性能 +- **使用方式**:通过`-XX:ArchiveClassesAtExit`和`-XX:SharedArchiveFile`参数使用 diff --git a/demo3/src/main/resources/static/css/common/main.css b/demo3/src/main/resources/static/css/common/main.css index 877e0cd..20a037e 100644 --- a/demo3/src/main/resources/static/css/common/main.css +++ b/demo3/src/main/resources/static/css/common/main.css @@ -40,12 +40,30 @@ overflow: hidden; } + /* 新增:菜单收起状态样式 */ + .ui-menu.collapsed { + width: 60px; + } + + .ui-menu.collapsed .menu-text { + display: none; + } + + .ui-menu.collapsed .has-submenu > .menu-link::after { + display: none; + } + .ui-main-container { margin-left: 200px; /* 给侧边栏留出空间 */ display: flex; flex-direction: column; height: 100vh; /* 占满整个视口高度 */ - transition: width 0.3s ease-in-out; + transition: margin-left 0.3s ease-in-out; + } + + /* 新增:主容器在菜单收起时的样式 */ + .ui-main-container.menu-collapsed { + margin-left: 60px; } .ui-content { diff --git a/demo3/src/main/resources/templates/common/menu.html b/demo3/src/main/resources/templates/common/menu.html index 566549b..4c1adc3 100644 --- a/demo3/src/main/resources/templates/common/menu.html +++ b/demo3/src/main/resources/templates/common/menu.html @@ -3,8 +3,150 @@ Title + + + + + \ No newline at end of file diff --git a/demo3/src/main/resources/templates/index.html b/demo3/src/main/resources/templates/index.html index 7f1056a..f9a5874 100644 --- a/demo3/src/main/resources/templates/index.html +++ b/demo3/src/main/resources/templates/index.html @@ -8,7 +8,6 @@
-
@@ -37,17 +36,15 @@ function updateLayout() { if (isMenuVisible) { - $menu.css('width', '200px'); - $mainContainer.css({ - 'margin-left': '200px', - 'width': 'calc(100% - 200px)' - }); + $menu.removeClass('collapsed'); + $mainContainer.removeClass('menu-collapsed'); + $iconShow.hide(); + $iconHide.show(); } else { - $menu.css('width', '0'); - $mainContainer.css({ - 'margin-left': '0', - 'width': '100%' - }); + $menu.addClass('collapsed'); + $mainContainer.addClass('menu-collapsed'); + $iconShow.show(); + $iconHide.hide(); } } @@ -55,17 +52,13 @@ $iconHide.on('click', function () { isMenuVisible = false; updateLayout(); - $iconHide.hide(); - $iconShow.show(); }); // 点击 show 图标:显示菜单 $iconShow.on('click', function () { isMenuVisible = true; updateLayout(); - $iconShow.hide(); - $iconHide.show(); }); }); - + \ No newline at end of file