실습 자동화 테스트를 위한 간단한 REST API 생성

6629 단어 springjavarestapi
API는 Application Programming Interface의 약자로, 두 개의 애플리케이션(서비스)이 서로 통신할 수 있도록 하는 소프트웨어 중개자입니다.

레스토랑의 웨이터/웨이트리스라고 상상해 보십시오. 주문에 대한 정보를 얻고 주방의 요리사에게 전달하는 데 도움이 됩니다. 음식이 준비되면 음식을 가져다가 당신에게 가져다 줄 것입니다.

기술적인 측면에서 데이터베이스는 주방과 같습니다. API는 웨이터와 같습니다. 그리고 당신(고객)은 클라이언트 요청과 같습니다.

API를 생성하기 위해 다양한 방법/언어로 수행할 수 있습니다. 하지만 이 튜토리얼에서는 mvn을 사용하여 Java Spring/Tomcat을 사용하는 방법을 보여드리겠습니다.

우리가 상호작용하는 데이터베이스는 MySQL이 될 것입니다.

1. MySQL을 설치하고 새 데이터베이스를 생성합니다.

MySQL은 오픈 소스 RDMBS이므로 자유롭게 설치하고 사용할 수 있습니다.
저는 우분투를 사용하고 있기 때문에 참고할 수 있는 설치 가이드MySQL installation

그런 다음 이 블로그 게시물에서 gamelistapi라는 이름으로 자신만의 데이터베이스를 만들 수 있습니다.

MySQL에서 데이터베이스를 생성하는 방법은 여기를 참조하십시오Create a database.

데이터베이스 작업을 위해 DataGrip(Jetbrains에서 만든 개발 도구)을 자주 사용합니다. DataGrip은 MySQL, Oracle, SQL 서버, Postgres, MariaDB 등 많은 데이터베이스를 지원합니다.

Datagrip 공식 사이트는 [여기][ https://www.jetbrains.com/datagrip/ ]입니다.

새 데이터베이스를 만든 후 Datagrip을 열어 SQL 쿼리 또는 Datagrip GUI를 통해 데이터베이스와 상호 작용할 수 있습니다.

새 연결 만들기:


gamelist API와 연결하기 위한 구성:



2. Java 및 Maven 환경 설정:

Java를 설치해야 합니다(현재 Java 11을 사용하고 있지만 안정적인 버전이므로 Java 8을 사용할 수 있습니다).

시스템에 적합한 Java 설치 프로그램을 다운로드하려면 Oracle 사이트로 이동하십시오Java oracle.

그런 다음 Maven 도구(Java 앱 빌드에 사용됨)를 설치합니다. maven을 다운로드하려면 maven 다운로드 공식 사이트로 이동하세요: maven latest version

프로젝트에서 java 및 maven을 사용하려면 먼저 java 및 maven 환경에 대한 전역 환경을 설정해야 합니다. (설정은 사용 중인 OS에 따라 다름)

3.프로젝트 구조:
  • maven 프로젝트에는 pom 파일이 있습니다. 프로젝트에 사용할 종속성(라이브러리)을 저장하기 위해)
  • src/resources 폴더에는 일반적으로 프로젝트에 사용되는 데이터베이스, 환경, 구성 정보를 넣습니다. 이 프로젝트에서는 db.properties를 넣습니다.

  • db.properties 파일은 다음과 같습니다.

    
    // MySQL properties
    
    mysql.driver=com.mysql.cj.jdbc.Driver
    mysql.url=jdbc:mysql://localhost:3306/gamelistapi?useSSL=false
    mysql.user=****
    mysql.password=*****
    
    // Hibernate properties
    
    hibernate.show_sql=true
    hibernate.hbm2ddl.auto=update
    
    
    // C3P0 properties
    
    hibernate.c3p0.min_size=5
    hibernate.c3p0.max_size=20
    hibernate.c3p0.acquire_increment=1
    hibernate.c3p0.timeout=1800
    hibernate.c3p0.max_statements=150
    
    
    


    mysql.driver는 MySQL용 jdbc 드라이버에 사용할 매개변수입니다.
    mysql.url은 로컬 데이터베이스의 URL입니다. (보통 MySQL은 포트 3306을 사용합니다.)
    mysql.user 및 mysq.password 생성된 데이터베이스의 사용자 및 비밀번호를 거기에 입력합니다.
  • src/main 패키지에는 gamelist api를 구현하는 소스 코드가 있습니다.

  • 다른 블로그 게시물에서 Spring 프레임워크의 구조에 대해 다룰 것입니다.
  • gamelist api의 기능에는 새 게임 만들기, 게임 업데이트, 게임 데이터 가져오기 및 게임 삭제가 있습니다.

  • 4. Maven으로 게임 목록 API를 빌드합니다.

    일반적으로 maven에서 프로젝트를 실행하려면 'mvn ...'으로 실행합니다.

    프로젝트에서 tomcat7을 사용하므로 명령줄은 다음과 같습니다.

    mvn tomcat7:실행

    5. 우체부와 함께 gamelist api 사용:

    Postman은 사용자가 API와 상호 작용할 수 있는 무료 도구입니다.
    다음 링크에서 우편 배달부를 다운로드할 수 있습니다: postman

    예를 들어 API에서 모든 게임을 가져오려는 경우 스크린샷은 다음과 같습니다.



    새 게임을 만들고 싶다면:



    내 githubgamelist-api에서 자유롭게 코드를 받으세요.

    다음 블로그 게시물에서는 Serenity로 이러한 API를 테스트하는 방법에 대해 설명하겠습니다.

    읽어주셔서 감사합니다! :-*

    참고: 이 블로그가 도움이 되었다고 생각하고 감사를 표하고 싶다면 다음을 방문하십시오.



    이것은 내가 더 가치 있는 콘텐츠를 제공하는 데 도움이 될 것입니다.

    좋은 웹페이지 즐겨찾기