第一阶段:Java基础入门①Java开发环境搭建

🚀 Java开发环境搭建

💡 学习目标:掌握Java开发环境的搭建,完成第一个Java程序的编写和运行

☕ Java简介

🤔 什么是Java?

Java是一种面向对象的编程语言,由Sun Microsystems公司(现已被Oracle收购)于1995年发布。

🎯 Java座右铭:"一次编写,到处运行"(Write Once, Run Anywhere)

✨ Java核心特点
特性 描述 优势
🌐 跨平台性 一次编写,到处运行 降低开发成本,提高效率
🏗️ 面向对象 支持封装、继承、多态 代码复用性强,易于维护
🔒 安全性 内置安全机制 防止恶意代码执行
🎯 简单性 语法简洁清晰 易于学习和使用
💪 健壮性 强类型检查,自动内存管理 减少程序错误
🧵 多线程 内置多线程支持 提高程序性能

🌟 Java的应用领域

markdown 复制代码
                                                         ☕Java应用领域
                                                                 │
               ┌────────────────────────┬────────────────────────┼────────────────────────┬──────────────────────────┐
               │                        │                        │                        │                          │
         🏢企业级应用               📱移动开发               🌐Web开发               📊大数据处理                🔬科学计算            
               │                        │                        │                        │                          │         
        ┌──────┴──────┐          ┌──────┴──────┐         ┌───────┴───────┐          ┌─────┴─────┐              ┌─────┴─────┐   
        │             │          │             │         │               │          │           │              │           │   
    Spring框架     微服务架构  Android应用   跨平台应用 服务端开发     RESTful-API  Hadoop框架   Spark框架      数值计算     数据分析         
📋 应用领域详细说明
领域 主要技术 典型应用 市场需求
🏢 企业级应用 Spring、Spring Boot ERP、CRM系统 ⭐⭐⭐⭐⭐
📱 移动开发 Android SDK 手机APP ⭐⭐⭐⭐
🌐 Web开发 Spring MVC、微服务 网站后端 ⭐⭐⭐⭐⭐
📊 大数据 Hadoop、Spark 数据分析平台 ⭐⭐⭐⭐⭐
🔬 科学计算 数值计算库 科研软件 ⭐⭐⭐

⚙️ JDK安装与配置

🛠️ 什么是JDK?

📦 **JDK(Java Development Kit)**是Java开发工具包,是Java开发的核心工具集

🔧 JDK组件结构
scss 复制代码
📦 JDK (Java Development Kit) - Java开发工具包
│
├── 🏃 JRE (Java Runtime Environment) - Java运行时环境
│   ├── ☕ JVM (Java Virtual Machine) - Java虚拟机
│   └── 📖 Java核心类库 (Core Libraries)
│
├── ⚡ javac - Java编译器
│   └── 将.java文件编译为.class字节码文件
│
├── 🐛 jdb - Java调试器
│   └── 用于程序调试和错误排查
│
└── 📚 其他开发工具
    ├── 📦 jar - JAR文件打包工具
    ├── 📝 javadoc - API文档生成器
    ├── 🔍 jconsole - JVM监控工具
    └── 🔧 更多实用工具...
💡 组件关系说明

🎯 核心概念
JDK = JRE + 开发工具(编译器、调试器等)
JRE = JVM + Java核心类库
JVM = Java程序的运行环境

组件 功能 用途
🏃 JRE Java运行时环境 运行Java程序
javac Java编译器 将.java文件编译为.class文件
🐛 jdb Java调试器 调试Java程序
📦 jar 打包工具 创建和管理JAR文件
📝 javadoc 文档生成器 生成API文档

🚀 为什么选择GraalVM JDK?

🌟 本专栏推荐使用GraalVM JDK - Oracle开发的下一代高性能Java发行版

⚡ GraalVM核心优势

🎯 性能提升

  • 📈 比传统JDK性能提升10-20%

  • ⚡ 先进的JIT编译器优化

  • 🚀 更快的启动时间
    🌐 多语言生态

  • ☕ Java、JavaScript、Python、R等

  • 🔄 语言间无缝互操作

  • 📦 统一的运行时环境
    🛠️ 原生编译

  • 📱 编译为原生可执行文件

  • 💾 更小的内存占用

  • ⚡ 毫秒级启动时间

