当前位置:首页>java>Java开发上手指南:【编程起点】Java开发初探

Java开发上手指南:【编程起点】Java开发初探

  • 2026-01-14 08:28:31
Java开发上手指南:【编程起点】Java开发初探

1. 环境搭建:构建坚实的开发基础

Java开发环境的搭建是入门的第一步,需要完成JDK安装、环境变量配置和开发工具选择三个核心步骤。

1.1 JDK安装与版本选择

JDK(Java Development Kit)是Java开发的核心工具包,它包含了编译器(javac)、运行时环境(JRE)和其他必要工具。

  • 版本选择建议:
    对于初学者,推荐选择长期支持(LTS)版本,如JDK 11、JDK 17或JDK 21。这些版本稳定性强,社区支持完善。
  • 下载与安装:
    1. 访问Oracle官网或OpenJDK网站下载适合你操作系统的安装包。
    2. Windows用户运行.exe安装程序,macOS用户使用.dmg或.tar.gz包,Linux用户可通过包管理器安装。
    3. 安装过程中记下JDK的安装路径(如C:\Program Files\Java\jdk-17),后续配置会用到。

1.2 环境变量配置

配置环境变量是为了让系统在任何位置都能识别Java命令。

  • JAVA_HOME变量:
    指向JDK的安装根目录,使系统知晓JDK的位置。
  • PATH变量:
    添加%JAVA_HOME%\bin(Windows)或$JAVA_HOME/bin(macOS/Linux),使系统能在任何命令行窗口中使用javajavac等工具。

表:各操作系统环境变量配置方法对比

操作系统配置文件关键命令/操作
Windows
系统属性 → 环境变量
新建JAVA_HOME变量,编辑Path添加%JAVA_HOME%\bin
macOS
~/.zshrc 或 ~/.bash_profile
添加export JAVA_HOME=/path/to/jdkexport PATH=$JAVA_HOME/bin:$PATH
Linux
~/.bashrc 或 ~/.zshrc
同macOS,然后执行source ~/.bashrc使配置生效

验证配置是否成功:打开终端/命令行,输入java -versionjavac -version,如果显示版本信息则说明配置正确。

1.3 开发工具选择

合适的集成开发环境(IDE)能极大提升编码效率。

  • IntelliJ IDEA:
    业界主流,智能代码补全和强大的调试功能对新手友好。社区版免费,旗舰版功能更全面。
  • Eclipse:
    开源免费,插件生态丰富,适合学习使用。
  • VS Code:
    轻量级编辑器,通过Java扩展包可获得不错的Java开发体验。

对于初学者,我推荐IntelliJ IDEA Community版,它平衡了功能性和易用性。

2. 第一个Java程序:HelloWorld详解

让我们从经典的HelloWorld程序开始,理解Java程序的完整执行流程。

2.1 编写源代码

创建名为HelloWorld.java的文件,输入以下代码:

// HelloWorld.javapublicclassHelloWorld {publicstaticvoidmain(String[] args) {        System.out.println("Hello, Java!");    }}

代码解读

  • // HelloWorld.java
    是单行注释,用于解释代码。
  • public class HelloWorld
    声明了一个公共类,类名必须与文件名完全一致(区分大小写)。
  • public static void main(String[] args)
    是程序的入口点,JVM从这里开始执行。
  • System.out.println()
    用于向控制台输出文本。

2.2 编译与运行过程

Java程序遵循"一次编写,到处运行"的原则,这一特性通过编译+解释两步实现。

  1. 编译:
    在终端中,使用javac HelloWorld.java命令将源代码(.java文件)编译成JVM可执行的字节码(.class文件)。此过程会检查语法错误。
  2. 运行:
    使用java HelloWorld命令启动JVM,JVM会加载字节码文件并将其解释为当前操作系统能执行的机器码。

关键理解:字节码是一种跨平台的中间代码,这正是Java跨平台能力的核心。不同平台上的JVM负责将相同的字节码"翻译"成对应的本地机器指令。

2.3 常见问题排查

  • 错误提示找不到或无法加载主类 HelloWorld

    • 原因:
      通常是因为类名与文件名不匹配,或者字节码文件不在当前目录。
    • 解决:
      检查类名是否与文件名一致(包括大小写),并确保在正确目录下执行命令。
  • 错误提示编码不支持的字符

    • 原因:
      文件保存的编码格式与系统默认编码不一致。
    • 解决:
      编译时指定编码格式,如javac -encoding UTF-8 HelloWorld.java

