분류 전체보기 221

05. 로깅 라이브버리 - Logback

Logging 로깅(logging)은 컴퓨터 프로그램이나 시스템이 실행 중에 발생하는 이벤트나 데이터를 시간에 따라 순차적으로 기록하는 것을 의미합니다. 이런 로그 데이터는 텍스트 파일, 데이터베이스, 시스템 이벤트 로그 등에 저장될 수 있습니다. 로깅의 목적으로는 디버깅 소프트웨어 개발 과정에서 버그를 찾아내거나 시스템의 비정상적인 동작을 분석하는데 도움이 됩니다. 시스템 모니터링 로그를 통해 시스템의 상태를 모니터링하고, 성능 문제나 잠재적인 문제를 조기에 발견할 수 있습니다. 보안과 감사 트레일 로그는 누가 시스템에 접근했는지, 어떤 작업을 수행했는지에 대한 기록을 제공하므로, 보안 위반을 추적하거나 법적 요구사항을 충족하는데 필요한 감사 트레일(audit trail)을 제공합니다. 사건 복구 시스..

BACKEND/SPRING 2023.07.30

05. REST API 명세를 문서화 하는 방법 - Swagger

API 명세서 API를 개발하면 명세를 관리해야 합니다. 명세란 해당 API가 어떤 로직으로 수행하는지 설명하고 이 로직을 수행하기 위해 어떤 값을 요청하며, 이에 따른 응답값으로 무엇을 받을 수 있는지 정리한 자료입니다. API 개발과정에서 계속 변경되므로 작성한 명세 문서도 주기적인 업데이트가 필요하며 명세 작업은 오랜 시간이 걸릴 수 있기 때문에 이를 해소할 수 있는 것이 바로 Swagger 입니다. Swaager 사용하기 build.gradle에 의존성을 추가해 줍니다. implementation 'io.springfox:springfox-boot-starter:3.0.0' config 라는 패키지를 만들고 하위에 SwaggerConfiguration 클래스를 만들어 줍니다. 아래와 같이 설정해 ..

카테고리 없음 2023.07.30

05. API를 작성하는 다양한 방법 - DELETE API 만들기

DELETE API 만들기 DELETE API는 웹 애플리케이션 서버를 거쳐 데이터베이스 등의 저장소에 있는 리소스를 삭제할 때 사용합니다. 서버에서는 클라이언트로부터 리소스를 식별할 수 있는 값을 받아 데이터베이스나 캐시에 있는 리소스를 조회하고 삭제하는 역할을 수행합니다. 이때 컨트롤러를 통해 값을 받는 단계에서는 간단한 값을 받기때문에 GET 메서드와 같이 URI 에 값을 넣어 요청을 받는 형식으로 구현합니다. @PathVariable과 @RequestParam을 활용한 DELETE 메서드 구현 @PathVariable을 사용하면 URI에 포함된 값을 받아 로직을 처리할 수 있습니다. package com.springboot.api.controller; import org.springframewor..

BACKEND/SPRING 2023.07.30

05. API를 작성하는 다양한 방법 - POST, PUT API 만들기

POST API 만들기 POST API는 웹 애플리케이션을 통해 데이터베이스 등의 젖아소에 리소르를 정할 때 사용되는 API입니다. POST API는 저장하고자 하는 리소스나 값을 HTTP body에 담아 서버에 전달합니다. 그래서 URI가 GET API에 비해 간단합니다. controller 패키지에 PostController를 만들어줍니다. 현재 방식은 임의의 방식으로 실무에선 API 메서드 별로 컨트롤러를 생성하지 않고 서비스마다 생성해 관리합니다. @RequestMapping으로 구현하기 POST API에서 @RequestMapping을 사용하는 방법은 GET API와 유사합니다. package com.springboot.api.controller; import org.springframework..

BACKEND/SPRING 2023.07.30

05. API를 작성하는 다양한 방법 - GET API 만들기

프로젝트 생성 인텔리제이 IDEA로 프로젝트를 생성합니다. gradle로 생성해봅니다. plugins { id 'java' id 'org.springframework.boot' version '2.5.6' id 'io.spring.dependency-management' version '1.0.11.RELEASE' } group = 'com.springboot' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'o..

BACKEND/SPRING 2023.07.30

230729 STUDY LOG.

