我正在使用Struts 2和json插件,struts.xml文件中的属性映射通常令人沮丧,但我能够解决它们.
我遇到过一个案例,我无法设置includeProperties来给我我期望的结果.
我经常使用配置表达式
^itemList\[\d+\]\.id,
^itemList\[\d+\]\.name
....
Run Code Online (Sandbox Code Playgroud)
这很好用.
在这种情况下,我想从Map而不是列表(或者是列表成员的子映射)返回数据
如果使用*,则正确打印整个地图,但我不希望地图元素中的所有数据.
^itemList\[\d+\]\map\.*
Run Code Online (Sandbox Code Playgroud)
整个地图都归来了
我尝试了几种不同的格式,但都没有产生结果.
^itemList\[\d+\]\map\[\d+\]\.id
^itemList\[\d+\]\map\[\d+\]\.name
Run Code Online (Sandbox Code Playgroud)
map属性中没有返回任何内容
任何人都有运气的语法来限制地图的内容?
谢谢-Scott
1)你的正则表达式很可疑。请注意,在表达式“^itemList[\d+]\map[\d+].id”中,+d 指的是多一位数字,因此地图必须将数字作为键。如果这不是您想要的,那么“.+”可能更合适(一个或多个任何字符)。
2)将Map转换为LinkedHashMap,然后将其视为列表。(没有测试过,可能行不通)