特性 传统JDK GraalVM JDK 优势
🚀 性能 基准 +10-20% 更快执行
💾 内存 标准 优化 更少占用
⏱️ 启动 秒级 毫秒级 快速响应
🔧 兼容性 100%兼容
💰 成本 免费 免费 零成本

📊 GraalVM JDK版本选择

🎯 推荐版本:GraalVM JDK 17(LTS长期支持版本)

🏆 版本对比
版本 状态 特点 推荐度 适用场景
🥇 JDK 17 LTS 企业级稳定性,生态成熟 ⭐⭐⭐⭐⭐ 本专栏推荐
🥈 JDK 21 LTS 最新特性,性能更优 ⭐⭐⭐⭐ 高级用户
🥉 JDK 22+ 最新 实验性功能 ⭐⭐⭐ 学习新特性

💡 为什么选择JDK 17?
• ✅ 长期支持(LTS)版本,稳定可靠
• ✅ 企业级应用广泛采用
• ✅ 框架和工具完全兼容
• ✅ 学习资源丰富
• ✅ 社区支持活跃

🪟 Windows系统GraalVM JDK安装步骤

🥇 方法一:使用SDKMAN安装(推荐)

🛠️ SDKMAN是一个强大的SDK管理工具,可以轻松管理多个JDK版本
⚠️ 前置条件
需要先安装 Git BashWSL

步骤1️⃣:安装SDKMAN

bash 复制代码
# 🌐 下载并安装SDKMAN
curl -s "https://get.sdkman.io" | bash

# 🔄 重新加载环境
source "$HOME/.sdkman/bin/sdkman-init.sh"

步骤2️⃣:安装GraalVM JDK

bash 复制代码
# 🔍 查看可用的GraalVM版本
sdk list java | grep graal

# 📥 安装GraalVM JDK 17(推荐)
sdk install java 17-graal

# ⚙️ 设置为默认版本
sdk default java 17-graal

✅ 安装成功提示
看到 "Done installing!" 表示安装完成

🥈 方法二:手动安装

步骤1️⃣:下载GraalVM JDK
🌐 下载地址
访问:www.graalvm.org/downloads/
• 选择 "GraalVM Community Edition"
• 选择 Java 17 版本
• 下载 Windows x64 版本的压缩包

步骤2️⃣:解压安装

复制代码
📁 解压到:C:\Program Files\GraalVM\graalvm-jdk-17

步骤3️⃣:配置环境变量

📸 截图说明:以下是Windows环境变量配置的详细步骤

  1. 🖱️ 右键"此电脑" → "属性" → "高级系统设置"
  2. 🔧 点击"环境变量"按钮
  3. ➕ 在"系统变量"中新建:
变量名 变量值
JAVA_HOME C:\Program Files\GraalVM\graalvm-jdk-17
  1. ✏️ 编辑"Path"变量,添加:%JAVA_HOME%\bin

💡 小贴士
配置完环境变量后,需要重新打开命令提示符才能生效

4️⃣ 验证安装

打开命令提示符(cmd),输入以下命令:

bash 复制代码
# 🔍 检查Java版本
java -version

# 🔍 检查编译器版本
javac -version

✅ 成功安装后的输出示例

复制代码
openjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment GraalVM CE 17.0.9+9.1 (build 17.0.9+9-jvmci-23.0-b15)
OpenJDK 64-Bit Server VM GraalVM CE 17.0.9+9.1 (build 17.0.9+9-jvmci-23.0-b15, mixed mode, sharing)

❌ 如果出现错误
• 检查环境变量配置是否正确
• 重新打开命令提示符
• 参考下方常见问题解决方案

macOS系统GraalVM JDK安装步骤

方法一:使用SDKMAN安装(推荐)
bash 复制代码
# 安装SDKMAN
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 安装GraalVM JDK 17
sdk install java 17-graal

