mfc+mysql+创建表单_一个完整的c++ web框架(webserver + orm)
xmart
環(huán)境
只需要支持c++11的編譯器
特性
跨平臺(tái)支持
易于使用的web庫 (xfinal) 基本使用
易于使用的orm庫 (xorm) 基本使用
完整的處理工具 (utils)
演示
#include "xmart.hpp"
using namespace xmart;
struct test {
mysql::Integer id;
mysql::Integer a;
std::string b;
mysql::MysqlDateTime time;
mysql::MysqlDate date;
mysql::MysqlTime tm;
mysql::Double money;
};
REFLECTION(test, id, a, b, time, date, tm, money)
int main() {
bool r = false;
// 從配置文件初始化xmart
http_server& server = init_xmart("./config.json", r);
if (!r) {
return 0;
}
//從form表單寫入數(shù)據(jù)庫
server.router("/write", [](request& req, response& res) {
auto data = map_from_query(req);
dao_t dao;
dao.insert(data);
res.write_string("hello,world");
});
//從url參數(shù)寫入數(shù)據(jù)庫
server.router("/writeparams", [](request& req, response& res) {
auto data = map_from_params(req);
dao_t dao;
dao.insert(data);
res.write_string("hello,world");
});
//從提交的json寫入數(shù)據(jù)庫
server.router("/writejson", [](request& req, response& res) {
auto json_str = req.body();
auto json = json::parse(json_str);
auto data = map_from_json(json);
dao_t dao;
dao.insert(data);
res.write_string("json insert");
});
//獲取數(shù)據(jù)并通過json數(shù)據(jù)交互返回給客戶端
server.router("/list", [](request& req, response& res) {
dao_t dao;
auto pr = dao.query("where 1=1");
json root;
if (pr.first) {
auto& vec = pr.second;
for (auto& iter : vec) {
root["list"].push_back(serializer::to_json(iter));
}
}
root["success"] = true;
res.write_json(root);
});
server.run();
}
Donation
alipay:
wechat:
總結(jié)
以上是生活随笔為你收集整理的mfc+mysql+创建表单_一个完整的c++ web框架(webserver + orm)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Structured Multimoda
- 下一篇: linux cmake编译源码,linu