3. IntelliJ IDEA高效开发配置

IntelliJ IDEA是提升Java开发效率的利器,正确的配置能让你事半功倍。

3.1 核心配置要点

  • SDK配置:
    首次启动时,在"Project Structure"中设置"Project SDK",指向你安装的JDK路径。
  • 主题与字体:
    根据个人喜好调整编辑器外观和字体大小,减少视觉疲劳。
  • 自动导包:
    开启"Settings → Editor → General → Auto Import"中的优化导入选项,IDEA会自动管理import语句。

3.2 效率技巧

  1. 智能代码补全:
    使用Ctrl+Space(Windows/Linux)或Cmd+Space(Mac)触发,IDEA会根据上下文提供精准建议。
  2. 代码模板:
    使用快捷缩写,如输入sout然后按Tab会快速生成System.out.println();
  3. 重构工具:
    右键点击代码元素,使用"Refactor"功能可安全地重命名变量、提取方法等。
  4. 调试技巧:
    在代码行号旁点击设置断点,使用Debug模式运行程序,可以逐行执行并观察变量值的变化。

3.3 AI插件演示

现代IDE的强大之处在于AI插件的集成。以安装通义灵码为例:

  1. 在IDEA中打开插件市场(Settings → Plugins → Marketplace)
  2. 搜索"Tongyi Lingma"或"通义灵码"并安装
  3. 重启IDEA后,在右侧边栏可以看到AI助手面板

实战演示:在编辑器中输入注释// 使用HashMap存储学生姓名和成绩,然后激活AI补全,插件可能会生成以下代码:

// 使用HashMap存储学生姓名和成绩Map<String, Integer> studentScores = newHashMap<>();studentScores.put("张三"90);studentScores.put("李四"85);

AI插件不仅能补全代码,还能解释复杂代码段、检测潜在错误并提供优化建议。

4. Java代码规范与最佳实践

良好的代码规范是专业开发的标志,它提高了代码的可读性和可维护性。

4.0 关键字和标识符

Java关键字和标识符是编程中最基础的组成部分。下面这个表格能帮你快速把握它们的核心区别。

特性
Java关键字
Java标识符
本质
语言内置的、具有特殊含义的保留字
程序员自定义的、用于命名的字符序列
作用
表示数据类型、程序结构、访问控制等
为变量、类、方法、包等元素提供名称
决定性
由Java语言规范预先定义,不可更改
由程序员根据规则和约定自行定义
灵活性
数量固定,不能新增或修改其含义
可根据需要自由命名(需遵循规则)
示例class
ifpublicstaticvoid
userName
calculateTotalMyClass

Java关键字

Java关键字是语言的核心,每个都有特定用途。根据功能,它们可以分为几大类:

  • 访问权限控制:
    publicprotectedprivate 以及默认(无关键字)用于设置访问范围,从完全公开到仅限本类。
  • 定义类、方法与变量:
    • class
      interfaceenum 用于声明类型。
    • static
       表示成员属于类本身而非实例。
    • final
       修饰类(不可继承)、方法(不可重写)或变量(常量)。
    • abstract
       表示抽象类或抽象方法(需子类实现)。
  • 流程控制:
    包括条件分支(if-elseswitch-case-default)和循环(forwhiledo-while),以及中断(break)、跳过(continue)和返回(return)。
  • 异常处理:
    try-catch-finally 用于捕获和处理异常,throw 和 throws 用于主动抛出异常。
  • 多线程与高级特性:
    synchronized 实现同步,volatile 保证变量可见性,transient 指定不序列化的字段。

使用关键字时需注意:所有关键字均为小写不能用作标识符(如变量名),否则会导致编译错误。

Java标识符

标识符是你为程序元素(如变量、方法、类)起的名字。命名需遵循硬性规则,并建议遵守通用约定。

  • 硬性规则:
    • 必须以字母(A-Z/a-z)、下划线(_)或美元符号($)开头。
    • 后续字符可以是字母、数字、下划线或美元符号。
    • 不能是Java关键字或保留字
    • 区分大小写(myVar和 myvar是不同的标识符)。
  • 通用约定(软性规范):
    • 类名
      使用帕斯卡命名法(大驼峰),即每个单词首字母大写,如 StudentManager
    • 方法名和变量名
      使用驼峰命名法(小驼峰),即首单词小写,后续单词首字母大写,如 getStudentNamefirstName
    • 常量名
      大写,单词间用下划线连接,如 MAX_CONNECTIONS
  • 命名技巧:
    名称应清晰且有明确含义,避免使用单字符(除临时变量)或拼音。例如,用 studentAge 而非 a 或 nl

