javaweb的基础
文章的简介:
页面的展示(HTML)+页面的修改、绑定、弹窗(js的dom、bom等)+页面的请求(Ajax)
1、在HTML中用标签和css样式实现了浏览器页面。
2、用JS实现页面内容(图片,复选框、文本颜色内容)的修改和弹框(提示是否取消)、跳转(跳转到别的页面)、事件绑定(点击点亮按钮,灯亮。点击熄灭按钮,灯灭)。Ajax主要是发送请求,访问服务器。
3、前后端代码需要编写、打包和部署。
前端编写用HTML、css、JavaScript(工具VScode),后端用java和Python语言(工具IDEA)。
前端打包使用vscode的build命令来打包,后端在IEDA中使用maven的package来打包。
前端代码部署在nginx服务器,后端部署在tomcat这个web服务器上。
资料存放位置:![]()
一、HTML
(一)、新浪新闻的页面设计-标签和样式
1、设计步骤
- 新浪新闻的页面标签设计(标题和正文):h1、span、p等
- 新浪新闻的样式设计:<style> h1{}........</style>
- 新浪新闻的页面布局(css盒子模型):div


2、设计框架

3、小结
1、标签的标准属性和自定义属性
img:src、width、height
a:href、target
id和class属性来代替自定义属性
2、标签和属性
标签:<title>、<h1>、<div>、<img>、<hr>、<span>、<audio>、<p>、<b>、<strong>
属性:color、font-size、text-decoration、text-indent、line-height、text-align、width、margin
3、Css选择器(内嵌样式)
标签名{}
.class名{}:引用<p class="class名">
#id名{}:引用<p id="id名">
4、标签的样式要不就是行内样式,要不就写在style标签中进行引用(内嵌样式)。

(二)、表格、表单
1、创建一个表格


2、提交一个表单
(1)get的提交方式

(2)post的提交方式

3、表单项

二、JS
变量和对象都是用来存储数据的容器。变量可以存储各种基本数据类型的值,对象则是一种更复杂的数据结构,并通过属性和方法的形式进行存储和访问。
1、js用来控制网页行为的
(一 )js的基本语法
(1)基本语法

(2)变量

(二)js函数

(三)js对象
1、js对象-数组

2、js对象-String

3、js对象-Json
(1)json格式化校验
JSON格式化
(2)json的格式
user是js对象,{}里是json字符串或者叫对象属性。
var user = {"name": "张三","age": 18,"addr": ["北京", "上海", "杭州", "郑州"]
};// 将 user 对象转换为 JSON 字符串
var jsonStr = JSON.stringify(user);// 再将 JSON 字符串解析为对象
var obj = JSON.parse(jsonStr);alert(obj.name);
4、js对象-BOM
实现浏览器的弹出框操作和页面的跳转
(1)BOM浏览器对象,主要了解Window和location对象
(2)Window的属性和方法


5、js对象-DOM
实现了页面内容的修改
(1)获取对象元素的方法

(2)dom实现案例


(四)js事件监听
1、js事件绑定案例


2、常见绑定事件

(五)VUe
1、vue概述
(1)v-model指令
message是数据模型


2、Vue指令:v-bind、v-model、v-on
(1)v-bind和v-model

(2)v-on


3、vue指令-完成表格数据的渲染案例


4、vue-生命周期




(六)、Ajax
1、Ajax的介绍
(1)基础知识


(2)yapi的访问方法
服务端访问程序中提供了两个访问地址 ,分别为 :
GET http://localhost:8080/emp/list
POST http://localhost:8080/emp/deleteById


(3)原生Ajax代码


2、Axios
(1)axios发送请求



(2)axios案例
![]()

3、前端工程化

(1)yapi是接口管理平台,网址如下:
YApi Pro-高效、易用、功能强大的可视化接口管理平台


4、前端工程化-环境准备
(1)安装nodejs和vue cli

![]()

