본문 바로가기
Homo Faber/Techniques

GRAILS - 시작하기 [1편]

by javauser 2009. 4. 28.


1. 설치 (Windows 환경)

Grails 다운로드 - grails.org 에서 Grails를 다운로드 받음. [2009.04.28 현재 버전 1.1]
(* 먼저 JDK 1.4 이상이 설치되어 있어야 함.)
다운받은 grails-[version].zip 파일을 디렉토리에 품.
환경변수에 GRAILS_HOME 세팅, PATH에 %GRAILS_HOME%\bin 추가 (JDK 설치와 유사)
Command 창에서 grails 실행

[grails와 grails help] 를 실행한 화면

위의 실행 화면에서 grails 를 실행시 target 이라는 용어가 나타나는데, 이는 Grails가 Apache Ant를 사용하기 있기 때문임.

2. Target 실행
Grails target을 실행하려면 grails 다음에 target의 이름을 붙여서 실행하면 됨. 예를 들어, 새로운 Grails 어플리케이션을 생성하려면
grails create-app 를 명령을 실행함. 이러한 target의 이름들은 여러가지를 조합할 수 있음. 예를 들어, 어플리케이션을 테스트하고,
어플리케이션 서버에 배포하기 위해 war 파일을 생성하려면, grails test-app war 명령을 실행함.
위의 target 이름 중에 'create-' 로 시작되는 target들은 Grails 어플리케이션을 세팅하고 artifact를 만드는데 편리한 target들임.
그 다음 'generate-' 로 시작하는 target들은 반복코드를 생성하는 강력한 target 들임. 이러한 개념을 Grails에서는 뼈대(scaffolding)라고 함.
위의 target들 중에서 가장 유용한 것은 Grails 어플리케이션을 실행하고(Jetty 어플리케이션 서버 포함), 단위/기능 웹 테스트를 실행하고
war를 생성하는 것임.

3. "Hello World!" 실행 어플리케이션

grails create-app 를 실행해서 기본적인 Grails 어플리케이션을 생성함.

실행 후에, Application name을 입력하는 부분에서 hello 라고 입력함. 위의 그림과 같이 실행하면 하위에 hello 라는 디렉토리와 .grails 라는
디렉토리가 생성되었음을 볼 수 있음.

hello\grails-app 디렉토리 하위에 controllers, domain, views 디렉토리가 나타남.
이는 Grails가 기본적으로 MVC 프레임워크임을 나타남.
Controller가 MVC 프레임워크의 핵심이듯이 Grails도 동일함. 따라서, Grails에서 요청을 처리하는
유일한 방법은 controller를 생성하는 것임. grails의 create-controller를 사용해서 컨트롤로를 생성함.

grails create-controller를 실행하고, controller 이름에 hello 를 입력함.



































컨트롤러를 생성시 hello 디렉토리에서 수행함. hello\grails-app\controllers 디렉토리에 HelloController.groovy 가 생성됨. 또한, hello\test\unit 디렉토리 하위에도 HelloControllerTests.groovy 파일이 생성됨.

[HelloController.groovy 파일 내용]
class HelloController {
def index = { }
}

[HelloControllerTests.groovy 파일 내용]
import grails.test.*

class HelloControllerTests extends ControllerUnitTestCase {
protected void setUp() {
   super.setUp();
}

protected void tearDown() {
   super.tearDown();
}

void testSomething() {

}
}

화면에 'Hello World!' 라는 것을 나타내기 위해서 HelloController.groovy 파일을 다음과 같이 수정함.

[HelloController.groovy 파일 내용]
class HelloController {
def index = {
render 'Hello World!'
}
}

hello 디렉토리에서 grails run-app 실행함.


서버가 실행되는 것을 확인하고, http://localhost:8080/hello/hello/ 을 브라우저로 확인


URL에서 첫번째 hello는 컨텍스트 경로이며, 뒤의 hello가 컨트롤러 명임.
반응형

'Homo Faber > Techniques' 카테고리의 다른 글

자바에서 캐싱 솔루션  (0) 2009.09.01
GRAILS - Eclipse Plugin 사용하기 [2]  (0) 2009.05.06
Maven Dependency의 scope의 의미  (1) 2008.08.21
EJB3 JPA 모델링 Notation 제안 [I]  (0) 2008.05.01
DB Tuning 기본 원칙들  (0) 2008.02.21