#Java篇:学习node后端之sql常用操作

news2025/9/13 17:46:13

学习路线

1、javascript基础;

2、nodejs核心模块
fs: 文件系统操作
path: 路径处理
http / https: 创建服务器或发起请求
events: 事件机制(EventEmitter)
stream: 流式数据处理
buffer: 处理二进制数据
os: 获取操作系统信息
util: 工具方法(如 promisify)

3、express框架入口
路由定义(GET、POST 等)—ok
```js
// app.js里面
const loginRouter =require(‘./router/login’)
app.use(‘/api’,loginRouter)

	// router文件夹下 login.js里面
	const express = require('express')
	const router = express.Router()
	//导入处理模块
	const loginHasndler = require('./router_handle/login.js')
	// 路由表
	router.post('/returnMenuList',loginHasndler.returnMenuList)
	module.exports = router
	
	// 这个里面读取数据库 router_handle/login.js
	const db = require('../../db/index.js')
	exports.returnMenuList = (req, res) => {
	const sql = 'select identity from users where id = ?'
	db.query(sql, req.body.id, (err, result) => {
	console.log('result: ', result);
	if (err) return res.cc(err)
	let menu = []
	if (result[0].identity == "超级管理员") {
		menu = superAdminRouter
	}
	if (result[0].identity == "管理员") {
		menu = superAdminRouter
	}
	res.send(menu)
})

}

	// 调用示例url
	http://localhost:9090/api/returnMenuList
```

中间件(应用级、错误处理)
请求与响应对象(req, res)—ok
静态资源托管(express.static)
使用 body-parser 解析请求体 —ok
使用 cors 解决跨域问题 —ok

4、身份验证与安全
Session/Cookie
JWT(JSON Web Token)
Passport.js(第三方登录)

5、数据库操作

sql操作
```js
// 增加 这条 SQL 语句的作用是 将一个 JavaScript 对象直接插入到数据库的 users 表中,并且字段和值会自动匹配。
insert into users set ?

// 删除 这条 SQL 语句的作用是 删除 logs_login 表中的所有记录。
DELETE FROM logs_login

// 修改1 更新 product 表中某一条记录的多个字段内容,条件是这条记录的 product_id 等于指定的值。
UPDATE product SET ? WHERE product_id = ?

// 修改2 这条 SQL 语句的作用是 将 product 表中某条记录的 product_status 字段值更新为 300,根据指定的 product_id 条件。
UPDATE product SET product_status = 300 WHERE product_id = ?

// 查找1 这个 ? 是一个 占位符(placeholder),用于在执行 SQL 查询时 动态传入参数值。
SELECT * FROM users WHERE account = ? 

// 查找2 如果数据库中 id=1 的用户身份是 "超级管理员",则接口会返回所有配置好的菜单路由
SELECT identity FROM users WHERE id = 1

// 查找3 这条 SQL 查询语句的作用是从 logs_login 表中 查询所有字段的所有记录,并按照 operating_time 字段进行 降序排序。
select * from logs_login ORDER BY operating_time DESC
```

```js
WHERE name LIKE ‘Da%’	查找以Da开头的名字	David, Davidson
WHERE name LIKE ‘%th’	查找以th结尾的名字	查找以th结尾的名字 Elizabeth, Smith
WHERE name LIKE ‘%on%’	查找包含on的名字	Davidson, Toni
WHERE name LIKE ‘Sa_’	查找以Sa开头且最多后跟一个字符的名字	Sa
WHERE name LIKE ‘_oy’	查找以oy结尾且最多包含一个字符的名字	Joy, Roy
WHERE name LIKE ‘an’	查找包含an的名字,并以一个字符开头和结尾	Dana, Hans
WHERE name LIKE ‘%ar_’	查找包含ar的名字,该名字以任意数量的字符开头,并以最多一个字符结尾	Richard, Karl
WHERE name LIKE ‘_ar%’	查找包含ar的名字,最多以一个字符开头,以任意数量的字符结尾	Karl, Mariya
	```
引用

https://blog.csdn.net/m0_55519586/article/details/122456348

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

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

相关文章

电网“逆流”怎么办?如何实现分布式光伏发电全部自发自用?

2024年10月9日,国家能源局综合司发布了《分布式光伏发电开发建设管理办法(征求意见稿)》,意见稿规定了户用分布式光伏、一般工商业分布式光伏以及大型工商业分布式光伏的发电上网模式,当选择全部自发自用模式时&#x…

如何查看电脑电池性能

检查电脑电池性能的方法如下: 按下winR键,输入cmd回车,进入命令行窗口 在命令行窗口输入powercfg /batteryreport 桌面双击此电脑,把刚刚复制的路径粘贴到文件路径栏,然后回车 回车后会自动用浏览器打开该报告 红…

kubernetes》》k8s》》kubectl proxy 命令后面加一个

命令后面加一个& 在Linux终端中,如果在命令的末尾加上一个&符号,这表示将这个任务放到后台去执行 kubectl proxy 官网资料 是 Kubernetes 提供的一个命令行工具,用于在本地和 Kubernetes API Server 之间创建一个安全的代理通道。…

网络安全运维实训室建设方案

一、网络安全运维人才需求与实训困境 在数字化时代,网络安全已成为国家安全、社会稳定和经济发展的重要基石。随着信息技术的飞速发展,网络安全威胁日益复杂多样,从个人隐私泄露到企业商业机密被盗,从关键基础设施遭受攻击到社会…

DBeaver 连接mysql报错:CLIENT_PLUGIN_AUTH is required

