- 博客(54)
- 资源 (8)
- 收藏
- 关注
原创 【零基础学MySQL】第十六章:Java JDBC 操作 MySQL
摘要:本文详细介绍了使用JDBC操作MySQL数据库的全过程。首先阐述JDBC的核心概念和工作原理,包括Driver、DriverManager等核心组件及其7步工作流程。随后讲解环境搭建,重点说明MySQL Connector/J驱动的两种引入方式(手动下载和Maven依赖)及数据库准备工作。最后通过CRUD操作示例,展示查询数据的具体实现,强调8.x版本驱动的关键差异、资源关闭注意事项以及PreparedStatement防SQL注入等最佳实践。全文为Java开发者提供了从基础到实践的完整JDBC操作指
2025-11-05 07:30:00
722
原创 【零基础学MySQL】第十四章:MySQL主从架构
MySQL主从架构通过主服务器处理写操作、从服务器处理读操作的方式实现读写分离,提高数据库性能和可用性。其核心原理基于二进制日志,主服务器记录数据变更事件,从服务器通过I/O线程和SQL线程完成数据同步。搭建过程包括环境准备、主从服务器配置、复制用户创建等步骤,需确保server-id唯一、正确配置二进制日志格式。该架构能有效分担数据库压力,提供数据备份保障,并支持高可用性和负载均衡,是应对高并发、大数据量场景的重要解决方案。
2025-11-04 19:30:00
1020
原创 【零基础学MySQL】第十五章:分库分表
摘要:随着数据量激增,单库单表MySQL架构面临性能、存储和可用性瓶颈。分库分表技术通过数据分散存储解决这些问题,主要分为垂直拆分(按业务或列拆分)和水平拆分(按数据规则分散)。垂直拆分降低单库复杂度但增加跨库查询难度,水平拆分提升性能但需合理选择分片键。该技术能显著提升系统性能、扩展存储容量并提高可用性,但也面临跨库事务、数据一致性等挑战,需结合具体业务场景选择合适的拆分方案和工具实现。
2025-11-04 19:30:00
608
原创 【零基础学MySQL】第十三章:数据库备份
摘要: MySQL数据库备份是保障数据安全的关键防线,本文系统性地讲解了备份的重要性和核心方法。通过真实案例揭示了数据丢失风险,详细对比了全量/增量/差异备份的优缺点,介绍了物理备份与逻辑备份的本质区别。重点剖析了mysqldump逻辑备份工具的实际应用(包括全库/单库/单表备份及恢复),并推荐了生产环境中更高效的Percona Xtrabackup物理热备份工具。文章为MySQL数据库管理员提供了从基础到进阶的完整备份知识体系,帮助构建可靠的数据保护方案。
2025-11-04 07:30:00
697
原创 【零基础学MySQL】第十二章:DCL详解
MySQL DCL(数据控制语言)详解:用户与权限管理 摘要:本文全面介绍MySQL DCL的核心功能,包括用户管理和权限控制两大模块。DCL作为保障数据库安全的关键技术,通过CREATE USER、ALTER USER、DROP USER实现用户生命周期管理,通过GRANT和REVOKE进行细粒度权限控制。文章详细讲解了各层级的权限分配(全局、数据库、表、列级),并提供实际应用场景中的操作示例。特别强调权限的最小化原则和WITH GRANT OPTION的谨慎使用,帮助读者构建安全的数据库访问体系。
2025-11-03 19:30:00
1103
原创 【零基础学MySQL】第十一章:事务
摘要:本文深入解析MySQL事务机制,从ACID特性(原子性、一致性、隔离性、持久性)实现原理到并发事务三大问题(脏读、不可重复读、幻读)。通过转账等业务场景示例,详细说明Undo Log、Redo Log等核心技术如何保障数据可靠性,并分析不同隔离级别的应用场景。文章既涵盖事务基础概念,又结合实战经验,帮助开发者全面掌握MySQL事务的正确使用方法与常见问题解决方案。
2025-11-03 07:30:00
1150
原创 【零基础学MySQL】第十章:表与表之间的关系及多表连接查询
本文详细讲解了MySQL数据库中的表关系设计和多表连接查询技术。首先介绍了三种表关系类型:一对一关系(用户表和用户详情表)、一对多关系(商品分类表和商品表)以及多对多关系(学生表和课程表通过中间表关联)。然后重点阐述了多表连接查询的实现,包括内连接(只返回满足关联条件的记录)、左/右外连接(返回主表全部记录及从表匹配记录)和全外连接(返回所有匹配记录),并提供了各种连接方式的SQL语法示例和实际应用场景。这些技术能有效解决关系型数据库中数据分散存储时的查询问题,是数据库开发中的核心技能。
2025-11-02 19:30:00
1610
原创 【零基础学MySQL】第八章:内置函数
本文详细介绍了MySQL中常用的内置函数,重点讲解了字符串函数和数值函数两大类核心工具。在字符串处理方面,涵盖了拼接函数(CONCAT/CONCAT_WS)、截取函数(SUBSTRING)、替换函数(REPLACE)以及大小写转换函数(UPPER/LOWER),通过示例展示了这些函数在实际数据处理中的应用。数值函数部分则介绍了基本运算(ABS/ROUND/CEIL/FLOOR)、随机数生成(RAND)以及统计函数(SUM/AVG),说明了如何利用这些函数进行精确的数值计算和统计分析。这些内置函数能够显著提升
2025-11-01 19:30:00
1011
原创 【零基础学MySQL】第七章:DQL 详解
MySQL DQL(数据查询语言)是数据库操作的核心功能,主要通过SELECT语句实现数据检索。文章从基础语法到高级应用,全面解析DQL的使用方法。首先介绍了SELECT语句的基本结构及必选的FROM子句,通过创建示例表(学生表和班级表)进行演示。然后详细讲解了SELECT子句的各种用法(单列查询、列重命名、去重等)、FROM子句的表指定功能,以及WHERE子句的条件过滤操作(比较运算符、范围查询、模糊匹配等)。通过丰富的示例代码和结果展示,帮助读者系统掌握MySQL数据查询的核心技术,为实际数据库操作提供
2025-11-01 07:30:00
904
原创 【零基础学MySQL】第六章:DML 详解
本文详细介绍了MySQL数据库中的DML(数据操纵语言)操作,包括INSERT、UPDATE、DELETE三大核心语句。首先阐述了DML的特点:原子性、实时性和可回滚性。然后通过学生表实例,详细讲解了INSERT操作的各种用法(单条插入、批量插入、插入查询结果)及注意事项。接着介绍了UPDATE操作的基本语法和多表关联更新方法,强调必须使用WHERE条件的重要性。最后提到DELETE语句的作用(因篇幅限制未展开)。全文旨在帮助开发者掌握MySQL数据操作的核心技能,提高数据库操作效率与安全性。
2025-10-31 19:30:00
1150
原创 【零基础学MySQL】第九章:约束
MySQL约束是确保数据完整性的关键工具,主要包括主键约束(唯一标识记录)、外键约束(维护表间关联)、唯一约束(防止字段重复)等。主键约束要求字段唯一且非空,可自增;外键约束通过ON DELETE/UPDATE策略处理关联数据;唯一约束允许NULL值但禁止重复。合理使用约束可防止无效数据、保证关联一致性并简化业务逻辑。约束适用于InnoDB引擎,需注意字段类型匹配和操作策略选择。这些约束共同维护数据库数据的准确性和可靠性。
2025-10-31 14:33:04
120
原创 【零基础学MySQL】第五章:数据类型与运算符
MySQL数据类型和运算符是数据库开发的核心基础。本文重点讲解数值型(整数与浮点)、字符串型(CHAR/VARCHAR)、日期时间型(DATETIME/TIMESTAMP)和枚举集合型(ENUM/SET)等主要数据类型的选择原则和使用场景。特别强调DECIMAL适用于精确计算(如金额),TIMESTAMP自动处理时区等关键技巧。通过实际案例演示如何选择最优数据类型以节省空间并提升性能,帮助开发者规避常见数据类型选择误区。
2025-10-31 07:30:00
1841
原创 【零基础学MySQL】第四章:DDL详解
MySQL中的DDL(数据定义语言)负责数据库结构的创建与管理。本文概述了数据库级操作(CREATE/ALTER/DROP DATABASE)和表级操作(CREATE/ALTER/DROP TABLE)。重点演示了表的创建,包括列定义、约束条件(主键、唯一、非空等)、存储引擎选择和注释添加。详细讲解了ALTER TABLE的多种应用场景:添加/修改/删除列、添加约束、修改表名等,并强调DDL操作的高风险性(不可回滚、数据丢失风险)。通过用户表示例展示了最佳实践,帮助开发者规范数据库设计。
2025-10-30 19:30:00
1972
原创 【零基础学MySQL】第三章:MySQL核心概念
MySQL数据库基础架构包括服务器(核心组件,处理SQL请求)、数据库(逻辑数据集合,用于隔离业务数据)和表(结构化存储单元,包含字段和记录)。数据结构关键点包括字段(严格数据类型定义)、主键(唯一行标识)、外键(关联表约束)和索引(加速查询)。数据约束(如非空、唯一)确保数据完整性和一致性,避免无效或重复数据,是高效数据管理的基础。
2025-10-30 07:30:00
1960
原创 【零基础学MySQL】第二章:SQL类型
SQL 是结构化查询语言,用于管理关系型数据库,分为五大核心类型: DDL(数据定义语言):管理数据库结构(如创建、修改、删除表)。 DML(数据操作语言):增删改数据记录(如插入、更新、删除)。 DQL(数据查询语言):查询数据(SELECT 及其组合)。 DCL(数据控制语言):管理权限(授权、撤销)。 TCL(事务控制语言):控制事务(提交、回滚)。 不同数据库支持标准 SQL,但存在方言差异(如分页语法)。掌握这些类型能高效操作数据库。
2025-10-29 19:30:00
1233
原创 【零基础学MySQL】第一章:MySQL介绍与安装
MySQL是一款开源的高性能关系型数据库管理系统,支持多平台运行并提供可靠的数据存储方案。本文介绍了MySQL的下载安装步骤,包括Windows环境变量配置、Linux和macOS的安装命令,以及验证安装的方法。通过详细的图文指引,帮助用户快速完成MySQL的安装部署,为数据库开发奠定基础。MySQL凭借其开源免费、高性能和易用性等特点,成为各类应用程序的理想数据库选择。
2025-10-24 19:30:00
783
原创 【Java零基础·第16章】:反射机制详解
Java反射机制允许程序在运行时动态获取类信息、创建对象和调用方法,无需在编译期确定具体类。反射的核心价值在于打破编译期类型束缚,提高代码灵活性和扩展性,是许多框架的底层基础。获取Class对象有四种方式:类型名.class、对象.getClass()、Class.forName()和类加载器.loadClass()。反射提供了动态操作类的能力,但需注意同一类型的Class对象唯一,不同类型则不同。
2025-10-20 19:30:00
1764
原创 【Java零基础·第15章】:网络编程
本文介绍了Java网络编程的核心知识,包括网络基础概念、UDP和TCP协议的实现方式。主要内容涵盖IP地址、端口号、网络协议等基础概念,并通过代码示例演示了UDP和TCP协议的编程实现。UDP部分展示了无连接的数据报发送与接收过程;TCP部分则演示了面向连接的客户端-服务器通信模型。文章提供了完整的代码示例,帮助开发者快速掌握Java网络编程的基本技能,适用于各种网络通信场景的开发需求。
2025-10-20 07:30:00
1548
原创 【Java零基础·第14章】:IO流
Java IO流是处理设备间数据传输的核心机制,主要分为字节流和字符流。字节流(InputStream/OutputStream)用于处理任意类型文件,字符流(Reader/Writer)专用于文本文件。文件读写通常使用FileInputStream/FileOutputStream和FileReader/FileWriter等节点流,为提高效率可配合缓冲流(如BufferedReader)使用。所有IO操作必须正确关闭流资源,推荐使用try-with-resources语法自动管理。处理流可以增强节点流功
2025-10-19 19:30:00
863
原创 【Java零基础·第13章】:多线程详解
本文全面介绍了Java多线程编程的核心概念和使用方法。首先讲解了程序、进程和线程的区别,以及串行、并行和并发的概念。然后详细阐述了两种创建线程的方式:继承Thread类和实现Runnable接口,并提供了代码示例。文章还介绍了Thread类的核心方法,如start()、sleep()、join()等。最后重点讨论了线程安全问题,通过售票系统案例展示了线程不安全的情况,并给出了使用同步代码块的解决方案。全文结构清晰,示例丰富,适合Java开发者学习多线程编程基础。
2025-10-19 07:30:00
491
原创 【Java零基础·第12章】Lambda与Stream API
本文系统介绍了Java集合框架的演进与实践,从基础迭代器到Java 8新特性。首先解析集合迭代器的核心概念与使用规范,对比数组与集合的差异;重点讲解Lambda表达式的语法规则与函数式接口(Predicate/Consumer/Function/Supplier)的应用场景;最后介绍方法引用作为Lambda的简化形式。通过代码示例演示了如何用这些新特性简化集合操作,如排序、过滤等常见任务,帮助开发者掌握现代化Java集合处理技巧。
2025-10-18 19:30:00
489
原创 【Java零基础·第11章】集合与泛型
本文详细介绍了Java集合框架与泛型的核心知识。首先对比了集合与数组的差异,指出集合的动态扩容和类型多样性优势。接着深入解析了Collection接口的常用方法,包括元素增删改查操作,特别强调了List和Set的实现差异。重点讲解了ArrayList和LinkedList这两种List实现类的底层原理与性能特点:ArrayList基于动态数组,适合随机访问;LinkedList基于双向链表,擅长频繁插入删除。文章通过大量代码示例展示了各种集合操作的实际应用,帮助开发者理解不同集合类型的适用场景,为Java集
2025-10-18 07:30:00
925
原创 【Java零基础·第10章】异常与常用类
本文详细介绍了Java异常处理机制和常用类的使用方法。主要内容包括: 异常处理机制: 异常分类(编译时/运行时异常) 异常体系结构(Throwable、Error、Exception) 异常处理关键字(try-catch-finally、throw-throws) 方法重写时的异常处理要求 Object类核心方法: clone()方法实现对象克隆 finalize()方法(已过时) final、finally、finalize的区别 常用类详解: 包装类的特点及使用(自动装箱/拆箱、缓存机制) 数学相关类B
2025-10-17 19:30:00
784
原创 【Java零基础·第9章】面向对象(五):内部类、代码块
本文全面解析Java面向对象编程(OOP)的高级特性。首先介绍OOP三大核心特征:封装(通过权限修饰符控制访问)、继承(extends关键字实现代码复用)和多态(动态绑定)。随后深入讲解类型转换机制,包括向上转型和向下转型的安全使用。重点剖析了四种内部类:成员内部类(访问外部类成员)、静态成员内部类(仅访问静态成员)、局部内部类(方法内定义)和匿名内部类(简化接口实现)。通过丰富示例展示了这些高级特性的实际应用场景,帮助开发者掌握Java面向对象编程的精髓,写出更优雅高效的代码。
2025-10-17 07:30:00
1625
原创 【Java零基础·第8章】面向对象(四):继承、接口与多态深度解析
本文深入解析Java面向对象三大核心特性:继承实现代码复用与扩展,抽象类提供不完全类定义,接口规范行为标准。重点讲解了继承的单继承限制与方法重写、抽象类的使用规则、接口的默认方法与多继承冲突解决,并通过Comparable接口示例展示了实际应用场景。这些特性共同构成了Java强大的面向对象编程体系,为实现代码复用、扩展和多态提供了坚实基础。
2025-10-16 19:30:00
942
原创 【Java零基础·第7章】面向对象(三):从继承到接口的深度解析
本文深入探讨了Java面向对象编程进阶知识,重点讲解了继承、抽象类和接口三大核心概念。继承通过extends实现代码复用,支持单继承和多层继承,子类可重写父类方法,使用super调用父类成员。Java所有类都继承自Object类,可重写toString()、equals()等方法。final关键字可修饰类、方法和变量,限制继承和修改。这些概念是Java架构设计的重要基础,掌握它们有助于构建更健壮、可扩展的应用程序。
2025-10-16 07:30:00
995
原创 【Java零基础·第6章】面向对象(二):构造器、封装、对象数组
本文总结了Java面向对象编程的核心概念。首先介绍了类与对象的区别,类作为模板定义特征和行为,对象是具体实例。重点讲解了包的作用、成员变量分类(静态变量与实例变量)及成员方法分类(静态方法与实例方法)。其次详细说明了构造器的特点和使用方式,包括无参、有参和全参构造器示例。最后阐述了封装的概念,通过四种权限修饰符(private/默认/protected/public)控制访问权限,并演示了如何通过私有化属性和公共getter/setter方法实现封装,以银行账户为例展示了封装的实际应用。这些内容构成了Jav
2025-10-15 19:30:00
1247
原创 【Java零基础·第5章】面向对象(一):类与对象
本文介绍了Java面向对象编程的基础概念,包括类与对象的创建、方法的使用以及成员变量的分类。主要内容: 类与对象:类如同设计图(如Coffee类),对象是具体实例(如美式咖啡)。通过new关键字创建对象,并设置其属性。 方法详解: 方法包含修饰符、返回值、方法名、参数和方法体五部分 Java参数传递是值传递(基本类型传值,引用类型传地址副本) 方法重载允许同名方法有不同参数列表 可变参数(...)处理不确定数量的参数 成员变量: 实例变量:每个对象独立拥有 静态变量:所有对象共享(用static修饰) 使用
2025-10-15 07:30:00
1028
原创 【Java零基础·第4章】数组
本文介绍了Java数组的基础概念、操作方法和内存机制。主要内容包括:数组作为有序容器存储相同类型数据的特点,基本操作如遍历;数组的静态和动态初始化方式;以及数组在内存中的存储原理,包括栈存引用、堆存元素,以及二维数组的内存分配。文章强调数组长度固定和下标访问范围的重要性,帮助读者全面掌握Java数组的使用。
2025-10-14 19:30:00
1697
原创 【Java零基础·第3章】流程控制语句
本文详细介绍了Java流程控制语句,包括输入输出、分支结构和循环结构。在输入输出部分,讲解了println/print/printf三种输出方式,以及使用Scanner类接收用户输入的方法。分支结构部分对比了if-else和switch两种条件判断方式,并介绍了JDK17新增的switch表达式语法。循环结构重点讲解了for循环的基本用法,通过示例展示了循环执行流程。掌握这些流程控制语句是编写实用Java程序的基础,能够有效控制代码执行顺序和逻辑。
2025-10-14 07:30:00
925
原创 【Java 零基础】IDEA的安装、卸载、推荐设置、插件安装
IDEA开发环境安装与配置指南:从JetBrains官网下载对应操作系统的Community版本,按照安装向导完成安装并创建快捷方式。卸载时需注意备份项目文件。推荐设置包括:统一编码方式为UTF-8、开启自动导包功能、禁用双击Shift搜索框等优化操作,这些设置可显著提升开发效率。安装路径建议选择非系统盘,安装时勾选"Add launchers dir to the PATH"以便命令行快速启动。
2025-10-14 07:04:32
424
原创 【Java零基础·第2章】:二进制、数据类型、运算符
Java基础语法摘要 本文系统介绍了Java基础语法核心内容。首先讲解了计算机二进制表示原理,包括进制转换方法(十进制转二进制的除2取余法)、计算机存储单位换算(1Byte=8bit)以及补码表示法。其次详细解析了Java数据类型体系,涵盖整数类型(byte/short/int/long)、浮点类型(float/double)和字符类型,并对比了它们的存储范围和精度特点。在类型转换部分,阐述了自动转换规则(小范围转大范围)和强制转换注意事项(精度损失风险)。最后全面讲解了运算符系统,包括算术运算符的整数除法
2025-10-13 22:53:27
914
原创 【Java 零基础·第1章】 从“HelloWorld”开始!
本文是Java零基础入门第一天教程,主要包含四部分内容:1)JDK环境搭建指南,包括下载安装、配置环境变量和验证步骤;2)第一个HelloWorld程序的编写、编译和运行方法;3)Java关键字、保留字和特殊值的分类说明;4)基础语法讲解,包括注释规范、标识符命名规则、基本数据类型和变量使用。教程通过图文结合的方式,详细演示了从环境配置到编写第一个Java程序的完整流程,适合零基础学习者快速入门Java编程。
2025-10-13 15:20:15
695
原创 Linux 扩展磁盘空间至根分区
摘要:要扩展Linux根分区(/),需将sda3未使用的14G空间分配给LVM逻辑卷。步骤:1)确认卷组名(ubuntu-vg);2)检查剩余空间(vgdisplay);3)扩展逻辑卷(lvextend -l +100%FREE);4)调整文件系统(resize2fs或xfs_growfs)。完成后使用df -h验证,根分区应从14G增至28G。注意操作前备份重要数据,避免快照冲突。提供一键执行命令快速完成操作。
2025-10-08 22:25:37
296
原创 MYSQL数据库中utf8mb4_unicode_ci和utf8mb4_general_ci的区别
MySQL中utf8mb4_unicode_ci和utf8mb4_general_ci是两种常用排序规则。前者基于Unicode标准,支持多语言精准排序但性能略低;后者是简化版,对特殊字符处理较粗略但速度更快。选择建议:多语言场景用unicode_ci,纯英文/性能敏感场景用general_ci。MySQL 8.0+推荐使用更新的utf8mb4_0900_ai_ci规则。注意索引字段的排序规则会影响查询效率。
2025-08-31 09:46:01
644
原创 宝塔的nginx反代nuxt3项目,重启后请求js文件内容被截断
宝塔nginx的/www/server/nginx/proxy_cache_dir目录下的所有文件都删掉,再次访问就可以了。末尾几十个字符丢失。找了大半天问题,才发现是nginx的问题。
2025-08-14 18:48:03
152
原创 cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.hax
摘要:解决cURL error 60的SSL证书验证问题,需下载Mozilla的CA证书包(cacert.pem)并配置。推荐方法是在代码中指定CURLOPT_CAINFO或全局设置curl.cainfo路径,避免使用不安全的CURLOPT_SSL_VERIFYPEER=false方案。适用于PHP、Laravel等框架,确保安全连接同时解决证书验证失败问题。
2025-08-10 10:37:33
898
原创 GOROOT 和 GOPATH 的定义
GOROOT是Go语言的安装目录,包含编译器、标准库等核心文件,通常由系统自动设置。GOPATH是工作区目录,用于存放项目代码、依赖包和编译文件,需手动配置但可通过Go Modules替代其部分功能。主要区别在于GOROOT存放Go自身文件不可修改,而GOPATH管理用户项目可自定义。现代Go开发推荐使用Go Modules,减少对GOPATH的依赖,但GOPATH仍用于全局工具安装。通过go env命令可查看或修改这些路径设置。
2025-08-08 17:13:27
446
原创 node可以用nvm快速切换版本,golang如何快速切换版本?用gvm就行。
摘要:GVM支持在Windows上管理Golang版本,可通过WSL运行原生GVM或使用替代工具gvm-windows/Scoop实现多版本切换。推荐方法包括:1) WSL中安装原生GVM;2) 通过choco安装gvm-windows或使用Scoop切换版本;3) 手动修改环境变量。需注意权限、路径冲突及国内用户建议配置代理加速下载。这些工具可帮助Windows用户高效管理不同Go版本(约150字)
2025-08-07 22:44:03
576
原创 pnpm : 无法加载文件 D:\nodejs\pnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135
摘要:Windows PowerShell 执行策略拦截 pnpm.ps1 脚本时,可通过放宽执行策略解决。推荐使用 Set-ExecutionPolicy -Scope CurrentUser RemoteSigned 永久生效,或 -Scope Process Bypass 临时生效。避免设为 Unrestricted 或直接运行脚本,可通过 pnpm --version 验证是否解决。
2025-08-07 22:39:48
795
javaweb开发实战1200例第二卷源码
2018-12-05
C#实现的一个简单的计算器源码
2018-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