# 设置为默认版本
sdk default java 17-graal
方法二:使用Homebrew安装
bash 复制代码
# 安装Homebrew(如果未安装)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 添加GraalVM tap
brew tap graalvm/tap

# 安装GraalVM JDK
brew install graalvm-jdk

# 配置环境变量
echo 'export JAVA_HOME=/opt/homebrew/lib/graalvm' >> ~/.zshrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.zshrc
source ~/.zshrc
方法三:手动安装
  1. 下载macOS版本的GraalVM JDK安装包
  2. 解压到/Library/Java/JavaVirtualMachines/目录
  3. ~/.zshrc~/.bash_profile中添加:
bash 复制代码
export JAVA_HOME=/Library/Java/JavaVirtualMachines/graalvm-jdk-17/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

Linux系统GraalVM JDK安装步骤

方法一:使用SDKMAN安装(推荐,适用于所有Linux发行版)
bash 复制代码
# 安装SDKMAN
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 安装GraalVM JDK 17
sdk install java 17-graal

# 设置为默认版本
sdk default java 17-graal

# 验证安装
java -version
javac -version
方法二:手动安装
bash 复制代码
# 下载GraalVM JDK(以Ubuntu为例)
cd /tmp
wget https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-17.0.9/graalvm-community-jdk-17.0.9_linux-x64_bin.tar.gz

# 解压到/opt目录
sudo tar -xzf graalvm-community-jdk-17.0.9_linux-x64_bin.tar.gz -C /opt/
sudo mv /opt/graalvm-community-openjdk-17.0.9+9.1 /opt/graalvm-jdk-17

# 配置环境变量
echo 'export JAVA_HOME=/opt/graalvm-jdk-17' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
方法三:包管理器安装(部分发行版支持)
bash 复制代码
# Ubuntu/Debian(需要添加第三方源)
# 注意:官方源可能不包含最新版本的GraalVM

# Fedora
sudo dnf install graalvm17-ce-java17-devel

# Arch Linux
yay -S graalvm-ce-java17-bin

👋 第一个Java程序:Hello World

🎉 里程碑时刻:让我们编写第一个Java程序!

📁 创建Java源文件

步骤1️⃣:创建项目文件夹

bash 复制代码
# 📂 创建学习目录
mkdir java-learning
cd java-learning

步骤2️⃣:创建Java源文件

bash 复制代码
# 📝 创建HelloWorld.java文件
touch HelloWorld.java  # Linux/macOS
# 或在Windows中手动创建文件

步骤3️⃣:编写代码
💻 HelloWorld.java

java 复制代码
public class HelloWorld {
    public static void main(String[] args) {
        // 🌍 向世界问好
        System.out.println("Hello, World!");
        System.out.println("欢迎来到Java编程世界!");

        // 🎨 让我们添加一些有趣的输出
        System.out.println("🚀 Java学习之旅开始了!");
        System.out.println("💪 坚持学习,成为Java大师!");
    }
}

📝 代码说明
public class HelloWorld - 定义公共类
public static void main - 程序入口点
System.out.println() - 输出文本到控制台

⚡ 编译和运行程序

1️⃣ 编译Java程序

📍 确保在正确目录
打开命令提示符,导航到源文件所在目录

bash 复制代码
# 📂 进入项目目录
cd java-learning

# ⚡ 编译Java源文件
javac HelloWorld.java

✅ 编译成功标志
• 没有错误信息输出
• 生成 HelloWorld.class 字节码文件
• 文件大小通常几百字节

2️⃣ 运行Java程序
bash 复制代码
# 🚀 运行编译后的程序
java HelloWorld

🎉 预期输出结果

复制代码
Hello, World!
欢迎来到Java编程世界!
🚀 Java学习之旅开始了!
💪 坚持学习,成为Java大师!

🎊 恭喜!
如果看到上述输出,说明你已经成功运行了第一个Java程序!

🔍 代码解析