关键字与标识符的实际应用

理解理论后,来看一个代码示例,直观感受它们如何协同工作:

// 关键字'public'、'class'定义了一个公共类,标识符是'Student'publicclassStudent {// 关键字'private'、'String'定义私有实例变量,标识符是'name'private String name; // 关键字'public'、'static'、'final'定义公共静态常量,标识符是'MAX_AGE'publicstaticfinalintMAX_AGE=100// 关键字'public'定义公共方法,标识符是'setName'// 参数标识符是'newName'publicvoidsetName(String newName) { // 关键字'this'指代当前对象实例,'name'是实例变量标识符this.name = newName;     }// 关键字'public'、'static'、'void'定义公共静态方法,标识符是'main'publicstaticvoidmain(String[] args) {// 关键字'new'用于创建对象,'Student'是类标识符,'student'是局部变量标识符Studentstudent=newStudent(); // 方法调用,'student'、'setName'是标识符        student.setName("小明"); // 关键字'if'进行条件判断,'MAX_AGE'是常量标识符if (student.getAge() > MAX_AGE) { // 关键字'throw'、'new'抛出异常,'IllegalArgumentException'是类标识符thrownewIllegalArgumentException("年龄不合法");         }    }}

⚠️ 常见误区与避坑指南

  • 误用关键字作标识符:
    这是最常见的错误,如 int class = 10; 会导致编译失败,因为 class 是关键字。
  • 忽略大小写敏感性:
    String username; 和 String userName; 声明的是两个不同的变量。保持命名一致至关重要。
  • 违反命名约定:
    虽然 String my_name;(蛇形命名法)语法正确,但在Java中更推荐使用 String myName;(驼峰命名法)以保持代码风格统一。
  • 使用含糊不清的缩写:
    标识符 calc 的含义不明确,而 calculateOrderTotal 则清晰表达了其功能。

4.1 注释方式

Java支持三种注释形式:

  • 单行注释:
    // 注释内容,用于简短说明
  • 多行注释:
    /* 注释内容 */,用于注释代码块
  • 文档注释:
    /** 注释内容 */,用于生成API文档(Javadoc)
