Mysql(基本介绍+下载安装+服务器+基本使用+建库建表+navicat/mybitas工具+外键及实例)
一、Mysql基本介绍
当谈论MySQL时,通常指的是一个流行的开源关系型数据库管理系统(RDBMS)。MySQL是由瑞典的开发者在1995年创建的,后来被Sun Microsystems收购,最终成为Oracle Corporation的一部分。以下是关于MySQL的一些基本信息:
-
关系型数据库管理系统(RDBMS): MySQL是一种关系型数据库管理系统,这意味着它使用表格来存储数据,并且支持SQL(Structured Query Language)用于查询和管理这些数据。
-
表格和字段: 数据在MySQL中以表格的形式存储,表格由行和列组成。每一列代表一个字段,每一行代表一条记录。
-
主键: 表中的一列可以被指定为主键,用于唯一标识表中的每一行。主键确保数据的唯一性。
-
SQL语言: MySQL使用SQL语言进行数据的增、删、改、查操作。常见的SQL命令包括SELECT(查询数据)、INSERT(插入数据)、UPDATE(更新数据)、DELETE(删除数据)等。
-
数据类型: MySQL支持多种数据类型,包括整数、浮点数、字符串、日期等。每种数据类型都有特定的存储规则和范围。
-
索引: 为了提高查询性能,可以在表的一列或多列上创建索引。索引允许数据库系统快速定位并检索特定值。
-
存储过程和触发器: MySQL支持存储过程和触发器,这些是预先定义的操作序列,可以在数据库中执行。
-
安全性: MySQL提供了许多安全特性,包括用户身份验证、访问控制和数据加密,以确保数据库的安全性。
-
多用户支持: 多个用户可以同时访问MySQL数据库,并且可以通过访问控制规则进行管理。
-
跨平台: MySQL可在各种操作系统上运行,包括Windows、Linux和macOS。
-
开源: MySQL是开源软件,可以免费使用,并且有一个庞大的社区支持和贡献。
要使用MySQL,需要首先安装MySQL服务器,然后通过MySQL客户端或其他数据库管理工具连接到服务器进行数据操作。可以通过SQL语句执行各种操作,从简单的查询到复杂的数据处理。 MySQL的文档和社区提供了丰富的资源,帮助用户学习和使用这个强大的数据库管理系统。
二、下载及安装
以下是MySQL的下载和安装过程的基本步骤。请注意,这些步骤具体取决于使用的操作系统和MySQL的版本。
下载 MySQL
-
访问 MySQL 官方网站: 前往 MySQL 官方网站。
-
选择 MySQL 版本: 在下载页面上,选择想要下载的 MySQL 版本。通常可以选择 MySQL Community Edition(社区版)或 MySQL Enterprise Edition(企业版)。
-
选择操作系统: 选择当前使用的操作系统。MySQL 支持多种操作系统,包括 Windows、Linux 和 macOS。
-
下载安装程序: 点击下载按钮,下载适用于操作系统的安装程序。安装程序可能是一个可执行文件(如 .exe 文件)、压缩包或其他格式。
安装 MySQL
Windows 上的安装:
-
运行安装程序: 打开下载的 MySQL 安装程序(.exe 文件),运行安装向导。
-
选择安装类型: 通常有两个安装类型,选择 “Server Only” 或 “Server and Client”,根据需求选择。
-
选择配置类型: 选择 “Standalone MySQL Server”,然后点击 “Next”。
-
配置 MySQL 服务: 输入 MySQL 服务的端口和设置密码。点击 “Next”。
-
执行安装: 点击 “Execute” 开始安装。
-
完成安装: 安装完成后,点击 “Finish”。
Linux 上的安装:
-
解压文件: 如果下载的是压缩包,解压到想要安装 MySQL 的目录。
tar -xvf mysql-<version>-<os>-<arch>.tar.gz
-
安装依赖库: 安装 MySQL 依赖的库。
sudo apt-get update sudo apt-get install libaio1 libnuma1
-
配置环境变量: 将 MySQL 的 bin 目录添加到系统的 PATH 中。
export PATH=$PATH:/path/to/mysql/bin
-
初始化数据库: 运行 MySQL 初始化脚本。
mysqld --initialize --user=mysql --basedir=/path/to/mysql --datadir=/path/to/mysql/data
-
启动 MySQL 服务:
mysqld --user=mysql &
-
设置 root 密码:
mysql_secure_installation
按照提示设置 root 密码和其他安全设置。
验证 MySQL 安装
无论使用哪种操作系统,安装完成后,可以通过以下步骤验证 MySQL 是否正确安装:
-
启动 MySQL 服务:
sudo service mysql start # 仅适用于 Linux 系统
-
连接到 MySQL:
mysql -u root -p
输入设置的 root 密码,如果一切正常,将进入 MySQL 的命令行界面。
以上是一个简单的 MySQL 下载和安装的指南。
三、Mysql服务器
在MySQL的上下文中,术语 “服务器” 可以指代多个不同的概念。在一般情况下,它可能指MySQL服务器软件、MySQL数据库服务器实例(运行在特定主机上的MySQL服务)或者MySQL服务器计算机(托管一个或多个数据库实例的物理或虚拟计算机)。
-
MySQL服务器软件: 这是MySQL数据库管理系统的实际软件。当从MySQL官方网站下载MySQL时,下载的是MySQL服务器软件。这个软件包括了MySQL数据库管理系统的核心引擎、命令行工具、客户端库等。需要在计算机上安装这个软件,以便能够创建、管理和访问MySQL数据库。
-
MySQL数据库服务器实例: 当在计算机上安装MySQL服务器软件后,可以创建一个或多个MySQL数据库服务器实例。每个实例是一个独立运行的MySQL服务,具有自己的配置、数据库和用户。每个实例通常监听在不同的端口上,允许通过网络连接到这个实例。在MySQL服务器实例中,可以创建和管理多个数据库,执行SQL查询和操作数据。
-
MySQL服务器计算机: 这是承载一个或多个MySQL数据库服务器实例的物理或虚拟计算机。这个计算机可以是本地开发机、一个云服务器,或者一个专门用于数据库服务的服务器。MySQL服务器计算机上的MySQL服务器软件负责处理客户端的请求、执行SQL语句,并存储和管理数据。
下载MySQL时需要考虑的内容:
当决定下载MySQL时,需要注意以下几点:
-
选择版本: MySQL通常有多个版本可用,包括稳定版和开发版。对于生产环境,建议选择稳定版,而对于开发和测试,可以考虑使用开发版。
-
选择操作系统: 选择适用于操作系统的MySQL版本。MySQL支持多种操作系统,包括Windows、Linux、macOS等。
-
选择安装类型: MySQL提供了不同的安装类型,包括社区版(Community Edition)和企业版(Enterprise Edition)。大多数情况下,社区版已经足够满足一般需求。
-
下载安装程序: 根据操作系统和选择的MySQL版本,选择正确的安装程序。在Windows上可能是一个.exe文件,而在Linux上可能是一个.tar.gz压缩包。
-
可选的MySQL工具: 除了MySQL服务器软件外,还可以选择下载和安装MySQL的图形用户界面(GUI)工具,如MySQL Workbench。这些工具提供了可视化的方式来管理和查询数据库。
综上所述,当要下载MySQL时,你需要考虑你的使用场景、操作系统,并选择适当版本和安装类型。下载后,按照相应的安装指南进行安装。
四、Mysql+navicat工具
是的,MySQL可以与许多第三方工具一起使用,而 Navicat 是其中一个流行的数据库管理工具。Navicat 提供了一个用户友好的图形界面,使得数据库的管理、查询和维护变得更加直观和便捷。
以下是 MySQL 和 Navicat 结合使用的一些常见场景:
-
连接到 MySQL 服务器: Navicat 允许你轻松地连接到远程或本地的 MySQL 服务器。你只需提供连接参数,如主机地址、端口、用户名和密码即可。
-
数据库管理: 使用 Navicat,你可以方便地浏览、创建、修改和删除数据库。这使得数据库的管理变得更加直观,无需使用命令行。
-
表设计: Navicat 提供了一个直观的表设计工具,让你能够创建、修改和删除表,设置主键、外键、索引等约束。
-
数据查询和编辑: Navicat 提供了一个 SQL 编辑器,用于执行查询、插入、更新和删除数据。查询结果以表格形式呈现,方便查看和编辑。
-
数据导入和导出: 你可以使用 Navicat 轻松地将数据从各种格式导入到 MySQL 数据库中,也可以将 MySQL 数据导出为不同的文件格式。
-
备份和恢复: Navicat 提供了数据库备份和恢复工具,使你能够轻松创建数据库备份并在需要时进行恢复。
-
可视化工具: Navicat 提供了可视化的数据库监视和性能优化工具,帮助你识别潜在的性能问题,并提供建议进行优化。
-
版本控制: 一些版本的 Navicat 支持与版本控制系统(如Git)集成,以便更好地跟踪数据库架构的变化。
使用 Navicat 或其他类似的工具可以极大地简化数据库管理任务,并提供更直观的界面,尤其是对于不习惯使用命令行的用户。这类工具通常支持多种数据库管理系统,不仅仅局限于 MySQL。
五、Mysql结合mybatic使用
MySQL可以与许多不同的工具和框架搭配使用,其中包括 MyBatis。MyBatis 是一个用于 Java 编程语言的持久层框架,它简化了数据库访问的过程,提供了一种将数据库操作与 Java 代码解耦的方式。
以下是 MySQL 和 MyBatis 结合使用的一些常见场景和示例:
-
配置 MyBatis 数据源: 在 MyBatis 的配置文件中,你可以配置数据源信息,包括数据库的连接地址、用户名、密码等。下面是一个示例配置:
<!-- MyBatis 数据源配置 --> <dataSource type="POOLED"><property name="driver" value="com.mysql.cj.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/your_database"/><property name="username" value="your_username"/><property name="password" value="your_password"/> </dataSource>
请确保替换上述示例中的占位符(your_database、your_username、your_password)为实际的数据库信息。
-
创建 MyBatis 映射文件: MyBatis 使用映射文件来定义 SQL 查询、插入、更新和删除等操作。以下是一个简单的映射文件示例:
<!-- MyBatis 映射文件 --> <mapper namespace="com.example.YourMapper"><select id="selectUser" resultType="User">SELECT * FROM users WHERE id = #{id}</select> </mapper>
这里的
#{id}
是 MyBatis 的参数占位符。 -
在 Java 代码中使用 MyBatis: 在 Java 代码中,你可以通过 MyBatis 的 API 来执行数据库操作。以下是一个简单的示例:
SqlSession sqlSession = sqlSessionFactory.openSession(); try {YourMapper mapper = sqlSession.getMapper(YourMapper.class);User user = mapper.selectUser(1);System.out.println(user); } finally {sqlSession.close(); }
这里的
YourMapper
是你在映射文件中定义的命名空间。 -
整合 MyBatis 和 Spring: 如果使用 Spring 框架,可以整合 MyBatis 和 Spring,以便更好地管理事务、依赖注入等。这通常涉及配置 Spring 数据源、事务管理器等。
<!-- Spring 中整合 MyBatis 的配置示例 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"/><property name="mapperLocations" value="classpath:/your/mapper/location/*.xml"/> </bean><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"/> </bean>
这里的
your/mapper/location/*.xml
是你的 MyBatis 映射文件所在的路径。
通过这些步骤,可以将 MySQL 和 MyBatis 结合使用,从而更方便地进行数据库操作。在实际项目中,可能还需要考虑事务管理、异常处理、连接池配置等方面的问题。 MyBatis 的官方文档和示例提供了更详细的信息,有助于更好地理解和使用这个持久层框架。
六、Mysql中的常见操作
在MySQL中,有一些常见的操作,涵盖了数据库的基本管理、数据查询和修改等方面。以下是一些MySQL中常见的操作:
-
连接到MySQL服务器:
mysql -u 用户名 -p
这个命令将提示你输入密码,并连接到MySQL服务器。
-
创建数据库:
CREATE DATABASE 数据库名;
创建一个新的数据库。
-
选择数据库:
USE 数据库名;
选择要操作的数据库。
-
创建表:
CREATE TABLE 表名 (列1 数据类型,列2 数据类型,... );
创建一个新的表格。
-
插入数据:
INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);
向表中插入新的记录。
-
查询数据:
SELECT 列1, 列2 FROM 表名 WHERE 条件;
从表中检索数据。
-
更新数据:
UPDATE 表名 SET 列1 = 值1 WHERE 条件;
更新表中的记录。
-
删除数据:
DELETE FROM 表名 WHERE 条件;
从表中删除记录。
-
添加主键:
ALTER TABLE 表名 ADD PRIMARY KEY (列名);
添加主键以确保数据的唯一性。
-
创建索引:
CREATE INDEX 索引名 ON 表名 (列名);
创建一个索引以提高查询性能。
-
删除表:
DROP TABLE 表名;
删除一个表。
-
更改表结构:
ALTER TABLE 表名 MODIFY COLUMN 列名 新数据类型;
修改表结构,例如更改列的数据类型。
-
查看表结构:
DESC 表名;
查看表的结构,包括列名、数据类型等信息。
-
备份和恢复数据库:
-- 备份整个数据库 mysqldump -u 用户名 -p 数据库名 > 备份文件.sql-- 恢复数据库 mysql -u 用户名 -p 数据库名 < 备份文件.sql
使用
mysqldump
命令可以备份整个数据库,然后使用mysql
命令进行恢复。
这些是一些基本的MySQL操作,可以开始在MySQL数据库中进行数据管理和查询。根据具体的需求,还可以了解更多高级的操作和特性,例如存储过程、触发器、视图等。 MySQL的官方文档是学习更多内容的好资源。
七、Mysql创建一个数据库
在MySQL中,要创建一个数据库,你可以使用 CREATE DATABASE
语句。以下是创建数据库的基本语法:
CREATE DATABASE database_name;
在这个语句中,database_name
是你想要创建的数据库的名称。以下是一个简单的例子:
CREATE DATABASE mydatabase;
这将创建一个名为 “mydatabase” 的数据库。请注意,数据库名称是不区分大小写的,但是在MySQL中通常习惯将它们写成小写字母,以避免混淆。
如果你想要在创建数据库的同时指定一些其他选项,你可以使用更详细的语法。例如,你可以指定字符集和校对规则:
CREATE DATABASE mydatabaseCHARACTER SET utf8mb4COLLATE utf8mb4_general_ci;
在这个例子中,数据库 “mydatabase” 将使用 utf8mb4
字符集,utf8mb4_general_ci
校对规则。你可以根据你的需求选择不同的字符集和校对规则。
请注意,创建数据库的权限通常需要在MySQL服务器上具有足够的权限。如果你没有足够的权限,可能需要联系管理员或使用具有足够权限的用户账户。
最后,如果你使用的是MySQL的命令行客户端,你可以直接在命令行中输入这些SQL语句来创建数据库。如果使用图形用户界面(GUI)工具,通常会提供一个界面来执行这些操作。
八、Mysql创建一个表
在构建MySQL表时,需要进行良好的设计,以确保数据库的性能、可维护性和数据完整性。以下是一些设计表时需要考虑的关键方面:
-
表名和列名: 表名和列名应具有描述性,能够清晰地表达其所代表的数据。避免使用关键字、特殊字符和空格,使用下划线或驼峰命名法(如
user_table
或userTable
)是一种常见的命名约定。 -
数据类型: 对每一列选择适当的数据类型,以节省存储空间并提高检索效率。常见的数据类型包括整数型(
INT
、BIGINT
)、字符型(VARCHAR
)、日期型(DATE
、DATETIME
)等。 -
主键: 每个表应该有一个主键,用于唯一标识表中的每一行。通常使用整数型(如
INT
)作为主键,可以选择自增长属性,确保每次插入都有唯一的标识。CREATE TABLE example_table (id INT PRIMARY KEY AUTO_INCREMENT,-- other columns );
-
外键: 如果表与其他表存在关联关系,可以使用外键来建立这种关系。外键可以确保数据的一致性,保证引用的数据在关联表中存在。
CREATE TABLE orders (order_id INT PRIMARY KEY,product_id INT,FOREIGN KEY (product_id) REFERENCES products(product_id) );
-
索引: 在经常进行查询的列上创建索引,以提高查询性能。但要注意,过多的索引可能会影响插入、更新和删除的性能,因此需要权衡。
CREATE INDEX index_name ON table_name (column1, column2, ...);
-
约束: 使用约束确保数据的完整性。包括主键约束、唯一约束、非空约束等。例如,确保用户名列是唯一的:
CREATE TABLE users (user_id INT PRIMARY KEY,username VARCHAR(50) UNIQUE,-- other columns );
-
默认值和约束: 在设计表时,可以为列设置默认值,以及定义列的约束条件。这有助于确保数据的一致性和减少错误。
CREATE TABLE example_table (column1 INT DEFAULT 0,column2 VARCHAR(255) NOT NULL,-- other columns );
-
范式设计: 尽量遵循数据库范式,确保数据的一致性和避免数据冗余。这包括将数据分解成逻辑上相关的表,以减少重复存储。
-
注释: 在表和列上添加注释,以提供关于表结构和数据含义的信息。这有助于他人理解数据库设计和维护。
实际的数据库设计取决于具体的应用需求和数据特性。在设计之前,最好考虑数据库的查询需求、数据关系、性能要求等因素。
九、Mysql中的外键及实例
在MySQL中,外键是用来建立表与表之间关系的一种机制。外键约束确保了两个表之间的数据一致性,它基于一个表的一列与另一个表的主键列之间的关联。
以下是一个简单的例子,关于在MySQL中使用外键:
假设我们有两个表,一个是 “students” 表,另一个是 “courses” 表。我们希望 “students” 表中的一个列关联到 “courses” 表中的主键列,以表示学生所选的课程。
-
创建 “courses” 表:
CREATE TABLE courses (course_id INT PRIMARY KEY,course_name VARCHAR(255) NOT NULL );
在这里,我们创建了一个名为 “courses” 的表,其中包含一个整数类型的主键列 “course_id” 和一个表示课程名称的列 “course_name”。
-
创建 “students” 表并添加外键约束:
CREATE TABLE students (student_id INT PRIMARY KEY,student_name VARCHAR(255) NOT NULL,course_id INT,FOREIGN KEY (course_id) REFERENCES courses(course_id) );
在这里,我们创建了一个名为 “students” 的表,包含一个整数类型的主键列 “student_id”、一个表示学生姓名的列 “student_name”,以及一个 “course_id” 列,它将成为外键。
FOREIGN KEY (course_id) REFERENCES courses(course_id)
表示 “course_id” 列是一个外键,它参考了 “courses” 表中的 “course_id” 列。 -
插入数据:
-- 插入课程数据 INSERT INTO courses (course_id, course_name) VALUES(1, 'Mathematics'),(2, 'Physics'),(3, 'Computer Science');-- 插入学生数据,并指定选课关系 INSERT INTO students (student_id, student_name, course_id) VALUES(101, 'Alice', 1),(102, 'Bob', 2),(103, 'Charlie', 1);
在这里,我们插入了一些课程和学生数据,并通过 “students” 表中的 “course_id” 列与 “courses” 表中的 “course_id” 列建立了关联。
通过使用外键,我们可以确保 “students” 表中的 “course_id” 值必须在 “courses” 表中的 “course_id” 列中存在,从而保持两个表之间的关联性。这有助于维护数据的一致性,防止不一致的关联关系。
十、Mysql简单化学习
1.下载一个mysql服务器并安装和配置环境变量
2.下载一个Navicat.连接上mysql服务器
3.在navicat中进行建立数据库,建立表格,查询等一系列的操作
4.如果是springboot项目,结合mybatics,直接和数据库关联起来,简单化
5.navicat还可以导出ER图,并根据这个图继续进行设计。
相关文章:
Mysql(基本介绍+下载安装+服务器+基本使用+建库建表+navicat/mybitas工具+外键及实例)
一、Mysql基本介绍 当谈论MySQL时,通常指的是一个流行的开源关系型数据库管理系统(RDBMS)。MySQL是由瑞典的开发者在1995年创建的,后来被Sun Microsystems收购,最终成为Oracle Corporation的一部分。以下是关于MySQL的…...

Python+requests+Jenkins接口自动化测试实例
在做功能测试的基础上,我平时也会用postman测试接口,不过postman只能测试一个一个接口,不能连贯起来,特别是我们公司的接口很多都是要用到token的,导致我每次测个需要登录的接口都要去获取到token,做了很多…...

SpringBoot3核心原理
SpringBoot3核心原理 事件和监听器 生命周期监听 场景:监听应用的生命周期 可以通过下面步骤自定义SpringApplicationRunListener来监听事件。 ①、编写SpringApplicationRunListener实现类 ②、在META-INF/spring.factories中配置org.springframework.boot.Sprin…...
JS常用数据类型转换(数字型和字符串型之间转换)
提供了5中基本数据类型:数字 number 字符串 string 布尔 boolean 空值 null 未定义的 undefined 常用的是数字型和字符串型之间的转换,常用的转换方法如下: 1 数字型转换成字符串型 a) 使用String()方法…...

算法通关村第一关—青铜挑战—用Java基本实现各种链表操作
文章目录 第一关—链表【青铜挑战】1.1 单链表的概念1.2 链表的相关概念1.3 创建链表 - Java实现1.4 链表的增删改查1.4.1 遍历单链表 - 求单链表长度1.4.2 链表插入 - 三种位置插入(1)在链表的表头插入(2)在链表的中间插入&#…...

SparkRDD及算子-python版
RDD相关知识 RDD介绍 RDD 是Spark的核心抽象,即 弹性分布式数据集(residenta distributed dataset)。代表一个不可变,可分区,里面元素可并行计算的集合。其具有数据流模型的特点:自动容错,位置…...

嵌入式设备与PC上位机通信协议设计的几点原则
嵌入式设备在运行中需要设置参数,这个工作经常由PC机来实现,需要为双方通信设计协议,有代表性协议是如下三种: 从上表可以看到,一般嵌入式设备内存和运算性能都有限,因此固定二进制是首选通信协议。 一&am…...

Go 内置运算符
一、算数运算符 1、算数运算符使用 package mainimport ("fmt" )func main(){fmt.PrintIn("103",103) //10313fmt.PrintIn("10-3",10-3) //10-37fmt.PrintIn("10*3",10*3) //10*330//除法注意:如果运算的数都是…...

Table和HashBasedTable的使用案例
------------------- 1.普通使用 package org.example.testhashbasedtable;import com.google.common.collect.HashBasedTable; import com.google.common.collect.Table;import java.util.Map;public class TestHashBasedTable {public static void main(String[] args) {Ta…...

【执行批处理后 executeBatch() 没反应,一个参数相信就能搞定】
一、场景是在使用EasyExcel读取全表时,每次手动提交事务6w多条,总计190w数据量的情况下发生的。 博主比较fw,卡住了两天😶 此问题还有一个比较bug的地方,就是当你在 executeBatch() 上下打断点时还能够执行出来&…...

【LeetCode】每日一题 2023_11_25 二叉树中的伪回文路径(dfs,数组/位运算)
文章目录 刷题前唠嗑题目:二叉树中的伪回文路径题目描述代码与解题思路偷看大佬题解 结语 刷题前唠嗑 LeetCode?启动!!! 这个月第一次周末早起~ 题目:二叉树中的伪回文路径 题目链接:1457. 二…...

什么是海外私人IP代理?是纯净独享的代理吗?
相信许多互联网工作者都遇到过IP禁令,比如网络抓取项目,使用共享代理服务器向网站发出第一个请求,但却您收到了禁令,这大部分是由于你的共享IP经过多人使用被禁用所致。 那么到底什么是私人代理呢?它们是否适合您的情…...
Vue组件库推荐:Element UI深度解析
在Vue开发中,使用组件库可以极大地提高开发效率,减少重复工作量。Element UI作为一款优秀的Vue组件库,被广泛应用于各类项目中。本文将对Element UI进行深度解析,为开发者提供详细的使用说明和具体的代码示例。 1,Ele…...

Mysql 8.0主从复制模式安装(兼容Mysql 5.7)
Mysql V8.0.35安装 官网地址:MySQL :: Download MySQL Community Server 下载【Mysql 8.0.35】压缩包 解压压缩包,仅保留6个安装文件即可 mysql-community-client-8.0.31-1.el7.x86_64.rpm mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm my…...

基于Django+Tensorflow卷积神经网络鸟类识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介系统概述系统功能核心技术系统架构系统优势 二、功能三、系统四. 总结 总结 一项目简介 介绍一个基于DjangoTensorflow卷积神经网络鸟类识别系统是一个非…...

史上最全前端知识点+高频面试题合集,十二大专题,命中率高达95%
前言: 下面分享一些关于阿里,美团,深信服等公司的面经,供大家参考一下。大家也可以去收集一些其他的面试题,可以通过面试题来看看自己有哪里不足。也可以了解自己想去的公司会问什么问题,进行有针对的复习。…...

我叫:基数排序【JAVA】
1.自我介绍 基数排序(radix sort)属于“分配式排序” (distribution sort),又称“桶子法” (bucket sort)或bin sort,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,是‘桶排序’的扩展 2.基本思想 将所有待比较数值统一为同样的数位长度,数位较短的数…...

ArkUI开发进阶—@Builder函数@BuilderParam装饰器的妙用与场景应用【鸿蒙专栏-05】
ArkUI开发进阶—@Builder函数@BuilderParam装饰器的妙用与场景应用 HarmonyOS,作为一款全场景分布式操作系统,为了推动更广泛的应用开发,采用了一种先进而灵活的编程语言——ArkTS。ArkTS是在TypeScript(TS)的基础上发展而来,为HarmonyOS提供了丰富的应用开发工具,使开…...

智慧城市内涝积水监测仪功能,提升城市预防功能
内涝积水监测仪不仅改变了人们应对城市内涝的老办法,还让智慧城市往前迈了一大步。这个监测仪是怎么做到的呢?就是靠它精准的数据监测和预警,让城市管理有了更科学高效的解决妙招。它就像有了个聪明又负责任的助手,让城市管理更加…...

ISCTF2023 部分wp
学一年了还在入门( web where_is_the_flag ISCTF{41631519-1c64-40f6-8dbb-27877a184e74} 圣杯战争 <?php // highlight_file(__FILE__); // error_reporting(0);class artifact{public $excalibuer;public $arrow;public function __toString(){echo "为Saber选择…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...