亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

nodeJS與MySQL實(shí)現(xiàn)分頁數(shù)據(jù)以及倒序數(shù)據(jù)

瀏覽:55日期:2023-10-14 15:55:52

大家在做項(xiàng)目時(shí)肯定會(huì)遇到列表類的數(shù)據(jù),如果在前臺一下子展示,速度肯定很慢,那么我們可以分頁展示,比如說100條數(shù)據(jù),每10條一頁,在需要的時(shí)候加載一頁,這樣速度肯定會(huì)變快了。那么這里我給大家介紹如何在nodejs環(huán)境中用mysql實(shí)現(xiàn)分頁。

前面一些必要的配置我先不詳細(xì)說了,這里主要說的是地址池的配置

// 數(shù)據(jù)庫信息var connection = mysql.createConnection({ host : ’localhost’, port:3306, user : ’root’, password : ’’, database : ’url’, multipleStatements: true //這里一定要加上這個(gè)。先別管什么用,一定要加上。});

因?yàn)槲沂褂玫氖莐oa框架,所以用了async 、await 。這里不做理會(huì),下面的代碼才重要。

// 獲取urlrouter.post(’/csdnurl’, async (ctx, next) => { var start = (ctx.request.body.page - 1) * 10; var sql = ’SELECT COUNT(*) FROM csdnurl ORDER BY id DESC; SELECT * FROM csdnurl ORDER BY id DESC limit ’ + start + ’,10’; let results = await query2(sql); ctx.body = results});const query2 = function (sql) { return new Promise((resolve, reject) => { connection.query(sql, function (error, results) { if (error) {reject(error); } else { var allCount = results[0][0][’COUNT(*)’]; var allPage = parseInt(allCount) / 10; var pageStr = allPage.toString(); if (pageStr.indexOf(’.’) > 0) { allPage = parseInt(pageStr.split(’.’)[0]) + 1; console.log(allPage) } var List = results[1];resolve(List) } }); })

1、ctx.request.body.page這里是前臺傳來的頁數(shù)。

2、 你可以看到sql語句有兩條,哈哈,這里是關(guān)鍵了,在地址池配置multipleStatements: true就是這個(gè)原因,如果你不加,就會(huì)報(bào)錯(cuò)。

3、ORDER BY id DESC 這是倒序的意思(根據(jù)id倒序)。

4、 然后我使用await 異步操作封裝了一個(gè)函數(shù),是為了能夠取到results值。當(dāng)然你使用了express就不用考慮這一點(diǎn),為啥會(huì)這樣呢?如下:

關(guān)于使用 koa路由與mysql模塊, ctx.body獲取不到值的問題

var Koa = require(’koa’);var Router = require(’koa-router’ );var bodyParser = require(’koa-bodyparser’);var mysql = require(’mysql’);var app = new Koa();var router = new Router();app.use(bodyParser());var connection = mysql.createConnection({ host : ’localhost’, port:3306, user : ’root’, password : ’xxx’, database : ’url’});connection.connect();//第一類封裝 ,一般用于不傳遞多個(gè)參數(shù)const query = function (sql) { return new Promise((resolve, reject) => { connection.query(sql, function (error, results) { if(error){reject(error); }else{resolve(results) } }); })}//第二類封裝 ,一般用于傳遞多個(gè)參數(shù)const query1 = function (userStr,name,passwd,token1) { return new Promise((resolve, reject) => { connection.query(userStr, function (error, result) { if(error){reject(error); }else{if (result.length > 0) { json[’message’] = ’用戶已經(jīng)存在’; json[’resultCode’]= 1;} else { json[’message’] = ’注冊成功’; json[’token’] = token1; json[’resultCode’] = 200; var insertStr = `insert into login (username, password,token) values ('${name}', '${passwd}','${token1}')`; console.log(insertStr) connection.query(insertStr, function (err, res) { if (err) throw err; })}resolve(json) } }); })}// 使用第一類封裝router.get( ’/csdnurl’, async(ctx, next) => { var sql = 'select * from csdnurl'; let results = await query(sql); ctx.body=results});// 使用第一類封裝router.post(’/login’, async (ctx, next) => { var name = ctx.request.body.username; var passwd = ctx.request.body.password; var userStr = `select username,password,token from login where username='${name}' and password='${passwd}'`; let results = await query(userStr); ctx.body = results});// 使用第二類封裝router.post(’/register’, async (ctx, next) => { var name = ctx.request.body.username; var passwd = ctx.request.body.password; var token1 = jwt.sign({ username: name }, secretkey, { expiresIn: 60 * 8 }); var userStr = `select * from login where username='${name}'`; let results = await query1(userStr,name,passwd,token1); ctx.body = json});

5、allPage是所有的頁數(shù),因?yàn)榭赡苡龅叫?shù)的情況所以向下取整加一。

6、resolve(List) 返回給前臺數(shù)據(jù)

到此這篇關(guān)于nodeJS與MySQL實(shí)現(xiàn)分頁數(shù)據(jù)以及倒序數(shù)據(jù)的文章就介紹到這了,更多相關(guān)nodeJS MySQL分頁及倒序內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 九九综合九九综合 | 在线观看91精品国产不卡免费 | 久久精品国产夜色 | 影音先锋5566中文源资源 | 在线视频免费观看短视频 | 免费网站在线高清观看 | 精彩视频一区二区三区 | 国产尤物在线播放 | 国产资源在线看 | 免费观看www视频 | 在线观看黄日本高清视频 | 成人做视频免费 | 午夜国产精品久久久久 | 欧美激情在线精品三区 | 中文精品久久久久国产网站 | 美女三级在线 | 精品一区二区三区在线视频 | 欧美一级大尺度毛片 | 国产精品久久久久久福利69堂 | 日韩美女中文字幕 | 久香草视频在线观看免费 | 好湿好紧好痛a级是免费视频 | 特级毛片免费视频播放 | 你懂得国产 | 在线观看永久免费视频网站 | 色综合网亚洲精品久久久 | 亚洲 欧美 激情 另类 校园 | 国产精品2022不卡在线观看 | 韩国亚洲伊人久久综合影院 | 草草线在成人免费视频 | 日本五级黄色片 | 成人精品视频在线观看 | 成人午夜啪啪免费网站 | 最近的免费中文字幕视频 | 丁香六月婷婷精品免费观看 | 中文字字幕 | 千涩成人网 | 亚洲国产精 | 一级特级毛片 | 欧美国产中文字幕 | 美国一级大黄大黄大色毛片a |