/** * 学生类,表示一个学生实体 * @author 你的名字 * @version 1.0 */publicclassStudent {private String name; // 学生姓名/**     * 获取学生姓名     * @return 姓名字符串     */public String getName() {return name;    }}

使用javadoc命令可以为上述文档注释生成专业的API文档。

4.2 命名规范

遵循统一的命名规范让代码更易读:

  • 类名:
    大驼峰,首字母大写,如StudentManagerHttpClient
  • 方法名:
    小驼峰,首字母小写,如getName()calculateTotalScore()
  • 变量名:
    小驼峰,有意义,如studentCount而非sc
  • 常量名:
    全大写,下划线分隔,如MAX_SIZEDEFAULT_TIMEOUT
  • 包名:
    全小写,点分隔,如com.example.myproject

4.3 代码书写风格

  • 缩进:
    使用4个空格(非Tab键)进行缩进
  • 大括号:
    推荐K&R风格,左大括号不换行:
if (condition) {// 代码块else {// 其他代码}
  • 行长限制:
    每行代码不超过80-120字符,便于阅读
  • 导入组织:
    使用IDE的自动导入优化功能,移除未使用的导入语句

5. 代码生成工具与质量检测工具

🔧 主流AI代码生成工具详解

首先,通过下表快速了解三款工具的核心定位与特点。

工具名称
核心定位
主要优势
典型使用场景
GitHub Copilot
基于AI的智能代码补全助手
智能程度高,社区支持强大,实时建议响应快
日常开发中的代码补全、根据注释生成代码片段、快速学习新语言或框架
通义灵码
深度优化中文场景的智能编码助手
对中文注释的理解和生成准确率高,对Spring Boot、Dubbo等国内主流Java框架有良好支持
中文开发团队协作、使用阿里云相关生态的云原生项目
腾讯云 CodeBuddy
理解复杂需求的智能编程助手,提供从编码到部署的全链路支持
智能代码生成能力强,能理解复杂需求,提供环境沙箱Serverless一键部署等自动化功能
全栈项目快速原型开发、微信小程序/小游戏开发、企业级项目重构

1. GitHub Copilot

  • 是什么:
    由GitHub、OpenAI和微软联合推出的AI编程助手,通过学习大量公共代码库,能在您编码时提供实时的代码建议和补全。
  • 怎么用:
    • 代码补全
      编写代码时,Copilot会给出灰色文本提示,按 Tab 键即可接受建议。
    • 从注释生成代码
      编写描述功能的注释(如// 函数:计算数组平均值),Copilot可能会生成完整的函数实现。
  • 官方文档:

GitHub Copilot 文档

2. 通义灵码

  • 是什么:
    由阿里云推出的智能编码助手,基于通义大模型,特别针对中文语义和国内主流技术栈进行了优化。
  • 怎么用:
    • 代码补全与生成
      提供行级/函数级代码建议,对中文注释的理解尤为准确。
    • 智能问答与故障诊断
      内置的智能问答功能可以解答技术问题,并能分析代码异常,提供修复建议。
    • 工程级变更
      支持理解项目上下文,进行跨多个代码文件的协同修改。
    1. 官方文档

    官方文档-智能编码助手通义灵码

    3. 腾讯云 CodeBuddy

    • 是什么:
      腾讯云推出的智能编程助手,旨在成为全流程开发伙伴,不仅辅助编码,还集成了一些提升开发效率的自动化功能。
    • 怎么用:
      • 智能代码生成
        能够理解复杂的自然语言需求,生成高质量代码。
      • Craft智能体与MCP市场
        通过智能体模式,CodeBuddy可以自动进行任务拆解和规划。其集成的MCP市场提供了扩展AI能力的各种工具。
      • 自动化工具链
        提供如环境沙箱(自动解决环境配置问题)、Serverless一键部署等特色功能,帮助开发者简化编码之外的繁琐工作。
      1. 官方文档:

      CodeBuddy 入门指南

      💡 如何选择代码生成工具?

      选择哪款工具主要取决于您的具体需求和场景:

      • 追求极致补全与全球生态:
        如果您的团队国际化程度高,深度使用GitHub和微软技术栈,GitHub Copilot是可靠选择。
      • 专注中文场景与Java生态:
        如果您的团队主要面向国内市场,技术栈以Java/Spring Cloud、阿里云为主,通义灵码的中文优化和框架适配会更有优势。
      • 需要全链路支持与自动化:
        如果您是独立开发者或初创团队,希望从原型到部署都能快速迭代,腾讯云 CodeBuddy提供的自动化工具链能显著提升效率。
      • 重视数据安全与合规:
        在金融、政务等对数据安全和合规性要求极高的场景,CodeBuddy通义灵码都提供了通过国内等保认证的私有化部署方案,是更稳妥的选择。

      🔍 AI代码质量检测工具详解

      AI生成的代码需要严格的质量把关。代码质量检测工具主要分为以下几类:

      1. IDE内嵌实时检测工具

      这类工具在您编写代码的同时提供实时反馈,像一位经验丰富的审查员。-   **代表工具**:**Snyk Code**(专注于安全漏洞)、**SonarLint**(SonarQube的本地客户端,提供即时质量反馈)。-   **使用方式**:在IDE的扩展商店安装对应插件。安装后,工具会自动扫描您打开的代码文件,并以高亮形式提示潜在的安全漏洞、代码异味或Bug。
      特性
      Snyk Code
      SonarLint
      核心定位安全漏洞专项扫描代码质量全面检查
      主要目标
      识别安全漏洞(如XSS、SQL注入)
      提升代码可维护性,发现代码异味、潜在bug
      扫描重点
      代码中的安全缺陷
      代码风格、复杂度、重复率、潜在错误
      核心功能
      实时检测、提供修复建议、依赖项扫描
      实时代码分析、质量问题提示、团队规则统一
      典型使用方式
      CLI命令、IDE插件、CI/CD集成
      IDE插件集成
      Snyk Code:安全漏洞侦探

      Snyk Code 是一款专注于识别代码中安全漏洞的AI驱动工具。它能在编写代码时实时提示潜在的安全风险,并提供修复建议。

      如何使用Snyk Code

      1. 安装与认证

        npm install -g snyksnyk auth
        • IDE插件:
          在VS Code、IntelliJ IDEA等开发环境中,可以直接安装Snyk插件。安装后通常需要在插件设置中配置认证。
        • 命令行(CLI):
          通过npm全局安装Snyk CLI后,需要使用 snyk auth 命令进行认证,该命令会引导你在浏览器中登录Snyk账户。
      2. 进行扫描

        • 扫描项目:
          在项目根目录下执行 snyk code test 命令,Snyk Code会分析你的源代码并输出详细的安全漏洞报告,包括漏洞位置、严重级别和修复建议。
        • 扫描依赖:
          使用 snyk test 命令可以检测项目依赖库中的已知漏洞。使用 snyk fix 命令可以尝试自动修复某些类型的漏洞。
      3. 集成到工作流:

        Snyk可以集成到CI/CD流程(如GitHub Actions)中,实现每次代码提交时的自动安全扫描。

      SonarLint:代码质量教练

      SonarLint 是一个代码质量检测工具,它像一位实时教练,在IDE中即时提示代码质量问题,帮助开发者养成良好的编码习惯。

      如何使用SonarLint

      1. 安装插件 在IDE的插件市场搜索"SonarLint"并安装。主流的IDE如IntelliJ IDEA、Eclipse、VS Code都支持。

      2. 基本使用

        • 实时检测:
          安装后,SonarLint会自动在代码编辑器中以波浪线标记问题。鼠标悬停可以看到问题描述和建议的修复方法。
        • 手动分析:
          可以对单个文件或整个项目右键选择使用SonarLint进行分析,并在问题窗口查看所有问题的列表。
      3. 高级配置(可选) 可以将SonarLint连接到SonarQube服务器,这样可以同步团队自定义的代码质量规则,保持团队所有成员代码规范的一致性。

      如何选择?

      简单来说,如果你的首要目标是防止安全漏洞(尤其在处理用户输入、涉及Web安全的项目中),Snyk Code的专项安全扫描更为关键。如果你的首要目标是提升代码可维护性、统一团队编码风格SonarLint的帮助会更直接。

      2. CI/CD集成与PR流水线工具

      这类工具在代码提交后、合并前进行强制性检查,确保入库代码的质量。-   **代表工具**:**SonarQube**(自建代码质量平台)、**SonarCloud**(SaaS版本的SonarQube)。-   **使用方式**:将其集成到持续集成流程中。例如,在GitHub Actions中配置一个步骤,在每次Pull Request时自动运行SonarQube扫描。扫描结果会以评论形式呈现在PR中,明确指出新引入的问题。

      🛠️ 使用SonarQube进行自动代码检测

      SonarQube是当前最成熟的与AI代码生成工具配套的质量保障平台。

      1. 启用AI代码检测

      SonarQube可以自动检测项目是否使用了GitHub Copilot等AI编码助手,并启用专门的AI代码质量分析工作流。

      • 操作步骤
        1. 确保版本:
          需要使用SonarQube Server 2025.1 LTA或更新版本。
        2. 授权访问:
          SonarQube管理员需要在SonarQube的GitHub应用设置中,为API访问启用对GitHub Copilot Business数据的“只读”权限。
        3. 切换质量门:
          在项目的质量配置中,将质量门切换为专为AI代码设计的版本,例如“Sonar way for AI Code”。这个质量门包含了针对AI生成代码特性的检测规则。
      • 效果
        完成以上步骤后,SonarQube会为检测到AI代码的项目打上“CONTAINS AI CODE”徽章。通过严格质量门检查的项目会显示“AI代码质量保证通过”徽章,清晰展示AI代码的质量状态。

      2. 集成到Maven/Gradle项目

      将SonarQube扫描集成到构建工具中,可以实现每次编译后的自动代码质量分析。 以下是一个基本的集成示例:

      Maven项目:在项目根目录的pom.xml中配置sonar-maven-plugin插件,并在执行命令时传递参数。

      <!-- 在pom.xml的build/plugins部分添加 --><plugin><groupId>org.sonarsource.scanner.maven</groupId><artifactId>sonar-maven-plugin</artifactId><version>3.9.1.2184</version><!-- 请使用最新版本 --></plugin>

      执行分析命令:

      mvn clean verify sonar:sonar \  -Dsonar.host.url=http://your-sonarqube-server:9000 \  -Dsonar.login=your-sonarqube-token

      Gradle项目:在build.gradle文件中应用SonarQube插件并进行配置。

      // 在build.gradle文件开头添加插件plugins {  id "org.sonarqube" version "4.0.0" // 请使用最新版本}// 配置SonarQube属性sonarqube {  properties {    property "sonar.host.url", "http://your-sonarqube-server:9000"    property "sonar.login", "your-sonarqube-token"  }}

      执行分析命令:

      gradle sonarqube

      3. 实现自动化CI/CD流水线

      为了实现真正的自动化,建议将SonarQube扫描作为CI/CD流水线(如Jenkins、GitLab CI/CD、GitHub Actions)的一个必需步骤。 以下是一个简化的GitHub Actions工作流示例:

      name:BuildandSonarQubeAnalysison:push:branches: [ maindevelop ]pull_request:branches: [ main ]jobs:build-and-scan:runs-on:ubuntu-lateststeps:-uses:actions/checkout@v2-name:SetupJDKuses:actions/setup-java@v2with:java-version:'17'distribution:'temurin'-name:BuildwithMavenrun:mvncleancompile-name:RunSonarQubeAnalysisrun:mvnsonar:sonar-Dsonar.login=${{secrets.SONAR_TOKEN}}env:GITHUB_TOKEN:${{secrets.GITHUB_TOKEN}}

      在这个流程中,每次推送到主干/开发分支或发起Pull Request时,都会自动触发构建和SonarQube扫描。您可以配置流水线,只有当SonarQube质量门通过时,才允许代码合并,从而有效阻断有质量问题的代码入库。

      💎 总结与建议

      建立开发环境,初探Java知识,初始VibeCoding相关的AI代码生成工具以及代码质量检测。

      最新文章

      随机文章

      基本 文件 流程 错误 SQL 调试
      1. 请求信息 : 2026-02-08 21:41:16 HTTP/2.0 GET : https://f.mffb.com.cn/a/460669.html
      2. 运行时间 : 0.126410s [ 吞吐率:7.91req/s ] 内存消耗:4,723.59kb 文件加载:140
      3. 缓存信息 : 0 reads,0 writes
      4. 会话信息 : SESSION_ID=524c39aa9da46d58351d2ad109ff9d1b
      1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
      2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
      3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
      4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
      5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
      6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
      7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
      8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
      9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
      10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
      11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
      12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
      13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
      14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
      15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
      16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
      17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
      18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
      19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
      20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
      21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
      22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
      23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
      24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
      25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
      26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
      27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
      28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
      29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
      30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
      31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
      32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
      33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
      34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
      35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
      36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
      37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
      38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
      39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
      40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
      41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
      42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
      43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
      44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
      45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
      46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
      47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
      48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
      49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
      50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
      51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
      52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
      53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
      54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
      55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
      56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
      57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
      58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
      59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
      60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
      61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
      62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
      63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
      64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
      65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
      66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
      67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
      68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
      69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
      70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
      71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
      72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
      73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
      74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
      75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
      76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
      77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
      78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
      79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
      80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
      81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
      82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
      83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
      84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
      85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
      86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
      87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
      88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
      89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
      90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
      91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
      92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
      93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
      94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
      95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
      96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
      97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
      98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
      99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
      100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
      101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
      102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
      103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
      104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
      105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
      106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
      107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
      108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
      109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
      110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
      111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
      112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
      113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
      114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
      115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
      116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
      117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
      118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
      119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
      120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
      121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
      122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
      123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
      124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
      125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
      126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
      127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
      128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
      129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
      130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
      131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
      132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
      133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
      134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
      135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
      136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
      137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
      138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
      139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
      140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
      1. CONNECT:[ UseTime:0.000580s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
      2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000708s ]
      3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000295s ]
      4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.001190s ]
      5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000568s ]
      6. SELECT * FROM `set` [ RunTime:0.000607s ]
      7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000631s ]
      8. SELECT * FROM `article` WHERE `id` = 460669 LIMIT 1 [ RunTime:0.002829s ]
      9. UPDATE `article` SET `lasttime` = 1770558076 WHERE `id` = 460669 [ RunTime:0.002752s ]
      10. SELECT * FROM `fenlei` WHERE `id` = 65 LIMIT 1 [ RunTime:0.000245s ]
      11. SELECT * FROM `article` WHERE `id` < 460669 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000506s ]
      12. SELECT * FROM `article` WHERE `id` > 460669 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000382s ]
      13. SELECT * FROM `article` WHERE `id` < 460669 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002217s ]
      14. SELECT * FROM `article` WHERE `id` < 460669 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.005369s ]
      15. SELECT * FROM `article` WHERE `id` < 460669 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.020279s ]
      0.128419s