【发布时间】:2019-08-19 12:38:34
【问题描述】:
在我的 CRUD 休息服务中,我插入数据库并希望用创建的新记录响应调用者。我正在寻找一种将地图转换为 json 的好方法。
我在 ballerina 0.991.0 上运行并使用 postgreSQL。
更新(“INSERT ...”)的返回是一个映射。 我尝试使用转换和邮票,但我没有为我工作。
import ballerinax/jdbc;
...
jdbc:Client certificateDB = new({
url: "jdbc:postgresql://localhost:5432/certificatedb",
username: "USER",
password: "PASS",
poolOptions: { maximumPoolSize: 5 },
dbOptions: { useSSL: false }
}); ...
var ret = certificateDB->update("INSERT INTO certificates(certificate, typ, scope_) VALUES (?, ?, ?)", certificate, typ, scope_);
// here is the data, it is map<anydata>
ret.generatedKeys
map应该知道它是哪种数据类型吧?
那么应该很容易将它转换为这样的json:
{"certificate":"{certificate:
"-----BEGIN
CERTIFICATE-----\nMIIFJjCCA...tox36A7HFmlYDQ1ozh+tLI=\n-----END
CERTIFICATE-----", typ: "mqttCertificate", scope_: "QARC", id_:
223}"}
现在我做一个 foreach 并手动构建 json。相当丑陋。也许有人有一些技巧可以很好地做到这一点。 不能排除是因为我缺乏编程技能:-)
【问题讨论】: