sitelink1  
sitelink2  
sitelink3  
extra_vars6  
http://wiki.javajigi.net/pages/viewpage.action?pageId=469
Added by 박재성, last edited by 박재성 on 9월 22, 2005

Equinox를 이용한 개발 방법

AppFuse를 이용할 경우 개발하게 될 애플리케이션에 비하여 너무 복잡도가 높아질 수 있다. 이 같은 단점을 보완하기 위한 일환으로 Equinox를 이용하여 시작하는 것도 좋은 대안이라고 생각한다. Equinox는 AppFuse에서 개발한 Sample 애플리케이션이다. Sample 애플리케이션의 단순함으로 인해서 이 프로젝트를 기반으로 개발 환경을 세팅해도 좋을 것으로 생각한다.

Equinox를 이용할 경우 간단한 사용자 관리 프로젝트를 Spring JDBC, Spring + Velocity, Struts + Spring등 다양한 프레임워크와의 통합된 예제 소스로 구현하는 것이 가능하다.

다음 받은 Equinox의 extras 디렉토리 하위의 각 디렉토리 내에서 빌드를 해줄 경우 다양한 프레임워크 조합의 Equinox 예제를 생성할 수 있다.

Equinox를 설치 및 배포하기 위해서는 ANT가 설치되어 있어야 한다.

Equinox를 Hibernate + MySQL에 세팅하기

  • 먼저 http://raibledesigns.com/page/rd?anchor=ann_equinox_1_4_released에서 Equinox 최신 버전을 다운 받아 압축을 푼다. 압축을 푼 디렉토리를 EQUINOX_HOME으로 한다.
  • MySQL을 설치한 다음 Equinox가 사용할 데이터베이스를 생성한다. 이 문서에서는 equinox 라는 데이터베이스를 생성하였다.
  • Tomcat 서버를 설치한 다음 시스템 환경 변수에 CATALINA_HOME을 세팅한다.
  • EQUINOX_HOME/web/WEB-INF/classes/jdbc.properties.mysql 파일을 열어 데이터베이스 정보를 수정한 다음 jdbc.properties로 이름을 변경한다. Equinox 1.4에서 디폴트로 지원하는 데이터베이스는 postgres이다. 디폴트로 제공하는 jdbc.properties파일은 다른 이름으로 변경한다.
  • EQUINOX_HOME/web/WEB-INF/applicationContext-hibernate.xml 파일을 열어 hibernate.dialect을 org.hibernate.dialect.PostgreSQLDialect에서 org.hibernate.dialect.MySQLDialect로 변경한다.
  • Prompt에서 "ant deploy"를 실행하여 Equinox 애플리케이션을 Deploy한다.
  • http://localhost:8080/equinox로 접근한다.

Equinox를 Spring JDBC + MySQL에 세팅하기

  • 먼저 http://raibledesigns.com/page/rd?anchor=ann_equinox_1_4_released에서 Equinox 최신 버전을 다운 받아 압축을 푼다. 압축을 푼 디렉토리를 EQUINOX_HOME으로 한다.
  • EQUINOX_HOME/extras/spring-jdbc 디렉토리에서 "ant install"을 실행하여 Equinox가 Spring JDBC를 사용하도록 한다.
  • MySQL을 설치한 다음 Equinox가 사용할 데이터베이스를 생성한다. 이 문서에서는 equinox 라는 데이터베이스를 생성하였다.
  • EQUINOX_HOME/src/org/appfuse/dao/jdbc 디렉토리로 보면 hsql과 postgres 데이터베이스를 지원하기 위한 SQL파일이 있다. 이 SQL을 참조하여 MySQL 데이터베이스 지원이 가능하도록 쿼리를 수정한 다음 equinox 데이터베이스에 테이블을 생성한다.