5、前端工程化-Vue项目
(1)、新建vue工程
新建一个vue文件夹
在vue文件地址栏输入“cmd”
在命令提示界面输入“vue ui”



(2)运行前端项目vue-project

(3)修改端口号


5、前端工程化-vue开发流程
在vscode中打开vue项目:
文件-新建窗口-资源管理器-打开文件夹-vue
(七)element介绍
1、element快速入门
(1)安装和引入element组件库



Element - The world's most popular Vue UI framework

(2)按钮


(2)表格
shift+alt+f将代码格式化
(2)pagination分页


erro:
npm运行不了
2、element页面布局案例
3、vue路由



4、打包部署
实现将 VSCode 相关页面通过 Nginx 服务器localhost:90进行访问。(vscode的代码复制到了nginx的HTML目录下了)
该过程需要打开两个服务器(yapi和nginx)
![]()




- 打不开nginx .exe
- 查看后台运行nginx吗
- 查看logs文件夹,表示端口号占用错误
- 查看哪个系统使用80端口号-system
- 修改nginx占用的端口号,在conf文件夹修改
- 可以成功访问localhost:90。(记得打开yapi服务器)
5、前端页面显示的完整流程



三、maven
1、Maven的课程介绍
(1)maven是一款管理和构建java项目的工具

(2)mavan的作用:
依赖管理:不用手动导入jar包

项目结构:
2、maven的安装

- 直接解压 apache-maven-3.6.1-bin.zip 。(将这个文件夹存放在develop目录,不带英文)
- 配置本地仓库
- 配置阿里云私服
- 配置maven环境变量



![]()
3、IDEA集成maven
- 配置maven环境
- 创建maven项目
- 导入maven项目
(1)配置maven全局环境



(2)创建maven项目


创建一个maven项目时,会有很多插件,这些插件都保存在本地仓库目录



(3)导入maven的方法
- 先复制maven-project02
- 右击maven-project01,点击open in-Explorer
- 粘贴maven-project02到打开的目录
- 点击maven面板的“+”,打开maven-project02的“pom.xml”
4、maven依赖管理

5、依赖传递


6、依赖范围
(1)scope的多种取值


7、maven的生命周期
(1)maven生命周期的阶段


(2)执行生命周期的方法
package和compile双击执行后,在target目录可以看到

(3)执行test阶段的方法(双击)



8、SpringBootWeb入门

- 创建springboot工程,填写模块信息,并勾选web开发相关依赖
- 创建请求处理类HelloController,添加请求处理方法hello,并添加注解
- 运行启动类,打开浏览器测试
(1)创建springboot工程

(2)编写请求处理类

(3)运行springboot



9、http的请求协议

(1)get请求
![]()
(2)post请求
10、http的响应协议
11、web服务器-tomcat

(1)使用web服务器tomcat打开表格页面的方法:(将demo文件部署到tomcat服务器)
-
先解压apache-tomcat-9.0.27
-
将demo文件复制到apache-tomcat-9.0.27的webapps文件夹(demo含表格页面)
-
启动tomcat
-
浏览器输入http://localhost:8080/demo/index.html就显示表格页面
(2)查进程id并修改tomcat的端口号
如果tomcat的端口被占用,且只能修改tomcat的端口,在conf/server.xml中修改。
(3)tomcat小结

12、springboot内嵌tomcat

内嵌了tomcat,通过main方法启动springboot时启动了tomcat,并访问了部署在里面的web程序
基于springboot来web程序的开发
四、请求响应
准备:
develop放置安装的工具,如maven,tomcat
code中放置的IDEA代码
javaweb document放置的每章节的资料
1、请求响应-概述

2、请求响应-postman工具
(1)向8081端口发送请求


