소소한 지식 사전! 7

CI/CD,GIthub Action, Jenkins

CI/CD ? CI(Continuous Integration, 지속적인 통합) CI는 소프트웨어 개발 과정에서 개발자가 코드 변경 사항을 지속적으로 통합하는 것을 의미합니다. 여러 개발자가 동시에 코드를 변경하고 저장소에 업로드할 때, CI는 이러한 변경 사항을 자동으로 병합하고 빌드하여 코드 품질을 유지합니다. CI를 사용하면 개발자들은 코드 변경 사항이 프로젝트 전체에 미치는 영향을 쉽게 파악할 수 있으며, 오류를 빠르게 수정할 수 있습니다. CD(Continuous Deployment/Delivery, 지속적인 배포/전달) CD는 CI 이후에 이어지는 단계로, 자동으로 소프트웨어를 빌드하고, 테스트하여 배포 가능한 상태로 만들고, 이를 자동으로 배포하는 것을 의미합니다. CD를 사용하면 개발자들은 ..

[소지사] ORM이란

💡 ORM : Object-Relational Mapping Object : "객체" 지향 언어 (자바, 파이썬) Relational : "관계형" 데이터베이스 (H2, MySQL) 📌 반복적이고 번거로운 애플리케이션 단에서의 SQL 작업을 줄여주기 위해서 ORM(객체 관계 매핑)기술들이 등장 하게 됩니다. ORM은 이름 그대로 객체와 DB의 관계를 매핑 해주는 도구입니다. 우리가 일반 적으로 알고 있는 애플리케이션 Class와 RDB(Relational DataBase)의 테이블을 매핑(연결)한다는 뜻이며, 기술적으로는 어플리케이션의 객체를 RDB 테이블에 자동으로 영속화 해주는 것이라고 보면된다. 장점 SQL문이 아닌 Method를 통해 DB를 조작할 수 있어, 개발자는 객체 모델을 이용하여 비즈니스..

[소지사] Jackson

Jackson은 JSON 데이터 구조를 처리해주는 라이브러리이다 Object를 JSON 타입의 String으로 변환해줄 수 있다. JSON 타입의 String을 Object로 변환해줄 수 있다. Spring은 3.0버전 이후로 Jacskon과 관련된 API를 제공함으로써, 우리가 직접 소스 코드를 작성하여 JSON 데이터를 처리하지 않아도 자동으로 처리해주고 있다. 따라서 SpringBoot의 starter-web에서는 default로 Jackson 관련 라이브러리들을 제공하고 있다. 직접 JSON 데이터를 처리해야할 때는 Jackson 라이브러리의 ObjectMapper를 사용할 수 있다 Object To JSON @Test @DisplayName("Object To JSON : get Method 필..

[소지사] MVC 디자인 패턴

MVC란 Model-View-Controller의 약자로, 소프트웨어 디자인 패턴 중 하나이다. MVC 패턴은 소프트웨어를 구성하는 요소들을 Model, View, Controller로 구분하여 각각의 역할을 분리합니다. Model 데이터와 비즈니스 로직을 담당합니다. 데이터베이스와 연동하여 데이터를 저장하고 불러오는 등의 작업을 수행합니다. 애플리케이션 데이터만을 포함하고, 데이터 조작하는 로직을 포함하지 않습니다. View 사용자 인터페이스를 담당합니다. 사용자가 보는 화면과 버튼, 폼 등을 디자인하고 구현합니다. Controller Model과 View 사이의 상호작용을 조정하고 제어합니다. 뷰와 모델 사이에 컨트롤러가 있습니다. 사용자의 입력을 받아 Model에 전달하고, Model의 결과를 바탕..

[소지사] Http 상태코드(Status Code)

HTTP 상태 코드(Status Code)를 통해 브라우저와 서버 간의 요청, 응답 과정에서 발생할 수 있는 상황들을 표현할 수 있다 HTTP 상태 코드는 3자리 숫자로 이루어져 있다. 첫 번째 자리 숫자는 상태 코드의 분류를 나타내는 용도로 사용되며, 나머지 두 자리는 세부적인 정보이다. 1xx (Informational) 1xx 상태 코드는 요청이 수신되었으며 처리가 계속되고 있음을 나타냄 주로 웹 브라우저와 같은 클라이언트가 서버와의 연결 상태를 확인하기 위해 사용. 2xx (Successful) 2xx 상태 코드는 클라이언트의 요청이 성공적으로 처리되었음을 나타냄 가장 많이 사용되는 상태 코드는 200이다. 이는 요청이 성공적으로 처리되었으며 클라이언트가 요청한 데이터가 서버에서 제공됨을 의미 3..

[소지사] Http란

Http(HyperText Transfer Protocol) 데이터를 주고 받는 양식을 정의한 "통신 규약"중 하나 Plain text, JSON, XML 등 다양한 형태의 정보도 전송하는 애플리케이션 레이어 프로토콜이다. 매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰이는 통신 규약 통신 규약 => 컴퓨터끼리 데이터를 주고 받을 때 정해둔 약속 HTTP 동작 방식 클라이언트 서버에게 요청을 보내는 리소스 사용자 ex) 웹 브라우저, 모바일 애플리케이션, IoT 등 서버 클라이언트에게 요청에 대한 응답을 제공하는 리소스 관리자 클라이언트가 HTTP reuquest를 서버에 보내면 서버는 HTTP response를 보내는 구조 클라이언트와 서버의 모든 통신이 요청과 응답으로 이루어진다. HTT..

[소지사]서버-클라이언트 통신 이해하기

1) 서버→클라이언트: "JSON"을 이해하기 서울시 OpenAPI에 접속해보기 http://openapi.seoul.go.kr:8088/6d4d776b466c656533356a4b4b5872/json/RealtimeCityAir/1/99 팁☞ JSONView 설치 (예쁘게 JSON을 볼 수 있다!) https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc?hl=ko JSON은, Key:Value로 이루어져 있습니다. 자료형 Dictionary와 아주- 유사하다 위 예제에서는 RealtimeCityAir라는 키 값에 딕셔너리 형 value가 들어가있고, 그 안에 row라는 키 값에는 리스트형 value가 들어가있..