python web server 接收数据_python开发web service 中数据库链接和释放应该怎么处理?...

用tornado开发web service服务。服务端根据接收到的json数据对mysql数据库进行查询,并把结果反馈给用户。采用sqlalchemy对数据库进行操作,以下对数据库链接的创建,释放是否合理呢?

class db:

def __init__(self,db_ip='',db_name='',db_user='',db_pass='',db_charset=''):

self.db_str = 'mysql+pymysql://'+db_user+':'+db_pass+'@'+db_ip+':3306/'+db_name+'?'+'charset='+db_charset

self.engine = create_engine(self.db_str, encoding='utf-8', echo=False)

self.dbsession = sessionmaker(bind=self.engine)

def return_dbsession(self):

return self.dbsession

def close_session(self):

self.session.close()

database = db(db_ip='127.0.0.1', db_name='data_utf', db_user='root', db_pass='root', db_charset='utf8')

处理post请求代码如下

class rcvRequest(tornado.web.Request):

session = scoped_session(database.return_dbsession())()

response = []

for ctt in session.query(table).filter(table.ID == id):

response.append(ctt)

self.write(str(response))

session.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值