4.14 그루비를 사용한 구성
스프링 프레임워크 4.0부터 새롭게 도입된 기능 중 하나는 그루비(Groovy) 언어를 이용해 빈을 정의하고 ApplicationContext를 구성하는 것입니다. 해당 기능은 개발자가 구성 작업에 사용했던 XML이나 애너테이션 기반 빈 구성 작업을 대체하거나 보조할 수 있는 또 다른 선택 수단을 제공합니다. GenericGroovyApplicationContext 클래스를 사용하면 그루비 스크립트에서 스프링 ApplicationContext를 바로 읽어 들이거나 자바에서 해당 그루비 스크립트의 구성을 사용할 수 있습니다. 우선 외부 그루비 스크립트를 사용해 어떻게 빈 정의를 하고 이를 자바에서 사용하는지 알아보도록 하겠습니다. 지금까지 여러 빈 클래스들을 소개했는데 코드 재활용성을 높이는 측면에서 3장에서 소개한 Singer 클래스를 이번 예시에 사용하겠습니다. 다음 코드는 Singer 클래스의 코드 내용입니다.
예제 4-94 Singer 클래스([[groovy-config-java]] Singer.java)
package com.apress.prospring5.ch3.xml; public class Singer { private String name; private int age; public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public String toString() { return "\tName: " + name + "\n\t" + "Age: " + age; } }