본문 바로가기

MyDevLife

(257)
06. Operator Overloading http://groovy-lang.org/operators.html#Operator-Overloading Groovy 에서 + 연산자를 사용하면 plus 라는 메소드가 동작한다. Operator Method Operator Method + a.plus(b) a[b] a.getAt(b) - a.minus(b) a[b] = c a.putAt(b, c) * a.multiply(b) a in b b.isCase(a) / a.div(b) a.rightShift(b) ** a.power(b) >>> a.rightShiftUnsigned(b) | a.or(b) ++ a.next() & a.and(b) -- a.previous() ^ a.xor(b) +a a.positive() as a.asType(b) -a a.ne..
05. DataType Groovy 는 JAVA 언어로 해석되므로 Groovy 에서 지원하는 데이터 타입은 JAVA 에서 지원하는 데이터 타입과 일치한다. 그중 가장 기본적으로 사용되는 Primitive Data Type 에는 아래와 같은 것들이 있다. 실제 이 데이터 타입은 그대로 Groovy 에서 사용할 수 있다. 하지만 JAVA 에서와 달리 이런 기본적인 데이터 타입도 Groovy 를 사용하면 Wrapper Class 로 묶인다. byte b = 10 println b.class.getName() short s = 1000 println s.class.getName() float f = 1.25 println f.class.getName() println 23123123123123123124324512342.class.g..
04. Basic Grammer 이번장에서는 기본적인 Groovy 문법에 대해 알아보자. Import http://groovy-lang.org/structure.html#_imports 자바의 Import 와 다르지 않다. 특정 클래스만 지정할 수 있고 패키지 전체를 포함하고자 하면 * 를 이용할 수 있다. import groovy.xml.MarkupBuilder def xml = new MarkupBuilder() Keywords http://groovy-lang.org/syntax.html#_keywords Groovy 에서 사용하는 모든 키워드를 확인할 수 있다. 키워드는 변수, 함수명 등으로 사용할 수 없다. as assert break case catch class const continue def default do else..
03. IntelliJ IDE 이번에는 IntelliJ IDE 를 사용해서 간단한 Groovy Project 를 만들어 보도록 하자. 아래와 같은 화면이 나타나는데 Groovy, Project SDK 및 Groovy library 를 선택하고 Next 버튼을 누른다. 다음으로 Project 이름 과 Workspace 를 지정하고 Finish 를 누른다. 그러면 아래 화면이 나오는데 Project 탭을 열어 Src 위치에서 New->Package 를 선택하여 package 이름을 com.test 라고 주고 해당 패키지 위치에서 New->Groovy Class 를 선택하여 Class 이름을 Helloworld 라고 하면 아래와 같은 화면이 된다. 위는 Groovy Class 를 만드는 것이며 New->Groovy Script 를 선택하면..
02. groovyConsole 간단히 goovy 코드를 작성하여 테스트 해보고 groovyConsole 에 포함된 몇몇 유용한 기능에 대해서도 살펴보자. 아주 간단히 아래와 같이 코드를 작성해 보자. def 라고 변수를 선언했는데 실제 이 코드는 JAVA 코드로 변환이 된다. 변환된 코드를 보고자 한다면 Menu->Script->Inspect AST 창을 열어보면 해당 구문이 실제 변경된 JAVA 코드를 확인할 수 있다.
01. Install groovy 를 사용하기 위해서는 일단 JAVA jre 혹은 jdk 가 설치되고 path 에 잡혀 있어야 한다. 윈도우 기반으로 테스트 환경을 만들어보자. Install Groovy http://groovy-lang.org/ 사이트에 들어가서 Download 탭으로 들어가면 최신 릴리즈를 바로 다운로드 받을 수 있다. 다운받은 zip 파일의 압축을 풀고 아래와 같이 GROOVY_HOME 환경 변수를 등록하고 마찬가지로 PATH 에 %GROOVY_HOME%\bin 를 등록하자. Install SDKman (Package Manager) gitbash 에서 groovy 를 사용하기 위해서는 SDKman 이라는 Package Manager 를 설치후 groovy 를 찾아 설치한다. SDKman 을 설치하는 방..
12. Aggregation 통계 (aggregation) 옵션을 이용하면 query 에 따른 documents 의 통계 결과를 알 수 있다. aggregation 옵션의 설명과 사용에 앞서 테스트용 데이터를 입력하자. POST /order/default/_bulk GET /order/default/_mapping { "order" : { "mappings" : { "default" : { "properties" : { "lines" : { "properties" : { "amount" : { "type" : "float" }, "product_id" : { "type" : "long" }, "quantity" : { "type" : "long" } } }, "purchased_at" : { "type" : "date" }, "sa..
11. Query Result Options Select the output field 특정 field 만 output 결과에 설정하려면 _source 옵션을 사용한다. 아래와 같이 다양한 방식으로 설정 가능하다. GET /recipe/default/_search { "_source" : ["user", "created_at"], "query" : { "term" : {"title" : "test"} } } GET /recipe/default/_search { "_source" : false, "query" : { "term" : {"title" : "test"} } } GET /recipe/default/_search { "_source" : "user", "query" : { "term" : {"title" : "test"} } } GET /r..