深入解析:[Web网页] LAMP 架构与环境搭建

news/2025/11/5 12:00:46/文章来源:https://www.cnblogs.com/yxysuanfa/p/19193209

目录

一、认识 LAMP:什么是 LAMP 架构?

二、拆解 LAMP:各组件的核心能力

1️⃣操作系统:Linux

2️⃣网页服务器:Apache

3️⃣数据库:MySQL/MariaDB

4️⃣脚本语言:PHP/Perl/Python

三、搞懂逻辑:LAMP 架构的工作流程

四、动手实践:LAMP 环境搭建(分步教学)

1️⃣第一步:安装 Apache 服务器

1. 准备依赖环境

2. 下载并解压 Apache 源码

3. 安装 Apache 依赖(APR 和 APR-util)

4. 配置、编译并安装 Apache

5. 修改 Apache 配置文件

6. 启动 Apache 并验证

2️⃣第二步:安装 MySQL 数据库

1. 安装依赖工具

2. 下载并解压 Boost(MySQL 依赖)

3. 下载并编译 MySQL

4. 初始化 MySQL 并启动

3️⃣第三步:安装 Python(含 MySQL 连接库)

1. 安装 Python 依赖

2. 下载并编译 Python

3. 验证 Python 安装

五、项目实战:用 LAMP 搭建 “数据库查看器”

1️⃣准备 MySQL 数据

2️⃣编写 Python Web 应用(app.py)

3️⃣配置 Apache 支持 WSGI

(1)安装 mod_wsgi(Apache 的 WSGI 模块)

(2)编写 WSGI 入口文件(db_viewer.wsgi)

(3)配置 Apache 虚拟主机

(4)启用虚拟主机并重启 Apache

4️⃣访问项目

六、拓展知识:LAMP 的常见变体

七、总结


在 Web 开发领域,有一个经典且经久不衰的技术组合 ——LAMP 架构。它凭借开源免费、稳定可靠、灵活可扩展的特点,成为中小型网站、内容管理系统(CMS)以及开发测试环境的首选方案。对于刚接触 Web 开发的初学者来说,掌握 LAMP 架构不仅能快速搭建起自己的开发环境,更能理解动态网站的运行逻辑。

一、认识 LAMP:什么是 LAMP 架构?

LAMP 并非单一软件,而是一组开源软件的组合,四个字母分别对应其核心组件的英文首字母,具体如下:

组件英文全称核心作用
LLinux操作系统,提供稳定、安全、高效的底层运行环境
AApache网页服务器,接收浏览器的 HTTP 请求,传递内容给客户端
MMySQL/MariaDB关系型数据库管理系统,存储和管理网站的结构化数据(如用户信息、文章内容)
PPHP/Perl/Python脚本语言,编写动态网页逻辑,处理用户请求、与数据库交互、生成动态内容

简单来说,LAMP 架构就像一个 “网站工厂”:Linux 是 “厂房”,Apache 是 “前台接待”,MySQL 是 “仓库”,PHP/Perl/Python 是 “生产线”—— 四者协同工作,才能让动态网站正常运行。

二、拆解 LAMP:各组件的核心能力

要理解 LAMP 的价值,首先需要单独认识每个组件的特点,知道它们在架构中扮演的角色。

1️⃣操作系统:Linux

作为 LAMP 架构的 “地基”,Linux 的优势主要体现在三点:

  • 稳定性:长时间运行不易崩溃,适合服务器 7×24 小时在线场景;
  • 安全性:开源社区持续修复漏洞,默认权限管控严格,减少被攻击风险;
  • 高效性:资源占用低,对硬件要求不高,即使低配服务器也能流畅运行。

对于初学者,推荐选择 Ubuntu 或 CentOS 系统 —— 前者操作更友好,适合入门;后者稳定性更强,常用于生产环境。

2️⃣网页服务器:Apache

