[Groovy] What is Groovy
Groovy 란?
JVM에서 실행되는 스크립트 언어
문법이 JAVA와 가깝다. JAVA와 호환이 되며, JAVA 클래스 파일을 그대로 Groovy 클래스로 사용할 수 있다.
문자열
문자열을 표기하는 방법 ‘‘와 ““가 있음.
’’
단순히 문자열을 출력하는데 사용
””
문자열을 출력, 문자열 내부에 $변수 를 이용해 동적인 표시로 사용 가능.
’’’, “””
여러줄을 사용하고싶으면 ‘’’ ‘’’, “”” “"”를 사용.
메소드 호출
Groovy는 메소드 호출 시 () 소괄호를 생략할 수 있다.
형 생략
def 라는 키워드를 이용하여 모든 타입의 변수를 선언할 수 있다.
형을 지정하여 생성하는 법도 가능함.
Closure
Closure는 JAVA의 Lamda와 매우 유사한 성격의 기능
JSON Parsing
JsonSlurper는 java.io.NotSerializableException: groovy.json.internal.LazyMap를 발생하기 때문에 JsonSlurperClassic를 사용한다. 참고
import groovy.json.JsonSlurperClassic
@NonCPS
def jsonParse(def json) {
new groovy.json.JsonSlurperClassic().parseText(json)
}
def sonarApi = httpRequest "${SONAR_URL}/api/measures/search"+urlParam
def sonarApiResponse = jsonParse(sonarApi.content)
ForEach
('a'..'c').each {
println "Letter ${it}"
}
['Cat', 'Dog', 'Elephant'].each { animalName ->
println "Animal ${animalName}"
}