DBeaver 连接mysql报错:CLIENT_PLUGIN_AUTH is required 一、必须要看这个 >> :参考文献 二、补充 2.1 说明 MySQL5、6这些版本比较老,而DBeaver默认下载的是MySQL8的连接库,所以连接旧版本mysql报错:CLIEN…

Web3时代的数据保护挑战与应对策略

随着互联网技术的飞速发展,我们正步入Web3时代,这是一个以去中心化、用户主权和数据隐私为核心的新时代。然而,Web3时代也带来了前所未有的数据保护挑战。本文将探讨这些挑战,并提出相应的应对策略。 数据隐私挑战 在Web3时代&a…

Qwen3与MCP协议:重塑大气科学的智能研究范式

在气象研究领域,从海量数据的解析到复杂气候模型的构建,科研人员长期面临效率低、门槛高、易出错的挑战。而阿里云推出的Qwen3大模型与MCP协议的结合,正通过混合推理模式与标准化协同机制,为大气科学注入全新活力。本文将深入解析…

CppCon 2015 学习:Benchmarking C++ Code

关于性能问题与调试传统 bug(如段错误)之间差异的分析。以下是对这一页内容的详细解释: 主题:传统问题(如段错误)调试流程清晰 问题类型:段错误(Segmentation Fault) …

linux 故障处置通用流程-36计+1计

通用标准处置快速索引 编号 通 用 标 准 处 置 索 引 001 Linux操作系统标准关闭 002 Linux操作系统标准重启 003 Linux操作系统强行关闭 004 Linux操作系统强行重启 005 检查Linux操作系统CPU负载 006 查询占用CPU资源最多的进程 007 检查Linux操…

​BEV和OCC学习-3:mmdet3d 坐标系

目录 坐标系 转向角 (yaw) 的定义 框尺寸的定义 与支持的数据集的原始坐标系的关系 KITTI Waymo NuScenes Lyft ScanNet SUN RGB-D S3DIS 坐标系 坐标系 — MMDetection3D 1.4.0 文档https://mmdetection3d.readthedocs.io/zh-cn/latest/user_guides/coord_sys_tuto…

[蓝桥杯]图形排版

图形排版 题目描述 小明需要在一篇文档中加入 NN 张图片,其中第 ii 张图片的宽度是 WiWi​,高度是 HiHi​。 假设纸张的宽度是 MM,小明使用的文档编辑工具会用以下方式对图片进行自动排版: 1. 该工具会按照图片顺序&#xff0…

【Linux仓库】冯诺依曼体系结构与操作系统【进程·壹】

🌟 各位看官好,我是! 🌍 Linux Linux is not Unix ! 🚀 今天来学习冯诺依曼体系结构与操作系统。 👍 如果觉得这篇文章有帮助,欢迎您一键三连,分享给更多人哦&#xff0…

CloudFront 加速详解:AWS CDN 怎么用?

让全球访问更快速稳定,深入解读 AWS 的内容分发网络 在上一篇中,我们介绍了 Amazon S3 对象存储,它非常适合托管静态资源,比如图片、视频、网页等。但你可能遇到过这样的问题: “我把网站静态文件部署到了 S3&#xf…

《高级架构师》------- 考后感想

笔者来聊一下架构师考后的感想 复习备考 考前过了很多知识点,只是蜻蜓点水,没有起到复习的作用,即使考出来也不会,下次复习注意这个,复习到了,就记住,或者画出来,或者文件总结&…

【iOS】YYModel源码解析

YYModel源码解析 文章目录 YYModel源码解析前言YYModel性能优势YYModel简介YYClassInfo解析YYClassIvarInfo && objc_ivarYYClassMethodInfo && objc_methodYYClassPropertyInfo && property_tYYClassInfo && objc_class YYClassInfo的初始化细…

C++算法训练营 Day6 哈希表(1)

1.有效的字母异位词 LeetCode:242.有效的字母异位词 给定两个字符串s和t ,编写一个函数来判断t是否是s的字母异位词。 示例 1: 输入: s “anagram”, t “nagaram” 输出: true 示例 2: 输入: s “rat”, t “car” 输出: false 解题思路&#xff…

【C语言编译与链接】--翻译环境和运行环境,预处理,编译,汇编,链接

目录 一.翻译环境和运行环境 二.翻译环境 2.1--预处理(预编译) 2.2--编译 2.2.1--词法分析 2.2.2--语法分析 2.2.3--语义分析 2.3--汇编 2.4--链接 三.运行环境 🔥个人主页:草莓熊Lotso的个人主页 🎬作者简介:C研发…

【JavaEE】多线程

8.线程状态 根据 Java 的Thread.state包,线程一共有六种状态: NEWRUNNABLEBLOCKEDWAITINGTIMED_WAITINGTERMINATED 二、每种状态的含义 1. NEW(新建) 当使用new 关键字创建一个线程对象,但尚未调用其start() 方法时…

【项目】在线OJ(负载均衡式)

目录 一、项目目标 二、开发环境 1.技术栈 2.开发环境 三、项目树 目录结构 功能逻辑 编写思路 四、编码 1.complie_server 服务功能 代码蓝图 开发编译功能 日志功能 ​编辑 测试编译模块 开发运行功能 设置运行限制 jsoncpp 编写CR 如何生成唯一文件名 …

贪心算法应用:在线租赁问题详解

贪心算法应用:在线租赁问题详解 贪心算法是一种在每一步选择中都采取当前状态下最优的选择,从而希望导致结果是全局最优的算法策略。在线租赁问题(Greedy Algorithm for Online Rentals)是一个经典的贪心算法应用场景,下面我将从多个维度全面…