MongoDB를 사용하는 애플리케이션은 Liberty에서 실행할 수 있습니다.
MongoDB 인스턴스에 대한 액세스의 경우, 애플리케이션은 서버에 대해 구성하는
MongoDB Java™ 드라이버 및 데이터 소스를 사용합니다.
시작하기 전에
참고: Liberty는 MongoDB에 대한 구성 지원을 제공합니다. MongoDB("humongous")는 확장 가능한 고성능의 개방형 소스 NoSQL 데이터베이스입니다.
MongoDB Java 드라이버 버전 2.10.0 - 2.12.5만 지원됩니다.
이 태스크 정보
애플리케이션이 MongoDB를 사용할 수 있으려면, Liberty의 server.xml
파일에서 공유 라이브러리에 대한 라이브러리 참조와 MongoDB
Java 드라이버에 대한 공유 라이브러리를 구성해야
합니다. 애플리케이션은 mongodb-2.0 기능과 server.xml 파일의 mongoDB 인스턴스 구성을 통하거나
애플리케이션에서 직접 MongoDB에 액세스할 수 있습니다.
프로시저
- 애플리케이션 및 Liberty 런타임이 액세스할 수 있는 위치에 MongoDB Java 드라이버를 설치하십시오.
예를 들면, Liberty_profile_root/usr/servers/server_name/lib 디렉토리에
MongoDB 드라이버 .jar 파일을 배치하십시오.
- Liberty 서버의 server.xml 파일에서
MongoDB 드라이버 .jar 파일에 대한 공유 라이브러리를
구성하십시오.
<library id="MongoLib">
<file name="${server.config.dir}/lib/mongo.jar" />
</library>
- 애플리케이션에서의 직접 액세스를 사용하거나 mongodb-2.0 기능을 사용하여
애플리케이션이 MongoDB에 액세스할 수 있게 하십시오.
- 애플리케이션에서 MongoDB에 직접 액세스할 수 있게 하십시오.
- server.xml 파일의 애플리케이션 요소에서 공유 라이브러리에 대한 라이브러리 참조를 구성하십시오.
<application ...>
<classloader commonLibraryRef="MongoLib"/>
</application>
이제 회계 애플리케이션은 MongoDB
API에 직접 액세스할 수 있습니다.
애플리케이션이 런타임 인젝션 엔진을 사용하도록 하려면 다음 단계를 계속하십시오.
- server.xml 파일에서 mongodb-2.0 기능, mongo 및
mongoDB 요소를 구성하십시오.
- mongodb-2.0 기능을 server.xml 파일에 추가하십시오.
<featureManager>
<feature>mongodb-2.0</feature>
<feature>jndi-1.0</feature>
</featureManager>
JNDI 기능은 JNDI를 사용하여
자원을 검색하는 경우에만 필요합니다. 자원 인젝션을 사용하는 경우에는
필요하지 않습니다.
- 이전 단계에서 작성된 공유 라이브러리에 대한 참조가 있는 mongo 요소를 구성하십시오.
<mongo id="mongo" libraryRef="MongoLib" />
- mongoDB 요소를 구성하십시오.
<mongoDB jndiName="mongo/testdb" mongoRef="mongo" databaseName="db-test" />
JNDI 이름을 구성하면 애플리케이션이나 Liberty 런타임이 MongoDB 인스턴스를 검색할 수 있습니다.
- 애플리케이션이 MongoDB에 액세스할 수 있도록 하십시오.
다음 예제는
JNDI 검색과 자원 인젝션 둘 다를 보여줍니다.
public class TestServlet extends HttpServlet {
@Resource(name = "mongo/testdb")
protected DB db;
...
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// Alternatively use InitialContext lookup
DB lookup = (DB) new InitialContext().lookup("java:comp/env/mongo/testdb");
...
- JNDI 검색을 사용하는 경우 자원 환경 참조를 애플리케이션의
web.xml 파일에 추가하십시오.
<resource-env-ref>
<resource-env-ref-name>mongo/testdb</resource-env-ref-name>
<resource-env-ref-type>com.mongodb.DB</resource-env-ref-type>
</resource-env-ref>
다음에 수행할 작업
애플리케이션에서 MongoDB의 사용을 테스트하십시오.
MongoDB 요소에 대한 자세한 정보는 MongoDB Integration 2.0의 내용을 참조하십시오.