(2)、服务器监听端口的修改
多个服务器同时使用同一个端口会冲突,要访问服务器时要启动服务器。
- springboot端口修改路径(main-resources-application.properties)
- tomcat端口修改路径(develop-conf-server.xml)
- yapi服务器的端口(8080)
(3)localhost:8080的含义
访问你所开发的 Spring Boot 应用所提供的 Web 服务(8080端口此时被springboot占用)
3、请求响应-请求-简单参数和实体参数
(1)原始方式
在原始web程序中,获取请求参数,要通过HttpServletRequest对象手动获取


(2)springboot方式
参数名与形参变量名相同,定义形参既可接受参数



(3)映射方式

(4)实体参数



4、请求-路径参数
(1)/path/{id}



(2)小结:

5、请求响应-响应
- 响应字符串
- 响应对象
- 响应集合
(1)响应 集合案例


(2)三个响应类型的对比

(3)统一响应结果



6、请求响应-响应-案例
难点:两个路径:一个用于处理数据请求,另一个用于展示用户界面
需求:获取员工数据,返回统一响应结果,在页面渲染
- 在pom.xml文件中引入dom4j的依赖,用于解析xml文件
- 引入资料中提供的解析xml的工具类XMLParserUtils、对应的实体类Emp、XML文件中的emp.xml
- 引入静态页面文件,放在resourses下的static目录下
- 编写EmpController程序,处理请求,响应数据。
(1)新建工程和maven模块
(2)Emp

(3)EmpController

(4)响应结果


7、三层架构
- Controller层:控制层,接收前端请求,处理请求,返回响应数据
- Service层:业务逻辑层,处理具体逻辑(gender,job)
- Dao层:数据访问层。(如解析emp.xml)
(1)dao目录
EmpDao接口:listEmp方法
EmpDaoA类:实现EmpDao接口,listEmp方法解析epm.xml
empList变量:存解析的员工列表


(2)Service
EmpService接口:listEmp方法
EmpServiceA类:实现EmpService接口,listEmp方法(调用EmpDaoA类的listEmp方法,数据处理,返回数据empList变量)
empList变量:存处理后的员工列表


(3)controller
EmpController类:list方法(1、调用EmpServiceA类的listEmp方法 2、响应数据empList变量)

8、分层解耦
本节概要:




(1)EmpDaoA

(2)EmpServiceA

(3)EmpController类

(4)运行界面展示

(3)判断是否解耦成功

9、分层解耦-IOC&DI-IOC详解
(1)四种IOC容器注释:声明bean

注释后bean名默认为类的首字母小写,即对象名为类名首字母小写。(可修改)
如:@Service("serviceA"),此时EmpServiceA类的对象名为serviceA
(2)EmpDaoA声明bean:Repository

(2)EmpService类声明bean:Service

(3)查看IOC容器中默认的bean名

10、分层解耦-IOC&DI-IC详解
- service层有两个类,A和B
- IOC容器有两个service层对象,不处理会报错
- DI依赖注入时,通过@Primary、@Qualifier、@Resource来解决

(1)Primary方法解决一个层多个类对象注入问题

五、数据库MYSQL
1、数据库介绍
(1)什么是数据库
SQL-数据库管理系统-数据库-数据的控制

(2)数据库产品
Orcle、MYSQL等

2、安装mysql
- 解压mysql安装包
- 配置mysql环境变量、初始化mysql,注册mysql服务、启动mysql服务、修改mysql账户密码
- 登录mysql:root 123456
- 卸载mysql
(1)解压安装包

(2)配置mysql


(3)登录mysql
![]()

3、mysql的数据模型
(1)访问本地mysql服务器:mysql的客户端连接mysql的服务器

(2)SQL的语法
- SQL语句怒区分大小写
- SQL语句以分号结尾
(3)SQL的分类

4、MYSQL-DDL-数据库操作(增删查用)


5、MYSQL-DDL-图形化工具
(1)mysql客户端工具的缺点:

(2)mysql图形化工具
- SQLyog
- Navicat
- DataGrip
- IDEA
(3)在IDEA中连接mysql数据库


