사전 애플리케이션 샘플 설정

이 샘플에는 애플리케이션 서버에 사전 애플리케이션을 배치하는 데 필요한 Java™ EE 및 웹 프로젝트가 있습니다. 샘플에서는 애플리케이션을 수정하고 테스트하는 방법을 보여줍니다.

시작하기 전에

  1. WebSphere® Application Server V7.0, V8.0 또는 V8.5를 설치하십시오.
  2. 사전 애플리케이션 샘플을 가져오십시오.

이 태스크 정보

사전 애플리케이션은 다음과 같이 사전의 두 가지 기능을 구현하는 연관 맵핑 애플리케이션입니다. LOOKUP은 사용자가 제공된 단어와 연관된 사전 항목을 찾을 수 있도록 해주며 DEFINE은 기존 항목을 업데이트하고 기존에 사전에 존재하지 않은 항목을 추가할 수 있도록 해줍니다. 사전 애플리케이션은 LOOKUPDEFINE에 대한 사용자 요청을 사전 항목이 포함된 데이터베이스에서 이러한 오퍼레이션을 수행하는 데이터베이스 연결 관리자로 전달하는 서블릿으로 사전을 구현합니다.

사전 애플리케이션 아키텍처

사전 애플리케이션은 데이터베이스 어댑터인 DictionaryJDBCAdapter.java를 모델로, showentry.jsp를 보기로, DictionaryServlet.java를 제어기로 구현하는 방법으로 MVC(Model View Controller) 아키텍처를 구현합니다. 사용자가 사전 서블릿 시작점을 통해 사전 애플리케이션에 액세스할 때마다 DictionaryServlet.java 클래스로 지정됩니다. 거기서 DictionaryServlet.java는 데이터베이스 어댑터인 DictionaryJDBCAdapter.java로 위임할 태스크로 사용자가 지정하는 모든 요청을 처리합니다. DictionaryJDBCAdapter.java 클래스가 태스크를 완료하고 나면 사전 서블릿이 해당 결과를 showentry.jsp로 전달하며, 여기서 사용자에게 다시 보낼 적절한 응답을 작성합니다.

특히 DictionaryApp 프로젝트에서는 DictionaryJDBCAdapter.java 클래스가 JNDI 이름이 jdbc/DictionaryDB인 데이터 소스 오브젝트에 대해 JDBC 조회 형식의 SQL 명령을 호출하여 LOOKUPDEFINE을 구현합니다. DictionaryApp가 WebSphere Application Server에 배치되고 나면 서버가 실제 데이터 소스 자원을 JNDI 이름이 jdbc/DictionaryDBDataSource 오브젝트(DictionaryServlet.java에 위치)에 맵핑하려고 시도합니다. 그러면 데이터베이스 어댑터에 대한 데이터베이스 연결을 제공하기 위해 이 참조가 DictionaryJDBCAdapter.java 클래스로 전달됩니다. 애플리케이션 서버와 데이터베이스 간의 연결 역할을 하기 위해 사전 및 데이터 소스의 항목을 보유하도록 데이터베이스를 작성해야 합니다. Derby는 WebSphere Application Server와 함께 포함된 관계형 데이터베이스 관리 시스템입니다. 데이터베이스 자원이 필요한 경우 Derby 데이터베이스를 사용하도록 애플리케이션을 구성할 수 있습니다.

서버에서 샘플을 실행하고 테스트하려면 다음 단계를 수행하십시오.

프로시저

  1. Derby 데이터베이스를 작성하려면 DictionaryDatabase 프로젝트를 펼치고 DictionaryDatabase.zip 파일을 두 번 클릭하십시오.
    1. Windows 아이콘: WebSphere Application Server 설치 폴더의 /derby/databases 폴더에 데이터베이스의 압축을 푸십시오.
    2. Linux
