문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
|
groovy:xml [2014/02/12 10:32] kwon37xi 새로 만듦 |
groovy:xml [2017/12/27 08:29] (현재) kwon37xi [XML Builder] |
||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ====== Groovy XML ====== | ====== Groovy XML ====== | ||
| + | ===== XMLParser ===== | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | ==== Namespace ==== | ||
| + | [[http:// | ||
| + | Namespace가 존재할 경우 각 노드의 이름([[http:// | ||
| + | <code groovy> | ||
| + | def pom = new XmlParser().parse(new File(' | ||
| + | |||
| + | def ns = new groovy.xml.Namespace(' | ||
| + | def items = pom[ns.dependencies][ns.dependency][ns.scope].findAll { | ||
| + | it.text() == " | ||
| + | }.each { | ||
| + | println it.text() | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== XML Builder ===== | ||
| + | * '' | ||
| + | * '' | ||
| + | * [[https:// | ||
| + | // < | ||
| + | identity([: | ||
| + | groupId(catalog.groupId) | ||
| + | artifactId(catalog.artifactId) | ||
| + | version(catalog.version) | ||
| + | } | ||
| + | // 뒤에 ([:]) 로 호출하여 다른 메소드 시그너처로 바꿔치기함 | ||
| + | </ | ||
| + | * 혹은 '' | ||
| + | def builder = new MarkupBuilder(writer) | ||
| + | builder.message { | ||
| + | delegate.body(contentType: | ||
| + | text ' | ||
| + | } | ||
| + | } | ||
| + | // --> | ||
| + | < | ||
| + | <body contentType=' | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | ===== Pretty Print ===== | ||
| + | * [[http:// | ||
| + | <code groovy> | ||
| + | println XmlUtil.serialize(xmlDocument) // 문자열 혹은 SteramingMarkupBuilder 객체 등. | ||
| + | </ | ||
| + | |||
| + | ===== DOMBuilder ===== | ||
| + | * [[http:// | ||