6、MYSQL-DDL-表操作(增删改查)
(1)创建表-字段无约束


(2)创建表-字段有约束(注意字段的值唯一和非空)
- 约束关键字
- 案例





(2)字段的数据类型
MySQL中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。
(3)创建tb_emp表(员工表)


(4)查询和修改、删除tb_emp表



(5)DDL小结
注:是alter

7、MYSQL-DML-数据操作(增删改)
(1)添加数据insert



(2)修改数据update



(3)删除操作delete


(4)DML小结

8、MYSQL-DQL-表查询(查)
(1)基本查询


(2)条件查询(表,查询的字段,查询的条件)


(3)聚合函数


(4)分组查询


(5)排序查询

(6)分页查询
![]()


(6)小结

9、MYSQL-DQL案例
(1)案例一:分页查询

分析:
1、输入员工姓名(模糊匹配)、员工性别(精确查询)、入职时间(范围查询)
2、分页查询(每页10条记录)
3、查询结果,根据更新时间倒序排序

(2)案例二:统计男女员工的人数

![]()
分析:
1、性别分组
2、统计分组后的员工数量
3、将gender的1和2转换处理
4、查询女性和男性员工的统计值(count(*))

(3)案例三:

![]()

10、MYSQL-多表设计---一对多
(1)表的结构

(2)案例:两个表结构设计
需求:根据页面原型和需求文档,完成部门和员工模块的表结构设计
- 1、创建一个tb_dept表

2、修改tb_empt表结构

(3)一对多--外键约束(物理外键)
1、插入两个表的数据(上一步已完成)
2、删除tb_dept表的id=1的数据

3、为tb_emp表添加一个外键,外键的字段是dept_id


4、tb_dept中删除id=1和id=5分别查看是什么情况

5、小结

![]()
11、MYSQL-多表设计---一对一
案例:用户与身份信息的关系
关系:一对一关系,将一个表拆分成两个表,可以提高操作效率。
实现:在一个表tb_user_card中加入外键user_id,关联另一个表tb_user的主键id。
(1)创建tb_user表(文件夹有)

(2)创建tb_user_card

该表的外键是user_id。
12、MYSQL-多表设计-多对多(中间表)
案例:学生与课程的关系
关系:一个学生可以选多门选修课,一门课程可以供多个学生选择
实现:建立第三张中间表,中间表至少包含两个外键,分别关联两方主键
(1)创建tb_student

(2)创建tb_course

(3)创建tb-student_course

(4)3张表的关系图

13、MYSQL-多表设计-案例(苍穹外卖)
(1)案例要求:设计合理的表结构
根据苍穹外卖页面原型,设计分类管理、菜品管理、套餐管理模块的表结构.
(2)打开苍穹外卖项目的页面

(3)案例步骤

分类管理和套餐管理一对多,分类管理和菜品管理是一对多,套餐管理和菜品管理是多对多。
(4)模块的关系图

(5)分类表的设计category



(6)菜品表的设计dish


(7)套餐表设计


(8)套餐菜品中间表

(9)小结

14、MYSQL-多表查询-概述
(1)在db04数据库下创建两个表tb_dept和tb_emp


(2)单表查询和多表查询
多表查询出现笛卡尔积现象,会有无效数据。

(3)加上筛选条件消除无效的笛卡尔积。

(4)小结


(5)下节预习

15、MYSQL-多表查询-内连接(公共部分)


16、MYSQL-多表查询-外连接



(1)左连接

(2)右连接

17、MYSQL-多表查询-子查询
(1)标量子查询1



(2)列子查询
重点:in


(3)行子查询


(4)表子查询


18、MYSQL-多表查询案例




(1)category和dish表

(2)

(3)

(4)

(5)

(6)三表联查

19、MYSQL-事务-概述
(1)需求:学工部整个部门解散了,该部门和部门下的员工都要删除(两个表间有物理外键)