아이콘: WebSphere Application Server 설치 폴더의 /derby/databases 폴더에 데이터베이스의 압축을 푸십시오.
      • 데이터베이스 디렉토리에 대한 비루트 사용자 액세스를 제공하십시오. 가장 쉬운 방법은 모든 사용자에게 액세스 권한 chmod ugo+x databases를 제공하는 것입니다.
      • 압축 해제된 데이터베이스에 대한 비루트 사용자 쓰기 액세스를 제공하십시오. 가장 쉬운 방법은 비루트 사용자로서 압축 해제하는 것이며 이는 해당 사용자에게 데이터베이스 디렉토리에 대한 액세스 권한이 있는 경우에 수행됩니다.
      중요사항: /derby/databases의 기본 위치는 WebSphere Application Server의 유형에 따라 달라질 수 있습니다. 기본 설치 디렉토리에 대한 정보는 WebSphere Application Server 작성을 참조하십시오.
  2. 사전 데이터베이스 애플리케이션을 작성하고 나면 데이터 소스 DictionaryDatasource를 구성하여 애플리케이션 서버가 사전 데이터베이스 애플리케이션에 액세스하는 방법을 지정할 수 있습니다. 데이터 소스의 구성 설정 시 제공된 특정 이름은 사전 데이터베이스 애플리케이션에 대해 지정된 바인딩과 일치해야 하므로 이러한 이름을 기록해 두십시오. WebSphere Application Server 관리 콘솔을 사용하여 DictionaryDatasource를 구성하려면 다음을 수행하십시오.
    1. 서버 보기를 선택하십시오. 대상 서버를 마우스 오른쪽 단추로 클릭하고 관리 > 관리 콘솔 실행을 선택하십시오.
    2. 왼쪽 탐색 패널에서 자원 > JDBC > 데이터 소스를 펼치십시오.
    3. 데이터 소스 페이지에서 모든 범위로 레이블 지정된 드롭 다운 메뉴를 펼치십시오. 이 메뉴는 데이터 소스를 작성할 수 있는 모든 범위 목록을 제공합니다. 가장 특정적인 범위인 서버 이름(예: server1)이 포함된 범위를 선택하십시오. 테이블의 왼쪽 상단에 있는 새로 작성을 클릭하여 새 데이터 소스를 추가하십시오. 기본 데이터 소스 정보 입력 페이지의 데이터 소스 이름 필드에 DictionaryDatasource를 입력하고 JNDI 이름 필드에 jdbc/DictionaryDB를 입력한 후 다음을 클릭하십시오.
    4. JDBC 제공자 선택에서 기존 JDBC 제공자 선택을 선택하고 데이터 소스에 대해 원하는 JDBC 제공자를 선택하십시오. 이 샘플의 경우 드롭 다운 메뉴에서 Derby JDBC 제공자를 선택하고 다음을 클릭하십시오.
    5. 데이터 소스에 대한 데이터베이스별 특성 입력에서 데이터베이스 이름 필드에 프로젝트를 가져온 후에 압축을 푼 데이터베이스의 경로와 이름을 입력하고(예: C:\WASV85\IBM\WebSphere\AppServer\derby\databases\DictionaryDatabase) 다음을 클릭하십시오.
    6. 보안 별명 설정 페이지에서 필요에 따라 보안 설정을 선택하십시오. 이러한 설정은 애플리케이션이 데이터 소스에 액세스하는 방법을 지정합니다. 사전 애플리케이션의 경우 기본값을 승인하고 다음을 클릭하고, 요약 페이지에서 완료를 클릭한 후 저장을 클릭하십시오.
    7. 데이터 소스 페이지에서 DictionaryDatasource를 선택하고 연결 테스트를 클릭하여 데이터 소스가 제대로 작성되었는지 확인하십시오.
  3. 사전 애플리케이션 샘플을 테스트하려면 다음을 수행하십시오.
    1. DictionaryWeb > WebContent를 펼치십시오. showentry.jsp를 마우스 오른쪽 단추로 클릭하고 실행 도구 > 서버에서 실행을 선택하십시오. 사용하려는 대상 런타임 서버를 선택하십시오.
    2. 애플리케이션이 워크벤치의 기본 브라우저에서 시작됩니다. 단어 입력 필드에 IBM을 입력하고 검색을 클릭하십시오. INTERNATIONAL BUSINESS MACHINES 응답이 정의 입력: 필드에 나타납니다.
      사전 출력
  4. showentry.jsp를 변경하려면 showentry.jsp를 마우스 오른쪽 단추로 클릭하고 연결 프로그램 > Page Designer 편집기를 선택하십시오. 정의 입력:이 포함된 테이블 행을 찾고, DEFINEadd the style attribute color: blue;로 레이블된 입력 상자에서 CNTL+S를 눌러 저장하십시오.
    코드 변경
  5. 서버에서 다시 서블릿을 실행하면 단추가 파란색으로 표시됩니다.
    파란색으로 된 사전 출력

피드백