📚 逐行解释
java 复制代码
// 🏗️ 类定义
public class HelloWorld {
    // 🚪 程序入口点
    public static void main(String[] args) {
        // 📢 输出文本到控制台
        System.out.println("Hello, World!");
    }
}
🎯 关键概念详解
代码部分 作用 重要性 说明
public class HelloWorld 🏗️ 类定义 ⭐⭐⭐⭐⭐ 类名必须与文件名相同
public static void main 🚪 程序入口 ⭐⭐⭐⭐⭐ JVM寻找的程序起始点
String[] args 📥 命令行参数 ⭐⭐⭐ 接收外部传入的参数
System.out.println() 📢 控制台输出 ⭐⭐⭐⭐ 向控制台输出并换行

💡 深入理解
public - 公共访问修饰符,任何地方都可以访问
static - 静态方法,不需要创建对象就能调用
void - 无返回值
main - 方法名,JVM的约定入口点

🎨 Java程序执行流程
kotlin 复制代码
📁 HelloWorld.java (源代码文件)
    │
    │ javac 编译
    ▼
📄 HelloWorld.class (字节码文件)
    │
    │ java 运行
    ▼
🏗️ 加载 public class HelloWorld
    │
    ▼
🚪 执行 main(String[] args) 方法
    │
    ▼
📢 调用 System.out.println()
    │
    ▼
🖥️ 控制台输出结果
🔄 程序执行步骤详解
步骤 操作 工具 结果
1️⃣ 编写源代码 文本编辑器/IDE .java文件
2️⃣ 编译源代码 javac编译器 .class字节码文件
3️⃣ 运行程序 java命令 JVM执行字节码
4️⃣ 加载类 JVM类加载器 类被加载到内存
5️⃣ 执行main方法 JVM 程序开始运行
6️⃣ 输出结果 System.out 控制台显示内容

💻 IDE选择与使用(IntelliJ IDEA)

🏆 业界公认的最佳Java IDE - IntelliJ IDEA

🌟 为什么选择IntelliJ IDEA?

⚡ 核心优势

🧠 智能代码补全
• AI驱动的代码提示
• 上下文感知补全
• 自动导入包
🐛 强大调试功能
• 可视化调试界面
• 断点调试
• 变量监控
🔧 版本控制集成
• Git无缝集成
• 可视化分支管理
• 冲突解决工具
🔌 丰富插件生态
• 数千个插件
• 主题定制
• 功能扩展

📊 IDE对比
特性 IntelliJ IDEA Eclipse VS Code NetBeans
🧠 智能提示 ⭐⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐
🐛 调试功能 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐
🚀 性能 ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐
🎨 界面美观 ⭐⭐⭐⭐⭐ ⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐
💰 价格 免费/付费 免费 免费 免费

IntelliJ IDEA安装

1. 下载IDEA
  • 访问:www.jetbrains.com/idea/
  • 选择Community版本(免费)或Ultimate版本(付费)
  • 下载适合操作系统的版本
2. 安装IDEA
  • Windows:双击安装包,按向导安装
  • macOS:拖拽到Applications文件夹
  • Linux:解压并运行bin/idea.sh

创建第一个Java项目

1. 启动IDEA并创建新项目
  1. 启动IntelliJ IDEA
  2. 选择"New Project"
  3. 选择"Java"项目类型
  4. 选择项目SDK(之前安装的JDK)
  5. 不勾选"Create project from template"
  6. 点击"Next"
2. 配置项目信息
  1. 输入项目名称:JavaLearning
  2. 选择项目位置
  3. 点击"Finish"
3. 创建Java类
  1. 右键src文件夹
  2. 选择"New" → "Java Class"
  3. 输入类名:HelloWorld
  4. 输入之前的Hello World代码
4. 运行程序
  1. 右键代码编辑器
  2. 选择"Run 'HelloWorld.main()'"
  3. 查看控制台输出

IDEA常用快捷键

  • Ctrl + Space:代码补全
  • Ctrl + /:单行注释
  • Ctrl + Shift + /:多行注释
  • Shift + F10:运行程序
  • Shift + F9:调试程序
  • Ctrl + D:复制当前行
  • Ctrl + Y:删除当前行

🔧 常见问题与解决方案

🆘 遇到问题不要慌,这里有最全面的解决方案!

1️⃣ 环境变量配置问题