Apache(官方名称 “httpd”)是全球使用最广泛的网页服务器,占据超过 50% 的市场份额,核心特点如下:

  • 开源免费:由 Apache 软件基金会(ASF)维护,源代码可自由获取和修改,官网:http://www.apache.org/;
  • 跨平台:支持 Linux、Windows、Mac OS 等,无需担心系统兼容性;
  • 支持多语言:能与 PHP、Python、Perl、Java 等主流脚本语言配合,满足不同开发需求;
  • 模块化设计:核心功能精简,可通过 “模块” 扩展(如 SSL 加密、URL 重写),灵活适配不同场景;
  • 高稳定性:能承载大流量访问,谷歌、亚马逊、金融时报等知名平台均有使用。

Apache 的核心工作是 “处理 HTTP 请求”:当你在浏览器输入网址时,Apache 会接收这个请求,判断是静态内容(如 HTML、CSS)还是动态内容(如 Python 脚本),再决定直接返回内容或传递给脚本语言处理。

3️⃣数据库:MySQL/MariaDB

MySQL 是经典的关系型数据库,而 MariaDB 是 MySQL 的分支(完全兼容 MySQL,性能更优),两者核心作用都是 “存储数据”,特点包括:

  • 结构化存储:用 “表” 的形式组织数据(如 “用户表” 包含用户名、密码、邮箱字段),便于查询和管理;
  • 支持 SQL 语言:通过标准 SQL 语句(如SELECT查询、INSERT插入)操作数据,学习成本低;
  • 开源免费:适合个人开发者和中小企业,无需支付版权费用;
  • 高兼容性:与 PHP、Python 等脚本语言无缝衔接,调用简单。

比如一个博客网站,文章标题、发布时间、作者等信息会存在 MySQL 中,当用户访问博客时,Python 脚本会从 MySQL 中读取这些数据,再生成网页展示给用户。

4️⃣脚本语言:PHP/Perl/Python

这三种语言都是动态网页开发的常用工具,核心作用是 “处理逻辑、生成动态内容”,初学者推荐从 Python 入手(语法简洁,易上手),它们的共同优势:

  • 跨平台:在 Linux、Windows 上都能运行,代码无需大幅修改;
  • 与数据库交互便捷:有成熟的库(如 Python 的mysql-connector),几行代码就能连接 MySQL 并操作数据;
  • 动态生成内容:可根据用户请求生成不同内容(如用户登录后显示 “欢迎 XXX”,未登录则显示 “登录按钮”)。

三、搞懂逻辑:LAMP 架构的工作流程

