当前位置: 首页 > news >正文

tornado异步操作数据库-mysql

import json

from tornado import web, ioloop
import aiomysql

settings = {
"debug" : True,
"mysql":{
"host": "127.0.0.1",
"port": 3306,
"user": "root",
"password": "123456",
"db": "test",
},
}

class Home(web.RequestHandler):
def prepare(self):
# 读取数据库连接配置
self.db = self.settings["mysql"]
print(self.db)
self.json_argument = {}
if self.request.headers.get("Content-Type", "").lower() == "application/json":
self.json_argument = json.loads(self.request.body)

async def get(self):pool = await aiomysql.create_pool(host=self.db["host"],port=self.db["port"],user=self.db["user"],password=self.db["password"],db=self.db["db"],charset="utf8",)print(pool)async with pool.acquire() as conn:async with conn.cursor() as cur:await cur.execute("SELECT * from user")# print(cur.description)data = await cur.fetchall()print(data)pool.close()await pool.wait_closed()self.write("ok")

def make_app():
return web.Application(handlers=[
(r"/", Home)],
**settings,
)

if name == 'main':
app = make_app()
app.listen(8888)
ioloop.IOLoop.current().start()

http://www.rkmt.cn/news/17905.html

相关文章:

  • 实用指南:制冷剂中表压对应温度值的获取(Selenium)
  • Git克隆项目运行指南
  • OpenCV——批量读取可视化图片 - 指南
  • 各种B站客户端
  • CSP-S模拟27
  • 模型训练技巧 - -一叶知秋
  • WPF mvvm datagrid export as pdf via iTextSharp
  • 日总结 9
  • kettle插件-国产数据库瀚高插件,助力国产数据库腾飞
  • 实用指南:provthrd.dll propsys.dll profsvc.dll profprov.dll procinst.dll prntvpt.dll prnntfy.dll
  • 37 ACwing 298 Fence 题解
  • 35 ACwing 297 The Battle Chibi 题解
  • 一款由网易出品的免费、低延迟、专业的远程控制软件,支持手机、平板、Mac 、PC、TV 与掌机等多设备远控电脑!
  • aardio跨窗口传递变量
  • AI在简单视觉推理谜题中的挑战
  • new day
  • MyBatis-Plus 的 QueryWrapper 应用以及在内存中处理JSON数组字符串匹配
  • 从 ZooKeeper 到 ELK:分布式中间件与日志分析系统全解析 - 教程
  • 【MySQL学习笔记】数据库的CURD(一) - 详解
  • fp16训练神经网络时出现nan问题
  • newDay07
  • 余弦日记
  • 关于jinja2的ssti模版注入的学习+过滤
  • [EGOI 2023] Guessing Game
  • [ROI 2018] Addition without carry
  • 解码Linux基础命令
  • 基于 C++ 的高雷诺数湍流直接数值模拟求解器设计与性能优化 - 实践
  • 是时候使用NanoID取代UUID了
  • 自动评估问答模型的技术突破
  • task8.c