MySQL용 SQL
create table app_user (id bigint not null primary key, first_name varchar(50), last_name varchar(50), birthday timestamp);
create table user_sequence (value int not null);
insert into user_sequence values(0);
  • Tomcat 서버를 설치한 다음 시스템 환경 변수에 CATALINA_HOME을 세팅한다.
  • EQUINOX_HOME/web/WEB-INF/classes/jdbc.properties.mysql 파일을 열어 데이터베이스 정보를 수정한 다음 jdbc.properties로 이름을 변경한다. Equinox 1.4에서 디폴트로 지원하는 데이터베이스는 postgres이다. 디폴트로 제공하는 jdbc.properties파일은 다른 이름으로 변경한다.
  • EQUINOX_HOME/web/WEB-INF/applicationContext-jdbc.xml 파일을 열어 org.springframework.jdbc.support.incrementer.PostgreSQLSequenceMaxValueIncrementer 에서 org.springframework.jdbc.support.incrementer.MySQLMaxValueIncrementer로 변경한다. 또한 주석처리되어 있는 columnName 속성의 주석을 푼다. 이 문서에서는 칼럼이름을 value로 사용하고 있다.
MySQL용 시퀀스를 사용하기 위해 수정된 applicationContext-jdbc.xml
<bean id="userIncrementer" class="org.springframework.jdbc.support.incrementer.MySQLMaxValueIncrementer">
    <property name="dataSource" ref="dataSource"/>
    <property name="incrementerName" value="user_sequence"/>
    <property name="columnName" value="value"/>
</bean>

Equinox의 View로 Velocity를 사용할 수 있도록 세팅하기

  • 먼저 http://raibledesigns.com/page/rd?anchor=ann_equinox_1_4_released에서 Equinox 최신 버전을 다운 받아 압축을 푼다. 압축을 푼 디렉토리를 EQUINOX_HOME으로 한다.
  • EQUINOX_HOME/extras/spring-velocity 디렉토리에서 "ant install"을 실행하면 Equinox 애플리케이션이 JSP대신 Velocity를 이용하여 애플리케이션을 구축할 수 있도록 지원하게 된다.
  • Prompt에서 "ant deploy"를 실행하여 Equinox 애플리케이션을 Deploy한다.
  • http://localhost:8080/equinox로 접근한다.

번호 제목 글쓴이 날짜 조회 수
17 Cugain의 샘플프로젝트 jpetstore 분석기 - (4) dataAccessContext-jta.xml 분석 황제낙엽 2007.04.21 224
16 Cugain의 샘플프로젝트 jpetstore 분석기 - (3) dataAccessContext-local.xml 분석 황제낙엽 2007.04.21 235
15 Cugain의 샘플프로젝트 jpetstore 분석기 - (2) web.xml 분석 황제낙엽 2007.03.20 301
14 IoC (Inversion of Control) 컨테이너에 대한 정리 황제낙엽 2007.02.21 234
13 자바지기 1차 오픈 소스 스터디 문서모음 file 황제낙엽 2007.01.30 247
12 Spring 프레임워크를 이용한 효율적인 개발 전략 1차 황제낙엽 2007.01.30 241
11 Spring framework jpetstore 샘플 분석기 - (6) jpetstore 예제로 살펴보는 Spring MVC와 iBatis 연동 황제낙엽 2007.01.18 284
10 Spring framework jpetstore 샘플 분석기 - (5) jpetstore 에서의 InternalResourceViewResolver 황제낙엽 2007.01.18 249
9 Spring framework jpetstore 샘플 분석기 - (4) jpetstore 에서의 HandlerMapping 황제낙엽 2007.01.18 244
8 Spring framework jpetstore 샘플 분석기 - (3) jpetstore 에서의 Spring MVC 설정 황제낙엽 2007.01.18 191
7 Spring framework jpetstore 샘플 분석기 - (2) jpetstore 에서의 Spring 초기 설정과 IoC 황제낙엽 2007.01.18 181
6 Spring framework jpetstore 샘플 분석기 - (1) jpetstore 설치하기 황제낙엽 2007.01.18 225
5 Spring WebFlow Introduction (웹개발을 직관적으로) 황제낙엽 2006.12.09 793
4 IoC(Inversion of Control)란 무엇인가? 황제낙엽 2006.12.09 271
» Equinox를 이용하여 Spring 기반의 샘플 애플리케이션 생성하는 방법 황제낙엽 2006.12.09 232
2 Spring 프레임워크의 개발 생산성을 높이기 위한 개발 환경 황제낙엽 2006.10.07 193
1 Spring - Java/J2EE Application Framework Reference Documentation 황제낙엽 2006.10.23 223