在SSH2框架中,大家会直接使用struts2的json模式直接将对象list生成json字符串,如一个用户列表
List<Users>一般格式为
{"sum":247,"records":[{"id":1,"name":"hellodoom","birth":"1977-01-01",.....},{...}...]},
通过ext的jsonReader方式很容易填充store,而如果生成一个纯二维数组如[[1,'hellodoom','1977-01-01'...],[...]...],这时我们则可以通过arrayReader方式来实现,但如果是这种格式:{"records":[[1,'hellodoom','1977-01-01'...],[...]...]}
我们该怎么实现呢?
在网上查过很多资料未发现答案,其实这种场景还是很常见的,以users表为例,一般情况下users表会有id\name\sex\birth\...很多属性,但我们经常会只取两个属性id\name用作下拉框用,在hibernate中我们可以使用select new Users(id,name) from Users只取两个字段的值,但其它值还是会设为null,这样当生成json时,还是会生成
{"sum":247,"records":[{"id":1,"name":"hellodoom","birth":null,"age":null.....},{...}...]}