오늘 공부. [BE] 스프링 강의 수강 및 정리 [코딩테스트] 좌표 정렬 관련 문제 풀기 및 정리 [과제 및 미션] 2차 과제 제출 완료 오늘 정리. 웹 스크래핑(Web Scraping)은 웹 사이트들에서 원하는 정보를 추출하는 기술을 말합니다. 일반적으로 HTTP를 통해 웹페이지의 HTML 소스를 받아온 뒤, 이 HTML 소스에서 필요한 데이터를 추출(Parse)하는 과정을 포함합니다. 이 과정은 사람이 웹 브라우저를 통해 웹 사이트를 보고 원하는 정보를 읽어내는 것을 프로그램이 자동화한 것이라고 볼 수 있습니다. 웹 크롤링(Web Crawling)이라고도 부르며, 크롤링은 보통 스크래핑을 포함하는 개념으로 사용됩니다. 웹 스크래핑은 다양한 용도로 사용됩니다. 예를 들면, 웹 사이트의 데이터를 분석하거..

STUDY LOG 2023.07.30

230728 STUDY LOG.

오늘 공부. [FE] 자바스크립트 + HTML HTML 튜토리얼 - HTML class Attribute JavaScript 튜토리얼 - JavaScript Const [BE] 스프링 강의 수강 및 정리 Chapter 02. 예외 처리하기 Chapter 03. API document 만들기 [코딩테스트] 정렬 관련 문제 풀기 및 정리 / 프로그래머스 단계별로 풀기 및 정리 프로그래머스 - 달리기 경주 [오늘 정리] @RestControllerAdvice는 스프링 프레임워크에서 예외를 전역적으로 처리하는 기능을 제공하는 어노테이션입니다. 이 어노테이션은 @ControllerAdvice와 @ResponseBody를 합친 것으로 보면 되며, 컨트롤러 전반에 걸친 @ExceptionHandler, @InitBi..

STUDY LOG 2023.07.28

프로그래머스 - 달리기 경주

풀이 유형 - 해시 해시맵으로 풀어야지 생각은 했는데 자꾸 틀려서 가만보니 원래 배열도 등수에 맞게 변경해줘야되는데 원본 players배열을 계속 불러와서 적용하니 틀리는게 당연 멍총멍총.. ㅋㅋ - 해시맵 담기 - callings 배열을 돌면서 불린 선수를 키로 잡은 등수 가져오기 - 불린 선수는 -1, 원래 등수에 있던 선수는 불린 선수의 등수로 변경 - players도 swap해서 바뀐 등수로 배열 만들어주기 - 마지막에 answer 배열에 담아서 리턴하거나 players 배열 고대로 리턴; import java.util.HashMap; class Solution { public String[] solution(String[] players, String[] callings) { String[] a..

CODING TEST 2023.07.28

JavaScript 튜토리얼 - JavaScript Const

JavaScript Const const는 JavaScript에서 상수를 선언하는 키워드입니다. 상수는 한 번 할당되면 그 값을 변경할 수 없는 변수를 의미합니다. Cannot be Reassigned JavaScript const HTML 삽입 미리보기할 수 없는 소스 Must be Assigned JavaScript const변수는 선언될 때 값을 지정해야 합니다. // 맞음 const PI = 3.14159265359; // 틀림 const PI; PI = 3.14159265359; When to use JavaScript const? 상수: const는 상수를 정의하는 데 사용됩니다. 상수는 프로그램 실행 동안 변경되지 않는 값을 나타내는데 사용됩니다. 예를 들어, 원주율 값이나 중력 상수 등이 ..

FRONTEND/JAVASCRIPT 2023.07.28

HTML 튜토리얼 - HTML class Attribute

HTML class Attribute HTML class속성은 HTML 요소의 클래스를 지정하는 데 사용됩니다. 여러 HTML 요소가 동일한 클래스를 공유할 수 있습니다. Using The class Attribute 속성 class은 종종 스타일 시트에서 클래스 이름을 가리키는 데 사용됩니다. 특정 클래스 이름을 가진 요소에 액세스하고 조작하기 위해 JavaScript에서 사용할 수도 있습니다. 아래 예제는 css 와 JavaScript에 class를 사용해 접근하는 예제입니다. London London is the capital of England. Paris Paris is the capital of France. Seoul Seoul is the capital of Korea. Hide Cities

FRONTEND/HTML 2023.07.28