f***8 发帖数: 510 | 1 老赵这个要请教一下,ROR里面的CONTROLLER,就是有好多SQL,典型的比如
def index
@books = Book.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @merchants }
end
end
您说CONTROLLER里不能有SQL是什么意思呀?这个book.all 就是SQL SELECT ALL,你是
说不能有裸的SQL? |
|
i**i 发帖数: 1500 | 2 将来数据结构如果能统一成json的话 -- json只是数据的表示而已.
换nosql可能会好一点 -- no way. nosql和关系数据库一样历史悠久. 两者各有千秋.
类库换os也很蛋疼 -- 为毛换os? |
|
z****e 发帖数: 54598 | 3 难不成数据结构你不用json了?
用json才是主流吧
rest用http协议,不过改成tcp/ip或者udp/ip也不难
vert.x对于主流的网络协议都有现成的例子可以直接抄
剩下的没有啥可优化的,网络协议不可能再简单了
总不能ip都不用吧 |
|
z****e 发帖数: 54598 | 4 Best JSON responses per second
那你说这里response是啥?
Example response:
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 28
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
{"message":"Hello, World!"} |
|
d*******r 发帖数: 3299 | 5 我工作中 MongoDB 和 DynamoDB 都用.
DynamoDB 很容易学,不需要配置,Amazon 只给你一个 I/O capacity 的抽象,叫
Provisioned Throughput Capacity 之类, 就说你读写多,收钱多. 但是你不需要 (你
也基本不能) 管理它的 cluster, node, sharding 之类。
DynamoDB 我用着的主要不方便是:
1. 不能直接存取 JSON,要自己 serialize 成 string,存入,read 时候再还原成
JSON 来用.
2. Table 建成后,不能随便增加额外的 index (这个有点烦).
但是最近出了个大更新,好像上面 2 个问题都解决了, 我还没用过更新后的版本.
http://www.allthingsdistributed.com/2014/10/document-model-dyna
易用性 MongoDB 没的说,虽然一直有人喷 MongoDB 各种坑,我用着挺爽的. |
|
c*********e 发帖数: 16335 | 6 soap, restful都是阿。比如web services返回一个json,我用c#的一个web
application的method返回一个json,也一样啊。web services比web app的优势到底在
哪呢? |
|
B********e 发帖数: 1062 | 7 option 1
use boost Any type with std::map
option 2
define the structure in json format. and use json object to replace c++
structure.
if you want to use it with mongo, use bson object. |
|
B********e 发帖数: 1062 | 8 json and hdf5 are both our friends They are both very flexible and can be
used to represent complex structures.
Normally, we used json to define high level concepts and used hdf5 to store
the intermediate results. |
|
n******e 发帖数: 699 | 9 一般的Drupal网,都用了cache, 比如 varnish, 后段也用各种cache,所以 速度不是
问题。
reverse proxy cache实际上output html page, 跟PHP没有关系。
PHP只是CMS来publish or administration.
adobe JAVA的CMS CQ5 , Oracle的CMS都一样。
就是说CMS就是一个CMS, 速度实际不重要。
CMS以后就是一个json webservice , 这个json webservice可以cache。 |
|
z****e 发帖数: 54598 | 10 ruby的{key=>value}或者{key:value}
比{key value,key value}要直观吧?
你小心,有些语言{key value key value}其实是{key value}的set
{}可以表示set和map,你还觉得直观吗?
直观只是你适应了之后的错觉,json当然不直观
{}[],都需要字符填充,xml只有<>需要字符填充
你说哪个更直观?太直观的也有问题,xml就是太直观,太自由
所以控制起来很痛苦,所以才有了json |
|
h*i 发帖数: 3446 | 11 map -> {key value key value}
vector -> [value value value]
和JSON比就是少了一些:和, 而这些:,往往是JSON validation出错的原因。“oops, 多
写了个,”,是不是经常发生?
字符能省就省,都能提高可读性,只要不会出歧义。 |
|
z****e 发帖数: 54598 | 12 还在硬拗
说说record和class吧
这两个其实fp和oop都不用
虽然看上去很像
先说fp
fp的理念是information,不是对象,也谈不上class,没有变量
写过clj应该知道,clj不提倡你用什么record
因为这个东西长得像class,你应该尽量把information放入map
这样不会隐藏其内部结构,还有list,就像json一样
所以record的存在很尴尬,因为不提倡用,你不应该写出来
这是一,其次record即便要写,你也要写成json那样
各种扁平化,不依赖不继承,尽量immutable
从本质上说只是一个information的集合体
不是现实中对象的映射,所以说record是java里面的class纯粹就是生搬硬套
这么理解的话,显然oop的习惯影响了fp,仅仅因为都有new就说这两个是一样的
这个是错误的,fp的information的概念没有形成
其次oop
oop虽然有class,但是oop也已经逐步摆脱new这种做法了
之所以摆脱,一个重要原因就是func和entity的分离
spring就是管理func的工具,包装func的object缺... 阅读全帖 |
|
W***o 发帖数: 6519 | 13 js controller 是什么意思?你用go 做的controller 提供json, 前天angular 就
consume json 好了,当然angular 也要有controller |
|
h******b 发帖数: 6055 | 14 说到XML, 为什么JSON还没能完全取代XML?
感觉XML比JSON没有任何优势。 |
|
z***s 发帖数: 3241 | 15 又跟头交流了一下,他还是要用Tapestry,几个普通页面或者ajax就行。
现在的问题就是如何收集用户自定义的问题,就是这些树形问题集的UI。
现在的打算是用Tapestry自带的Tree component,但是这个是只读的,改造成可编辑的
不容易。
抽象的说是让用户自定义一个json格式的数据,UI是什么样子比较好?
我还是觉得用js收集个json发服务器最方便。
问题应该不会太多,大概一二十个吧。请大牛支招。 |
|
s****y 发帖数: 503 | 16 Java EE 7中有一个标准JSONP-1.0,JSONP是不是也利用JSON的数据格式?
但是JSONP是不是只和浏览器有关?
我如果使用JSON格式通过Restful传输数据,但是不用浏览器访问,是不是用不着JSONP
? |
|
o*********r 发帖数: 203 | 17 Add header to call (i.e. in jQuery):
$.ajax({url : ,
type : 'get',
contentType : 'application/json',
dataType : 'json',
cache : false,
headers : {'Authorization' : "Basic cmVtb3RlMTpyZW1vdGUx"}};
'cmVtb3RlMTpyZW1vdGUx' is a base64-encoded string. The plain text is <
username>: |
|
i**i 发帖数: 1500 | 18 有点意思,算一个答案。不过数据不只是文件,更多的是离散数据。
对pptwo的方案重新理解一下就是: 中心是github,同样支持用户和project。子系统是
一个working directory. 文件是json格式。
子系统独立工作,修改json文件。完事把数据push到中心。中心用fswatch监视文件变
化,对变化的数据更新index.
实际上,数据存在nosql数据库里,文件倒不多。
期待更好答案。 |
|
d******e 发帖数: 2265 | 19 以前OOD,一辆车4个轮子,车不能继承轮子。车封装状态。getwheel,给出内部状态。
现在函数一等公民,getwheel直接给4个不可变的轮子。然后进pipeline走了。
或者是空对空,json进,json 出。中间的O在哪里干看着。 |
|
z****e 发帖数: 54598 | 20 json就是一个object
那个o就是object的意思
不同的数据格式而已
并不是只有set/get才叫object
你用ruby,js等网络脚本的话,json直接嵌入你的代码都可以
同样的,scala可以直接把xml嵌入代码
java,swift等需要转换成class object
这种一捅到底的方式应该是很早以前就在追求的
省得改来改去,但是当然会有一些trade off
存储之后查找起来效率就比较低,因为没有经过整理
其次,这种方式对于crud来说比较容易
但是对于一旦数据需要转换,就会显得很不自然
比如游戏的server,经常要转换object的状态
这个时候immutable就显得很笨拙 |
|
z****e 发帖数: 54598 | 21 老姜,这种一般都直接写成properties
而非存到persistance里面去
xml用得比较多,多弄点app就知道了,基本上都是xml在搞
android,fxml,就只有ios是json
当然其他语言parse xml很弱,你做成json也是一种方式
但是基本都是properties,比较少做成persistance
还有就是,即便你要这样搞,这种接近metdata的数据
也是用db比较多,你用nosql算是各种奇芭
由 |
|
d******e 发帖数: 2265 | 22 要是我就考虑顶层category写成一个json.下面的都是它的sub-doc
sub category存成.
{_id:id, path: “top/child/child-2/child3}
要是找sub-doc就用json path. |
|
d*******r 发帖数: 3299 | 23 我觉得 C 写起来, 其实和不带 OOP 的 JS 很像,
特别是 kernel 里那种带 function pointer 的 struct, 类似 JS 里带 function 的
JSON.
这里 C function pointer 和 JS JSON 都是 event handler.
C 更直接, 有时干脆就直接用 goto 了, event handler 就算是高级点的 goto. |
|
S*********t 发帖数: 78 | 24 刚开始学 redis.
定义 key 和 value 的时候,
1. 使用一个大的 json 作为 value 包括全部细节,一次可以全部读出,修改的时候要
更新整个json
2. 把 value 打散成小打 key value, 需要多次读才能读出全部数据,当然update的时
候只需 update 小的 key value.
哪一种更好? |
|
z****e 发帖数: 54598 | 25 json比起relational table来说,更object一点
所以如果数据结构用json的话,用的时候就非常直接了
而relational table还需要做一层orm
从这一方面说,oop的思想还是很重要的
只要用了oop,所有东西都可以变得简单
而不用oo,屎坑就不远了,java好就好在强制oo
就好比一个法律制度,不许所有人随地大小便
整个环境就干净了,而其他语言,只要你不注意
就有人随地大小便,一不小心就踩到了屎 |
|
d****n 发帖数: 1637 | 26 一部分同意。
json完全是js的,别的语言,尤其是静态语言稍微吃力,但是比起开发速度,动态语言
被碾压。
json里面的type做api时候省时了,到真正type safe时候就是一大堆麻烦。
js不承认type,但是大多非string 使用的时候都要type 转换。
一会,parseInt,一会parsefloat。
rest api本来已经再后台定义好了的,前台js用就是了,还要猜来猜去,很浪费时间。 |
|
w*s 发帖数: 7227 | 27 server side
app.get('/testJson', function(req, res)
{
console.log("returning Json data");
res.json( [{code : "US", name : "United States", population : "11223344"
}] );
});
/* |
|
|
c*********e 发帖数: 16335 | 29 response一般传json就可以了,client side拿到json之后把它写出来。
text" |
|
b***i 发帖数: 3043 | 30 我们的串口比你的 简单多了 ,没有 flowcontrol, 唯一多的是 9bit,多了个地址 位
,更像嵌入式,要不然和台式机 一样 。
我们的需求是Modbus,要实现coil, input, holding等几个,而不是全部功能。
TCP/IP首先也是Modbus,然后要能够理解JSON,返回JSON。
嵌入式设备首先要跟串口通信,我觉得可以用同步,为什么要异步?多线程每隔10毫秒
看看串口的缓冲里面有多少,读进来。Modbus规定,如果有3.5个字符的时间没有输入
,说明完成。一共不到255个字符,满了就处理。而且Modbus有CRC,不符合规定就不处
理,只记录下来。
TCP/IP更是容易,Java有个Modbus TCP的库,要是C++我岂不是要重新发明轮子?连C#
用的都是Java那个。
真是不知道难在哪里。你再给个例子? |
|
d****i 发帖数: 4809 | 31 他的应用场合不应该用JSON, 应该直接用raw bytes做解析,JSON的overhead太大了。 |
|
b***i 发帖数: 3043 | 32 看你比较多的看法,给你个整体概念:
原来系统16MHz,16M内存能够对付,要求10M以太网,FAT16。现在新的系统为什么要改这
么多呢?一个是需求改成Gigabit Ethernet,无线,一个是要对未来的设备能够容易增
加功能,还要面向未来。
原来的系统用C,自己写没有OS的TCP/IP(库是买的),自己发明二进制的协议,和PC
控制软件(MFC)一起使用。PC上直接改变嵌入式的所有变量。就是一个struct,里面内
容全部被这个二进制协议改变。这样要写一个协议调试软件,解释这个二进制到底什么
意思,在开发阶段帮助解决bug。电路方面自己画包括RAM,Flash, Ethernet Phy在内的
所有电路。应该说,这个设备用了10年才完善起来。
现在的要求是1年内完成从电路到软件的要求。所以稳定,快速开发才是最重要的。所
以,我直接买板子,上面有了千兆以太网,有了SDIO接口(64G都可以用,属于SDXC),
内存1G。为什么1G呢? 因为1G DDR3内存比512M便宜,而Xilinx最多只能用1G。然后使
用Linux把TCP/IP, USB,Wi-Fi全都搞定。但是还剩下显... 阅读全帖 |
|
z****e 发帖数: 54598 | 33 vert.x
cassandra
elastic search
数据用什么都行
你不用搞那么复杂,直接丢给c*
然后在elastic search里面index
然后直接查找就好了,json不用改
直接存成json,注意建index,你需要自己判断哪个是index
然后抽出来,单独放一个column |
|
d******e 发帖数: 2265 | 34 晕,python的json
一个json.loads(s)就搞定的。
基本上和js一样方便。 |
|
b***i 发帖数: 3043 | 35 我们的嵌入式项目使用基本的串口,大概每秒一共<1KB的数据进来,需要处理和存储。
我们需要TCP/IP,需要流行的基本库,比如gzip, JSON等。我们使用Linux来解决底层
的库,现在说说对C++11的感受。
目前,按照几位高手的启发,现在Visual Studio 2015下实验,TCP/IP的同步异步都试
过了,多线程也很简单。
我们目标是使用Xilinx SDK,还没有安装最新的2015.3,只装了2015.2,是g++4.9.1,
所以支持C++11,不完全支持C++14。Xilinx SDK用过几小时,基于Eclipse。Visual
Studio里面我建立一个Solution,然后建立多个Project,互相依靠。不知道Xilinx SDK
是不是也这样,可否把程序模块化,分成多个项目?按说Eclipse就可以这样,一个
workspace多个项目。网上很少能查到Xilinx SDK的信息,包括g++版本只能安装后看。
我原来虚拟机下的g++才4.4,费了好大劲才升级成4.9.3。公司还不让git,不让
sourceforge下载源代码,连asio都是自己在家下然后发... 阅读全帖 |
|
z****e 发帖数: 54598 | 36
其实都差不多
只是json看起来,改起来都更方便
效率上不如blob,但是这本来就不是追求效率的地方
如果要效率,用col和char那些了
所以再慢一点也无所
json主要是debug方便 |
|
z****e 发帖数: 54598 | 37
XML
ide下xml的各种高亮还是比较管用的,可读性比properties这些强很多
比json也要强不少,至少大多数ide都支持对于xml的各种parse
json什么xcode就不怎么支持了 |
|
w***g 发帖数: 5958 | 38 你问的这个东西在python里就是dict套dict,存到文件里就是json/xml。
用simplejson把json读进来大概就是你要的东西。 |
|
n*****t 发帖数: 22014 | 39 路径计算最傻最傻的办法,离线算好后存成 json 放 cdn。全国主要站点算 3000 个、
支线不需要考虑,也就 9M 的路径组合,一个 http://path.12306.cn/shanghai/beijing.json 结果就来了。就算不傻干,下载时刻表,browser 自己用 js 也搞出来了。这两种都不需要 server 干活。
Payment 支付宝、银联的人来给你调通,一分钱都不用掏。
至于电商,强调的是商、不是电,这才是根本。 |
|
b***i 发帖数: 3043 | 40 我的项目的具体设计是一个嵌入式的服务器用Linux, C++11, ASIO, JSON等
客户端向服务器请求connect
连接后,服务器向客户端发送一个问题,
客户端回答
服务器回答对了
客户端开始发送JSON
服务器解析后进行动作,然后发送返回的信息
问题在最后一行:如果这个动作需要时间,我这些动作要在handle_read里面进行,还
是另起一个线程?我在进行这些动作的时候是否可以锁定信号灯?或者是比较简单的
lock?比如我要写一个变量,但是多个server可能同时访问这个变量,所以要lock再写。
目前采用boost的一个例子:
void start_read() {
// Set a deadline for the read operation.
input_deadline_.expires_from_now(readTimeout_);
// Start an asynchronous operation to read a newline-delimited message.
asio::async_read_until(socke... 阅读全帖 |
|
w*s 发帖数: 7227 | 41 var fs=require('fs');
var origData = JSON.parse(fs.readFileSync('0422.json', 'utf8'));
/////////////////////////////////////////////
var sort_by = function(field, primer) {
var key = primer ?
function(x) { return primer(x[field])} :
function(x) { return x[field]};
return function(a, b) {
return a = key(a), b=key(b), ((a>b) - (b>a));
}
}
/////////////////////////////////////////////
function certainValue(element)
{
return (element.systolic > 140 || element.... 阅读全帖 |
|
s*****w 发帖数: 1527 | 42 my dummy code, try to find values from file, then return it.
try {
parse string from file
if find pattern, throw "found it"
} catch (e) {
if(e !== "found it") throw e
} finally {
res.json("pattern1":v1, "pattern2":v2});
}
问题是,假如文件中没找到,应该如何送一个空的json回去?
第二个throw处 (inside catch )应该如何处理?
many thanks ! |
|
l**********n 发帖数: 8443 | 43 new Promise(function(resolve, reject){
let pattern = doParse(file);
resolve(pattern);
}).then(function(pattern){
res.json("pattern1":v1, "pattern2":v2});
})
.catch(function(exp){
res.json(exp);
}) |
|
q******n 发帖数: 66 | 44 如果我comment out line 88, 就没问题。 各为大牛, handle_database有什么问题吗?
{code}
1 var express = require('express');
2 var app = express();
3 var mysql = require('mysql');
4 var pool = mysql.createPool({
5 connectionLimit : 100, //important
6 host : 'localhost',
7 user : 'root',
8 password : '',
9 database : 'callback',
10 debug : false
11 });
12
13 function handle_database(req,res) {
1... 阅读全帖 |
|
e*******o 发帖数: 4654 | 45 >>> import json
>>> from multidict import MultiDict
>>> bin_str = b'{"DATA":1,"DATA":100}'
>>> json.loads(bin_str.decode('ascii'), object_pairs_hook=MultiDict)
baozi please. |
|
b***i 发帖数: 3043 | 46 那网站最前端主页可以用lambda吗
当然,我的页面会调用其他的Web service,读JSON。这个主的没有输入的JSON串,咋
写呢? |
|
|
l****n 发帖数: 156 | 48 谢谢回复,我举个例子。
IRS有个PFIC-compliant report的规定,简单说,针对美国纳税居民申报持有外国基金
的税务处理,对应的FORM 8621。因为跨境居住的美加居民比较多,所以这个问题还是比
较常见的。
我当然可以把目前的规则HARD CODING到代码里。
但是,关于加拿大的RESP账户,一直存在争议。如果IRS改变主意了,承认RESP和RRSP
具有同样地位,RESP不再属于PFIC了,软件该怎么办呢?
我当然可以打开EMACS,一行一行改代码。
然后,IRS又改变注意了,承认加拿大的TFSA也具有同样地位。
然后,IRS又承认欧洲的某个国家的基金不是PFIC了(因为其主要投资于美国)。
然后,IRS又承认百慕大的某个基金不是PFIC了。
然后。。。。。
可是我不想这么做,不想把每年的软件更新变成一项体力劳动。
所以,我想把税法的具体规则抽象出来,用一种类似简单英语的表示方法,存在JSON里。
每年开春,我就根据IRS的新规则,更新一下这个JSON文本,然后软件会对其做
semantics parsing,产生新的运算规则,并生成新的版本。
我发帖的目的,就是... 阅读全帖 |
|
c********w 发帖数: 308 | 49 需要做个简单的Java工具,input(从Unix pipeline 来) 是一千多万行binary msg.
每行被decode 成一个json msg.然后apply 一个filter 最后输出所有matching json
data.
如果decoder 和 filter 已经很优化了。有什么方法或者工具可以提高处理速度?关键
是量太大了。。。 |
|
g****t 发帖数: 31659 | 50 My two cents:
仅被string相关的那批函数处理的东西叫string
Json是被自己的函数处理的
有些东西原来是字符串
后来改名了
例如path
古代也是字符串
现在改名了
如果一类字符串总是被os . Path处理,
他就是path
: JSON算字符串吗?
: Slash。
|
|