了解了各组件的作用后,我们通过 “用户访问动态网页” 的场景,看看 LAMP 是如何协同工作的,整个流程分为 7 步:

  1. 用户发起请求:在浏览器输入网址(如http://192.168.141.128:8080),发送 HTTP 请求到服务器;
  2. Apache 接收请求:Apache 服务器监听指定端口(默认 80,本文示例用 8080),接收到请求后判断内容类型;
  3. 判断静态 / 动态内容:
    • 如果是静态内容(如index.html):Apache 直接读取文件,返回给浏览器;
    • 如果是动态内容(如app.py):Apache 将请求传递给 Python 解释器;
  4. 脚本语言处理请求:Python 解释器执行app.py脚本,过程中可能需要数据(如用户信息),于是向 MySQL 发送查询请求;
  5. 数据库返回数据:MySQL 执行查询语句(如SELECT * FROM users WHERE id=1),将结果返回给 Python;
  6. 生成静态内容:Python 脚本结合数据库返回的数据,生成 HTML 静态内容(如包含用户信息的网页),并将其返回给 Apache;
  7. Apache 返回结果:Apache 将最终的 HTML 内容发送给浏览器,浏览器渲染后显示给用户。

整个过程就像 “用户点餐”:用户(浏览器)下单(发请求)→ 前台(Apache)接单→ 后厨(Python)根据需求找食材(MySQL 取数据)→ 做好餐品(生成 HTML)→ 前台把餐品给用户(返回内容)。

四、动手实践:LAMP 环境搭建(分步教学)

接下来我们以 “Linux(Ubuntu)+ Apache + MySQL + Python” 为例,手把手教你搭建 LAMP 环境,操作前确保你有 Linux 系统(可使用虚拟机,如 VMware),并以 root 权限或 sudo 用户执行命令。

1️⃣第一步:安装 Apache 服务器

Apache 是 LAMP 的 “前台”,先安装它,步骤如下:

1. 准备依赖环境

更新系统包并安装编译工具(源码安装需要编译源码):

bash

# 更新系统包
apt update && apt upgrade -y
# 安装编译工具和依赖库
apt install build-essential libpcre3-dev libssl-dev zlib1g-dev -y
2. 下载并解压 Apache 源码

从 Apache 官网下载最新稳定版(本文用 2.4.64),通过wget直接下载:

bash

# 进入源码存放目录
cd /usr/src
# 下载源码包
wget https://downloads.apache.org/httpd/httpd-2.4.64.tar.bz2
# 解压源码(得到httpd-2.4.64目录)
tar -xjvf httpd-2.4.64.tar.bz2
# 进入解压后的目录
cd httpd-2.4.64
3. 安装 Apache 依赖(APR 和 APR-util)

Apache 需要 APR(跨平台运行库)支持,需单独下载并放到指定目录:

bash

# 下载APR和APR-util
wget https://downloads.apache.org/apr/apr-1.7.6.tar.bz2
wget https://downloads.apache.org/apr/apr-util-1.6.3.tar.bz2
# 解压到srclib目录(Apache源码自带的依赖目录)
tar -xjvf apr-1.7.6.tar.bz2 -C ./srclib/
tar -xjvf apr-util-1.6.3.tar.bz2 -C ./srclib/
# 重命名目录(Apache要求依赖目录名为apr和apr-util)
cd srclib
mv apr-1.7.6 apr
mv apr-util-1.6.3 apr-util
cd ..  # 返回Apache源码目录
4. 配置、编译并安装 Apache

通过./configure配置安装选项,make编译源码,make install安装:

bash

# 配置安装选项(指定安装目录、启用SSL、启用模块支持)
./configure --prefix=/usr/local/apache2 \
--sysconfdir=/etc/apache2 \
--enable-so \
--enable-ssl \
--with-included-apr
# 编译源码(-j $(nproc)表示用所有CPU核心,加快编译速度)
make -j $(nproc)
# 安装Apache到指定目录(/usr/local/apache2)
make install
5. 修改 Apache 配置文件

修改端口和服务器地址,确保能正常访问:

bash

# 用vim编辑配置文件
vim /etc/apache2/httpd.conf

在文件中找到并修改以下内容:

  • 端口:找到Listen 80,改为Listen 8080(避免与其他服务冲突);
  • 服务器地址:找到#ServerName www.example.com:80,改为ServerName 你的服务器IP:8080(如ServerName 192.168.141.128:8080,服务器 IP 可通过ifconfig查看);
  • 运行用户:找到User daemonGroup daemon,改为User apacheGroup apache(先执行useradd apache创建 apache 用户)。

修改后保存退出(vim 中按Esc,输入:wq回车)。

6. 启动 Apache 并验证

bash

# 重新加载系统服务配置
systemctl daemon-reload
# 设置Apache开机自启
systemctl enable httpd
# 启动Apache服务
systemctl start httpd
# 验证是否启动成功(查看8080端口是否被占用)
netstat -tuln | grep 8080

如果显示tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN,说明启动成功。此时打开浏览器,输入http://你的服务器IP:8080,能看到 “It works!” 的欢迎页面,Apache 安装完成。

2️⃣第二步:安装 MySQL 数据库

MySQL 是 LAMP 的 “仓库”,负责存储数据,步骤如下:

1. 安装依赖工具

bash

# 更新系统包
apt update
# 安装编译工具和依赖库
apt install -y build-essential cmake libaio-dev libncurses5-dev zlib1g-dev libssl-dev libedit-dev bison flex libcurl4-openssl-dev libexpat1-dev libpcre3-dev libprotobuf-dev protobuf-compiler
# 安装pkg-config(处理库依赖)
apt install pkg-config -y
2. 下载并解压 Boost(MySQL 依赖)

MySQL 编译需要 Boost 库,先安装:

bash

# 创建Boost安装目录
mkdir /usr/local/boost
# 下载Boost源码(本文用1.77.0版本)
wget https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.tar.gz
# 解压到指定目录
tar -xvf boost_1_77_0.tar.gz -C /usr/local/boost
3. 下载并编译 MySQL

MySQL 不建议在源码目录编译,需单独创建构建目录:

bash

# 下载MySQL源码(可从官网获取最新版,本文用8.0.30)
cd /usr/src
wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.30.tar.gz
tar -xvf mysql-8.0.30.tar.gz
# 创建构建目录(与源码目录分离)
mkdir /usr/mylocal/mysql-build
cd /usr/mylocal/mysql-build
# 用CMake配置MySQL(指定安装目录和Boost路径)
cmake /usr/src/mysql-8.0.30 \
-DWITH_BOOST=/usr/local/boost/boost_1_77_0 \
-DCMAKE_INSTALL_PREFIX=/usr/mylocal/mysql \
-DMYSQL_DATADIR=/usr/mylocal/mysql/data \
-DSYSCONFDIR=/etc \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1
# 编译MySQL(耗时较长,耐心等待)
make -j $(nproc)
# 安装MySQL
make install
4. 初始化 MySQL 并启动

bash

# 创建MySQL运行用户
useradd -r -m -s /sbin/nologin mysql
# 修改目录权限
chown -R mysql:mysql /usr/mylocal/mysql/
# 初始化MySQL(生成临时密码,记住最后一行的密码,如:root@localhost: abc123!)
/usr/mylocal/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/mylocal/mysql --datadir=/usr/mylocal/mysql/data
# 启动MySQL服务
cp /usr/mylocal/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
systemctl enable mysqld
systemctl start mysqld
# 登录MySQL并修改密码(用初始化时的临时密码登录)
/usr/mylocal/mysql/bin/mysql -u root -p
# 输入临时密码后,执行以下命令修改密码(新密码设为123456,可自定义)
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;
exit;

此时 MySQL 安装完成,可通过/usr/mylocal/mysql/bin/mysql -u root -p登录,输入新密码即可操作数据库。

3️⃣第三步:安装 Python(含 MySQL 连接库)

Python 是 LAMP 的 “生产线”,负责处理逻辑,步骤如下:

1. 安装 Python 依赖

bash

# 更新系统包
apt update
# 安装Python编译依赖
apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
2. 下载并编译 Python

本文安装 Python 3.13.0(最新稳定版),用altinstall避免覆盖系统默认 Python:

bash

# 进入源码目录
cd /usr/src
# 下载Python源码
wget https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tgz
# 解压源码
tar xzf Python-3.13.0.tgz
# 进入解压目录并配置
cd Python-3.13.0
./configure --enable-optimizations  # --enable-optimizations启用性能优化
# 编译并安装(用altinstall避免覆盖系统Python)
make -j $(nproc)
make altinstall
3. 验证 Python 安装

bash

# 查看Python版本(显示Python 3.13.0即成功)
python3.13 --version
# 安装MySQL连接库(让Python能操作MySQL)
pip3.13 install mysql-connector-python flask

flask是 Python 的 Web 框架,后续项目示例会用到它来快速搭建 Web 应用。

五、项目实战:用 LAMP 搭建 “数据库查看器”

环境搭建完成后,我们做一个简单的实战项目:搭建一个 Web 应用,通过浏览器查看 MySQL 中的数据(即 “数据库查看器”),步骤如下:

1️⃣准备 MySQL 数据

先登录 MySQL,创建数据库、表并插入示例数据:

bash

# 登录MySQL
/usr/mylocal/mysql/bin/mysql -u root -p
# 输入密码后执行以下SQL语句
CREATE DATABASE test_db;  # 创建数据库test_db
USE test_db;  # 切换到test_db数据库
# 创建用户表users
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,username VARCHAR(50) NOT NULL,email VARCHAR(100) NOT NULL UNIQUE,create_time DATETIME DEFAULT CURRENT_TIMESTAMP
);
# 插入2条示例数据
INSERT INTO users (username, email) VALUES
('zhangsan', 'zhangsan@example.com'),
('lisi', 'lisi@example.com');
# 退出MySQL
exit;

