WEB开发网      婵犻潧鍊婚弲顐︽偟椤栨稓闄勯柦妯侯槸閻庤霉濠婂骸浜剧紒杈ㄥ笚閹峰懘鎮╅崹顐ゆ殸婵炴垶鎸撮崑鎾趁归悩鐑橆棄闁搞劌瀛╃粋宥夘敃閿濆柊锕傛煙鐎涙ê鐏f繝濠冨灴閹啴宕熼鍡╀紘婵炲濮惧Λ鍕叏閳哄懎绀夋繛鎴濈-楠炪垽鎮归崶褍妲婚柛銊ュ缁傚秹鏁撻敓锟� ---闂佹寧娲╅幏锟�
开发学院软件开发Java 精通 Grails: RESTful Grails 阅读

精通 Grails: RESTful Grails

 2009-10-26 00:00:00 来源:WEB开发网 闂侀潧妫撮幏锟�闂佸憡鍨电换鎰版儍椤掑倵鍋撳☉娆嶄沪缂傚稄鎷�婵犫拃鍛粶闁靛洤娲ㄩ埀顒佺⊕閵囩偟绱為敓锟�闂侀潧妫撮幏锟�  闂佺ǹ绻楀▍鏇㈠极閻愭娑樷枎閹邦剛娉氶梺鍛婎殔濞层劌鈻撻幋婵愬殫妞ゆ梻鍘х憴锟�
核心提示: 图片看不清楚?请点击这里查看原图(大图),虽然默认的 XML 输出很好调试,精通 Grails: RESTful Grails(7),但您还是想稍微自定义一下格式,还好,而属性(诸如 id 和 iata)是用 Groovy 散列映射键:值 语法定义的,要填充元素的正文,render() 方法给您

图片看不清楚?请点击这里查看原图(大图)。

虽然默认的 XML 输出很好调试,但您还是想稍微自定义一下格式。还好,render() 方法给您提供了一个 Groovy MarkupBuilder,它允许您动态定义自定义 XML。清单 2 创建了一些自定义 XML 输出:


清单 2. 自定义 XML 输出
def customXmlList = { 
 def list = Airport.list() 
 render(contentType:"text/xml"){ 
  airports{ 
   for(a in list){ 
    airport(id:a.id, iata:a.iata){ 
     "official-name"(a.name) 
     city(a.city) 
     state(a.state) 
     country(a.country) 
     location(latitude:a.lat, longitude:a.lng) 
    } 
   }     
  } 
 } 
} 

图 2 展示了输出结果:


图 2. 使用 Groovy MarkupBuilder 的自定义 XML 输出
精通 Grails: RESTful Grails

图片看不清楚?请点击这里查看原图(大图)。

注意源代码和 XML 输出之间的对应的紧密程度。您可以随意定义元素名称(airports、airport、city),无需顾及它们是否与类的真实字段名称对应。如果您想提供一个以连字符链接的元素名称的话(诸如 official-name),又或者想要添加名称空间支持的话,只要给元素名称加上引号就可以了。而属性(诸如 id 和 iata)是用 Groovy 散列映射键:值 语法定义的。要填充元素的正文,需要提供一个不带键:的值。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:精通 Grails RESTful

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接