❌ 问题现象
命令行输入 java -version 提示"不是内部或外部命令"
✅ 解决方案
步骤1: 检查JAVA_HOME环境变量是否正确设置
步骤2: 检查Path环境变量是否包含 %JAVA_HOME%\bin
步骤3: 重启命令提示符或重新登录系统
🔍 快速检查方法
在命令行输入:echo %JAVA_HOME%
应该显示JDK安装路径

2️⃣ 编译错误

❌ 问题现象
javac: command not found
✅ 解决方案
• 确保安装的是 JDK 而不是 JRE
• 检查环境变量配置
• 重新安装 GraalVM JDK

3️⃣ 类名与文件名不匹配

❌ 问题现象
编译时出现:"class HelloWorld is public, should be declared in a file named HelloWorld.java"
✅ 解决方案
• 确保Java文件名与类名 完全一致 (包括大小写)
• 一个Java文件只能有一个 public

4️⃣ 中文乱码问题

❌ 问题现象
输出中文时显示乱码或问号
✅ 解决方案
方法1: 设置IDE编码为UTF-8
方法2: 编译时指定编码
javac -encoding UTF-8 HelloWorld.java
方法3: 运行时指定编码
java -Dfile.encoding=UTF-8 HelloWorld

5. GraalVM特有问题

5.1 SDKMAN安装失败

问题:在Windows上安装SDKMAN时出现错误

解决方案

  • 确保已安装Git Bash或WSL
  • 在Git Bash中运行安装命令,不要在CMD或PowerShell中运行
  • 检查网络连接,可能需要配置代理
5.2 GraalVM版本验证

问题:不确定是否安装了GraalVM版本

解决方案

  • 运行java -version,输出中应包含"GraalVM"字样
  • 检查是否有native-image命令:native-image --version
  • 查看JAVA_HOME路径是否指向GraalVM目录
5.3 多JDK版本管理

问题:系统中有多个JDK版本,如何切换

解决方案

  • 使用SDKMAN管理:sdk use java 17-graal
  • 临时切换:修改JAVA_HOME环境变量
  • 永久切换:sdk default java 17-graal

📝 本章小结

🎉 恭喜!你已经迈出了Java学习的第一步!

✅ 学习成果检查清单

🎯 知识掌握情况
学习内容 掌握程度 检查方式
Java基础概念 ✅ 已掌握 能说出Java的5个核心特点
🚀 GraalVM优势 ✅ 已掌握 了解GraalVM的性能优势
⚙️ 环境搭建 ✅ 已掌握 java -version显示正确信息
👋 第一个程序 ✅ 已掌握 成功运行Hello World
💻 IDE使用 ✅ 已掌握 能在IDEA中创建和运行项目
🔧 问题解决 ✅ 已掌握 知道常见问题的解决方法

🏆 技能成就解锁

🎖️ 环境配置大师
成功搭建Java开发环境
👨‍💻 Hello World程序员
编写了第一个Java程序
🛠️ 工具使用专家
掌握了IDE的基本使用
🔧 问题解决能手
具备了基础故障排除能力

🗺️ 下一步学习计划

📈 学习路径图
复制代码
📚 当前章节          📝 下一章节          🔢 第三章节          🔄 第四章节          🚀 高级内容
┌─────────────┐    ┌─────────────┐    ┌─────────────┐    ┌─────────────┐    ┌─────────────┐
│ 环境搭建     │───▶│ Java基础语法 │───▶│ 变量和数据   │───▶│ 流程控制     │───▶│ GraalVM     │
│             │    │             │    │ 类型        │    │ 语句        │    │ 高级特性     │
│ ✅ 已完成    │    │ 🎯 即将学习  │    │ 📅 计划中    │    │ 📅 计划中    │    │ 📅 计划中    │
└─────────────┘    └─────────────┘    └─────────────┘    └─────────────┘    └─────────────┘
📋 详细学习计划
章节 主要内容 预计时间 难度 状态
📚 第1章 环境搭建、Hello World 1-2天 ⭐⭐ ✅ 已完成
📝 第2章 基础语法、变量类型 3-4天 ⭐⭐⭐ 🎯 下一步
🔢 第3章 数据类型、类型转换 2-3天 ⭐⭐⭐ 📅 计划中
🔄 第4章 流程控制、循环语句 3-4天 ⭐⭐⭐⭐ 📅 计划中
🚀 第5章 GraalVM高级特性 5-7天 ⭐⭐⭐⭐⭐ 📅 计划中

