• lua操作json,mysql,redis等


    ==========================example for lua json=======================
    local cjson = require("cjson")
    
    local str = '["a", "b", "c"]'
    local j = cjson.decode(str)
    for i,v in ipairs(j) do
    print(v)
    end
    
    str = '{"A":1, "B":2}'
    j = cjson.decode(str)
    for k,v in pairs(j) do
    print(k..":"..v)
    end
    j['C']='c'
    new_str = cjson.encode(j)
    print(new_str)
    
    ==========================example for lua mysql=======================
    mysql.lua
    require "luasql.mysql"
    env = assert(luasql.mysql())
    
    conn = assert(env:connect("fsdb","root","123456","127.0.0.1",3306))
    
    conn:execute"SET NAMES utf8"
    function rows (connection, sql_statement)
    local cursor = assert (connection:execute (sql_statement))
    return function ()
    return cursor:fetch()
    end
    end
    
    for did, status in rows(conn ,"SELECT driverid,status from fs_driver_products") do
    print(string.format("%s %s",name,email))
    end
    
    conn:close()
    env:close()
    

    lua操作mysql的库文件

    http://luaforge.net/projects/luasql/
    支持mysql sqlite oracle(oci)postgres和odbc

    lua操作redis的库文件
    https://github.com/gitforks/redis-lua

    需要依赖luasocket库文件。
    http://luaforge.net/projects/luasocket/
    此库文件里面有lua对网络的一些操作库,如http smtp ftp redis mime等lua实现。

    Lua加载lua文件时,需要设置 package.path
    如:package.path = "依赖的lua文件所在的目录,支持正则方式加载" .. package.path
    package.path = "../deps/lua/?.lua" .. package.path
    Lua加载so动态库,需要设置 package.cpath
    package.cpath = "../deps/lua/help.so" .. package.cpath

  • 相关阅读:
    如何成为一名高级C++程序员
    JAVA设计模式:装饰模式
    JAVA设计模式:代理模式
    HTML学习笔记四
    HTML学习三
    HTML学习二
    HTML学习一
    JAVA集合一之集合简介(Collection,List,Set)
    20150817---成长日记1---DelayQueue&&Delayed&&Other
    shell-早间学习,每日一点-5
  • 原文地址:https://www.cnblogs.com/voipman/p/5070938.html
Copyright © 2020-2023  润新知