2️⃣编写 Python Web 应用(app.py)

创建目录存放项目文件,并编写 Flask 应用:

bash

# 创建项目目录
mkdir -p /var/www/python-apps/db_viewer
cd /var/www/python-apps/db_viewer
# 编写app.py(用vim编辑)
vim app.py

app.py中输入以下代码(功能:连接 MySQL,查询 users 表数据,生成 HTML 表格):

python

运行

from flask import Flask
import mysql.connector
app = Flask(__name__)
# 配置MySQL连接
def get_db_connection():connection = mysql.connector.connect(host='localhost',user='root',password='123456',  # 你的MySQL密码database='test_db'  # 刚才创建的数据库)return connection
# 定义路由:访问根目录时显示数据
@app.route('/')
def index():conn = get_db_connection()cursor = conn.cursor(dictionary=True)cursor.execute('SELECT * FROM users')users = cursor.fetchall()  # 获取所有用户数据cursor.close()conn.close()# 生成HTML表格html = '''

用户数据查看器

'''for user in users:html += f''''''html += '''
ID用户名邮箱创建时间
{user['id']}{user['username']}{user['email']}{user['create_time']}
'''return html if __name__ == '__main__':app.run(host='0.0.0.0', port=5000)

保存退出(vim 按Esc,输入:wq)。

3️⃣配置 Apache 支持 WSGI

Flask 应用需要通过 WSGI(Web 服务器网关接口)与 Apache 对接,步骤如下:

(1)安装 mod_wsgi(Apache 的 WSGI 模块)

bash

apt install libapache2-mod-wsgi-py3 -y
(2)编写 WSGI 入口文件(db_viewer.wsgi)

在项目目录创建db_viewer.wsgi

bash

vim /var/www/python-apps/db_viewer/db_viewer.wsgi

输入以下内容:

python

运行

import sys
sys.path.insert(0, '/var/www/python-apps/db_viewer')
from app import app as application

保存退出。

(3)配置 Apache 虚拟主机

创建 Apache 配置文件,让 Apache 识别 WSGI 应用:

bash

vim /etc/apache2/sites-available/db_viewer.conf

输入以下内容(替换你的服务器IP为实际 IP):

apache

ServerName 你的服务器IP:8080WSGIScriptAlias / /var/www/python-apps/db_viewer/db_viewer.wsgiRequire all grantedErrorLog ${APACHE_LOG_DIR}/db_viewer_error.logCustomLog ${APACHE_LOG_DIR}/db_viewer_access.log combined
(4)启用虚拟主机并重启 Apache

bash

# 启用虚拟主机配置
a2ensite db_viewer.conf
# 重启Apache服务
systemctl restart httpd

4️⃣访问项目

打开浏览器,输入http://你的服务器IP:8080,就能看到 “用户数据查看器” 页面,表格中显示 MySQL 中的用户数据(ID、用户名、邮箱、创建时间)—— 这说明 LAMP 架构已经正常工作,你成功搭建了一个动态 Web 应用!

六、拓展知识:LAMP 的常见变体

除了经典的 LAMP,还有一些根据不同需求衍生的变体,适合不同场景:

  • LAPP:用 PostgreSQL 替代 MySQL,PostgreSQL 支持更复杂的数据类型(如 JSON、数组),适合数据量大、逻辑复杂的场景;
  • LNMP/LEMP:用 Nginx 替代 Apache,Nginx 性能更高(处理高并发能力强),适合流量大的网站(如电商平台);
  • WAMP:在 Windows 系统上使用 Apache+MySQL+PHP,适合 Windows 用户入门(无需安装 Linux);
  • MAMP:在 Mac OS 上使用 Apache+MySQL+PHP,适合 Mac 用户开发。

七、总结

LAMP 架构是 Web 开发的 “入门基石”,它的核心优势在于开源免费、稳定灵活,无论是个人博客、企业官网,还是开发测试环境,都能满足需求。对于初学者,掌握 LAMP 的关键在于:

  1. 理解各组件的角色(Linux 是地基、Apache 是前台、MySQL 是仓库、Python 是生产线);
  2. 理清工作流程(用户请求→Apache 接收→Python 处理→MySQL 取数→生成内容→返回用户);
  3. 动手实践(跟着本文步骤搭建环境,完成项目实战)。

虽然现在有 Docker、云服务器等更便捷的工具,但 LAMP 架构的原理和逻辑依然是 Web 开发的核心知识。掌握它后,再学习其他架构(如 LNMP、微服务)会更轻松。希望本文能帮助你入门 LAMP,开启 Web 开发之旅!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/956684.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年杭州专业代运营公司权威推荐榜单:直播代播/直播代运营/找电商代运营源头公司精选

电商与内容平台加速融合的背景下,杭州作为"中国电商之都",其代运营行业已进入技术驱动与全域运营的新阶段。据行业数据显示,杭州代运营公司数量已超过300家,占据全国电商代运营市场近40%的份额。2025年,…

2025.11.3 NOIP 模拟赛

前言 T3挂没了,此记。 A AT_chokudai_S002_k 考虑建图,发现如果一个联通块存在环就可以全部贡献,否则只能贡献联通块大小 \(-1\)。 直接算就行。 B P10116 拆贡献,依次对每个出现的位置的方案进行累加。 发现无论序…

2025年透水地坪实力厂家权威推荐榜单:透水路面/透水砼/透水混凝土增强剂源头厂家精选

在生态城市与海绵城市建设持续推进的背景下,透水地坪凭借其优异的透水性能与生态效益,已成为市政工程、园林景观及商业空间的重要铺装材料。据行业报告显示,2025年全球透水园林地坪铺设系统行业市场规模保持稳健增长…

2025 最新推荐移民服务机构排行榜:精选靠谱中介,提供专业澳洲美国欧洲等国移民方案葡萄牙 / 新西兰 / 新加坡 / 投资 / 购房移民公司推荐

引言 随着全球化发展,移民需求持续增长,移民服务机构数量激增,但行业质量参差不齐,选择靠谱机构成为难题。为此,国际移民服务行业协会开展专项测评,结合近 3 年机构服务数据、客户满意度调查(有效样本超 2 万份…

vue项目中使用sm4加密 ,gm-crypto

参考地址 https://www.npmjs.com/package/gm-crypto安装插件命令 npm i gm-crypto使用 import {SM4} from "gm-crypto"const key="xxxxx324324前后端统一的key" const text="需要加密的文本&…

字符串截取方法测试。

package com.example.string;/** * 从字符串中截取指定范围的子字符串或字符。Extract the string. * substring 的起始索引是 0,从索引 0 开始就是从第一个字符开始往后查找并截取到截止索引处。 * 从索引 1 开始就是…

结构(2)If语句和For循环

结构(2)If语句和For循环结构(2)If语句和For循环 If语句 package com.kun.struct;import java.util.Scanner;public class IfDemo01 {public static void main(String[] args) {Scanner scanner = new Scanner(Syst…

B. Fox And Two Dots

https://codeforces.com/problemset/problem/510/B 题意:给定一个n*m的的矩阵,矩阵只包含26个大写字母,矩阵中相邻并且相同的字符可以联通,问矩阵中是否存在数量>=4的环。 思路:视每个位置为一个node,进行编号…

Zotero文件夹中的文献自动更新到LaTeX文件夹中的.bib文件

在Zotero中创建一个你这个论文对应的参考文献的文件夹,如paper1; 在Zotero中选中整个paper1文件夹下的所有的参考文献条目,右键选择导出条目; 弹出对话框中,格式选择Better BibTeX即可,注意框选保持更新选项,如下…

OTA远程升级实现记录

OTA远程升级实现记录STM32程序更新实现 MCU程序更新逻辑是:STM32的flash地址从0x0x0800 0000开始,将flash中分出三个分区,分别作为BootLoader、APP1、APP2,每个区都可能存储着各自的代码程序 MCU上电、复位后从 0x…

结构(1)While和DoWhile

结构(1)While和DoWhile结构(1)While和DoWhile While package com.kun.struct;public class WhileDemo01 {public static void main(String[] args) {// 输出1到100int i = 0; // 初始化变量i为0while (i < 100)…

2025 年工业风机厂家最新推荐排行榜:涵盖离心、高温、防腐、耐磨、防爆等类型设备实力厂商精选

引言 在当前工业生产中,风机作为关键的流体输送与通风设备,对生产效率、安全保障及节能减排成效起着决定性作用。随着冶金、化工、电力等行业的快速发展,市场对风机的耐高温、防爆、耐腐蚀等特性要求愈发严苛,一级…

详细介绍:人工智能系统学习之 FastAi 学习笔记(二)-卷积神经网络(CNN)

详细介绍:人工智能系统学习之 FastAi 学习笔记(二)-卷积神经网络(CNN)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-famil…

2025年深圳离婚律师事务所权威推荐榜单:股权分割律师/离婚房产律师/房产分割律所团队精选

在婚姻家事法律服务领域,专业律所的选择直接影响案件结果。根据近三年案件承办量、客户满意度、行业奖项及专业能力等数据维度,本文精选深圳地区多家具有代表性的离婚律师事务所,为需要婚姻家事法律服务的群体提供参…

2025 年洗车用品厂家最新推荐排行榜权威发布,聚焦跨区域供应与定制服务实力云南源头洗车用品 / 智能洗车用品 / 家用洗车用品公司推荐

引言 2025 年民用汽车保有量已达 3.52 亿辆,汽车后市场的爆发式增长带动洗车用品需求激增,但行业深陷多重困境。传统供应商多聚焦单一产品销售,难以满足 “设备 + 服务” 的一体化需求,跨区域配送时效差、定制化能…

2025年11月中国装饰公司推荐榜单:十大优质装修企业排行分析

随着家装市场日益成熟,许多业主在装修时面临选择困难。2025年,中国装修行业呈现标准化、透明化趋势,但消费者仍常遇到预算超支、工期延误、质量参差不齐等问题。根据国家住房和城乡建设部发布的行业数据,2024年家装…

2025年武汉美食必吃榜服务权威推荐榜单:美食推荐/好吃的餐厅/好吃的美食源头服务商精选

在武汉这座以"早餐之都"闻名全国的城市,美食不仅是日常所需,更是一种文化传承与生活方式。根据2025年大众点评"必吃榜"数据显示,武汉以75家上榜商户数量位列全国第七,其中本地特色美食商户占比…

2025年北京婚姻诉讼律师权威推荐榜单:继承律师/离婚诉讼律师/房产分割律师团队服务商精选

面对婚姻诉讼中的情感纠葛与复杂法律关系,专业律师的选择成为保障权益的关键 据不完全统计,2024年北京地区婚姻诉讼案件数量同比增长18.3%,其中涉及财产分割争议的案件占比72.6%,涉外婚姻纠纷数量增长15.8%。在如此…

AspNetCoreModuleV2安装Hosting,一直失败解决方案

名称:AspNetCoreModuleV2 路径:C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll(需要安装.net Hosing版本才有)

2025年11月橱柜品牌推荐榜单:权威分析与选购指南

在装修新家或改造旧厨房时,橱柜作为厨房的核心组成部分,其选择往往关系到整体空间的实用性、美观性以及长期使用的舒适度。对于许多消费者而言,面对市场上众多的橱柜品牌,如何挑选出既符合个人需求又具备可靠品质的…