🎯 学习建议
• 每章学完后及时复习和练习
• 遇到问题及时查阅文档或求助
• 保持每天编码的习惯
• 循序渐进,不要急于求成

📋 练习作业

💪 实践出真知:通过练习巩固所学知识

🎯 基础练习(必做)

练习1:个性化Hello World ⭐⭐

java 复制代码
// 修改Hello World程序,输出你的个人信息
System.out.println("你好,我是 [你的姓名]");
System.out.println("我今年 [你的年龄] 岁");
System.out.println("我正在学习Java编程!");

练习2:简单计算器 ⭐⭐⭐

java 复制代码
// 创建Calculator.java,实现基本数学运算
public class Calculator {
    public static void main(String[] args) {
        // 实现加减乘除运算并输出结果
    }
}
🚀 进阶练习(选做)

练习3:IDE熟练度 ⭐⭐⭐⭐

  • 🎯 熟练使用IntelliJ IDEA的快捷键
  • 🎯 尝试不同的主题和插件
  • 🎯 学会使用调试功能

练习4:环境验证 ⭐⭐⭐⭐⭐

  • 🎯 运行java -version确认GraalVM信息
  • 🎯 使用SDKMAN管理多个Java版本
  • 🎯 测试native-image功能(高级)

📚 推荐学习资源

🌟 官方文档
资源 类型 难度 推荐指数
🚀 GraalVM官方文档 官方文档 ⭐⭐⭐ ⭐⭐⭐⭐⭐
☕ Oracle Java文档 官方文档 ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
💻 IntelliJ IDEA教程 工具文档 ⭐⭐ ⭐⭐⭐⭐
🛠️ SDKMAN文档 工具文档 ⭐⭐ ⭐⭐⭐⭐
📖 经典书籍

📚 推荐阅读
Java编程思想 - 深入理解Java核心概念
Effective Java - Java最佳实践指南
Java核心技术 - 全面的Java技术参考


🎬 下一章预告

📝 Java基础语法 - 变量与数据类型

🎯 下章学习内容

  • 🔢 Java数据类型详解
  • 📝 变量的声明和使用
  • 🔄 类型转换机制
  • 💾 内存分配原理
  • 🎨 命名规范和最佳实践
    🚀 准备好了吗?让我们继续Java学习之旅!
    💡 学习小贴士

坚持每天练习,Java编程技能会快速提升! 记住:Practice makes perfect! 🌟


📧 有问题?欢迎在评论区讨论交流!
⭐ 觉得有用?别忘了点赞收藏!

相关推荐
北京_宏哥几秒前
《刚刚问世》系列初窥篇-Java+Playwright自动化测试-33-JavaScript的调用执行-上篇 (详细教程)
java·前端·javascript
自由的疯2 分钟前
java程序员怎么从Python小白变成Python大拿?(七)
java·后端·trae
风的归宿554 分钟前
log4j2异步模式源码解析
java·后端
种子q_q40 分钟前
Java中的代理模式
java·后端·面试
桦说编程1 小时前
一文帮你掌握集合类库常见工具方法
java·后端·性能优化
二狗哈1 小时前
制作一款打飞机游戏87:最后冲刺
java·前端·游戏
Chesnut.1 小时前
【2025.08.06最新版】Android Studio下载、安装及配置记录(自动下载sdk)
android·java
jackson凌2 小时前
IDEA快捷键壁纸分享
java·ide·intellij-idea
静谧之心2 小时前
分层架构下的跨层通信:接口抽象如何解决反向调用
java·开发语言·设计模式·架构·golang·k8s·解耦
摸鱼一级选手2 小时前
Java 集合框架深层原理:不止于 “增删改查”
java·开发语言·后端