这个是两个事务,当部门删除成功,员工删除失败,则数据就不一致对应了。即不同时不同步。
(2)事务概念
![]()

使用事务与使用其他方法解散部门的区别

事务案例:

20、MYSQL-事务-四大特性
原子性、一致性、隔离性、持久性
21、MYSQL-事务-索引
(1)索引的操作语法
- 创建索引
- 查看索引
- 删除索引

(2)索引概念
索引是帮助数据库高效获取数据的数据结构,相当于一个目录。
(3)索引优缺点

(4)索引的结构
![]()
(5)小结

相关文章:
javaweb的基础
文章的简介: 页面的展示(HTML)页面的修改、绑定、弹窗(js的dom、bom等)页面的请求(Ajax) 1、在HTML中用标签和css样式实现了浏览器页面。 2、用JS实现页面内容(图片,复选框、文本颜色内容)的修改和弹框&…...
家里养几条金鱼比较好?
金鱼,作为备受喜爱的家庭水族宠物,其饲养数量一直是众多养鱼爱好者关注的焦点。究竟养几条金鱼最为适宜,实则需要综合考量多方面因素,方能达到美观、健康与和谐的理想养鱼境界。 从风水文化的视角来看,金鱼数量有着诸…...
写作词汇积累:差池、一体两面、切实可行极简理解
差池 【差池】可以是名词,是指意外的事或错误。 【差池】也可以是形容词,是指参差不齐、差劲或不行。 1. 由于操作不当,导致这次实验出现了【差池】,我们需要重新分析原因并调整方案。(名词,表示意外的事…...
移远EC200A-CN的OPENCPU使用GO开发嵌入式程序TBOX
演示地址: http://134.175.123.194:8811 admin admin 演示视频: https://www.bilibili.com/video/BV196q2YQEDP 主要功能 WatchDog 1. 守护进程 2. OTA远程升级 TBOX 1. 数据采集、数据可视化、数据上报(内置Modbus TCP/RTU/ASCII,GPS协…...
LEED绿色建筑认证最新消息
关于LEED绿色建筑认证的最新消息,可以从以下几个方面进行概述: 一、认证体系更新与发展 LEED认证体系不断更新和完善,以更好地适应全球绿色建筑的发展趋势。例如,LEED v4能源更新已通过投票,并于2024年3月1日全面启用…...
SpringBoot中集成常见邮箱中容易出现的问题
本来也没打算想写得。不过也是遇到一些坑,就记录一下吧,也折腾了小半天 1.maven配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>2…...
webstorm开发uniapp(从安装到项目运行)
1、下载uniapp插件 下载连接:Uniapp Tool - IntelliJ IDEs Plugin | Marketplace (结合自己的webstorm版本下载,不然解析不了) 将下载到的zip文件防在webstorm安装路径下,本文的地址为: 2、安装uniapp插…...
C# 探险之旅:第七节 - 条件判断(三元判断符):? : 的奇妙冒险
嘿,勇敢的探险家们!欢迎来到 C# 编程世界的奇妙之旅的第七节。今天,我们要探索的是一个神秘而强大的宝藏——三元判断符 ? :。别怕,它听起来复杂,但实际上比找宝藏还简单! 场景设定:宝藏的选择…...
FlinkCDC实战:将 MySQL 数据同步至 ES
📌 当前需要处理的业务场景: 将订单表和相关联的表(比如: 商品表、子订单表、物流信息表)组织成宽表, 放入到 ES 中, 加速订单数据的查询. 同步数据到 es. 概述 1. 什么是 CDC 2. 什么是 Flink CDC 3. Flink CDC Connectors 和 Flink 的版本映射 实战 1. 宽表查…...
debug小记
红框: 步过:遇到方法不想进入方法 绿框:代码跑在第几行也可以看见 蓝框:可以显示变量的值,三种方式都可以看变量的值...
Qt C++ 显示多级结构体,包括结构体名、变量名和值
文章目录 mainwindow.hmainwindow.cppstructures.hmain.cpp QTreeView 和 QStandardItemModel 来实现。以下是实现这一功能的步骤和示例代码: 定义多级结构体: 假设你有一个多级结构体,如下所示: struct SubStruct {int subValue…...
【JAVA】旅游行业中大数据的使用
一、应用场景 数据采集与整合:全面收集旅游数据,如客流量、游客满意度等,整合形成统一数据集,为后续分析提供便利。 舆情监测与分析:实时监测旅游目的地的舆情信息,运用NLP算法进行智能处理,及…...
【AI+网络/仿真数据集】1分钟搭建云原生端到端5G网络
导语: 近期智慧网络开放创新平台上线了端到端网络仿真能力,区别于传统的网络仿真工具需要复杂的领域知识可界面操作,该平台的网络仿真能力主打一个小白友好和功能专业。 https://jiutian.10086.cn/open/jiutian.10086.cn/open/ 端到端仿…...
微服务-01【续】
1.OpenFeign 上篇文章我们利用Nacos实现了服务的治理,利用利用RestTemplate实现了服务的远程调用。但是远程调用的代码太复杂了: 而且这种调用方式,与原本的本地方法调用差异太大,编程时的体验也不统一,一会儿远程调用…...
测试工程师八股文01|Linux系统操作
一、Linux系统操作 1、gzip tar和gzip结合使用 $ tar czf b.tar.gz *txt 以gzip方式打包并且压缩 $ tar xzf b.tar.gz -C btar 以gzip方式解压并解包,如果 btar 目录不存在,则需要先手动创建该目录。 代码第二行:如果没有指定 -C …...
【Qt】qt基础
目录 一、使用Qt Creator创建qt项目 二、项目文件解析 三、Qt中创建图形化界面的程序的两种方法 四、对象树 五、Qt中处理打印乱码问题的利器:qDebug() 一、使用Qt Creator创建qt项目 1.选择项目模板 选中第一类模板Application(Qt应用程序,包含普…...
UniScene:Video、LiDAR 和Occupancy全面SOTA
论文: https://arxiv.org/pdf/2412.05435 项目页面:https://arlo0o.github.io/uniscene/ 0. 摘要 生成高保真度、可控制且带有标注的训练数据对于自动驾驶至关重要。现有方法通常直接从粗糙的场景布局生成单一形式的数据,这不仅无法输出多样化下游任务…...
TensorFlow深度学习实战(1)——神经网络与模型训练过程详解
TensorFlow深度学习实战(1)——神经网络与模型训练过程详解 0. 前言1. 神经网络基础1.1 神经网络简介1.2 神经网络的训练1.3 神经网络的应用 2. 从零开始构建前向传播2.1 计算隐藏层节点值2.2 应用激活函数2.3 计算输出层值2.4 计算损失值2.4.1 在连续变…...
03篇--二值化与自适应二值化
二值化 定义 何为二值化?顾名思义,就是将图像中的像素值改为只有两种值,黑与白。此为二值化。 二值化操作的图像只能是灰度图,意思就是二值化也是一个二维数组,它与灰度图都属于单信道,仅能表示一种色调…...
基于python的一个简单的压力测试(DDoS)脚本
DDoS测试脚本 声明:本文所涉及代码仅供学习使用,任何人利用此造成的一切后果与本人无关 源码 import requests import threading# 目标URL target_url "http://47.121.xxx.xxx/"# 发送请求的函数 def send_request():while True:try:respo…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...
规则与人性的天平——由高考迟到事件引发的思考
当那位身着校服的考生在考场关闭1分钟后狂奔而至,他涨红的脸上写满绝望。铁门内秒针划过的弧度,成为改变人生的残酷抛物线。家长声嘶力竭的哀求与考务人员机械的"这是规定",构成当代中国教育最尖锐的隐喻。 一、刚性规则的必要性 …...










