전체 글 240

combineReducers

combineReducers Redux에서 제공하는 유틸리티 함수 중 하나로, 여러 개의 리듀서를 하나로 합치는 역할을 합니다. 이를 사용하면 Redux 스토어에 여러 개의 리듀서를 등록할 수 있으며, 각 리듀서는 서로 다른 부분 상태를 관리하게 됩니다. combineReducers를 사용하면 리덕스 애플리케이션의 상태를 모듈화하고 유지보수를 쉽게 할 수 있습니다. combineReducers를 사용하지 않는 경우 // reducers.js const initialStateA = { dataA: [], }; const initialStateB = { dataB: {}, }; const reducerA = (state = initialStateA, action) => { // ... }; const red..

Frontend/react 2023.09.27

데브옵스(DevOps)와 마이크로서비스(microservices) 개념, 특징

데브옵스(DevOps) 데브옵스(DevOps)는 소프트웨어 개발 및 운영 프로세스를 통합하여 효율적이고 지속적인 소프트웨어 제공을 가능하게 하는 소프트웨어 개발문화 또는 방법론을 나타냅니다. "데브"는 소프트웨어 개발(Development)을, "옵스"는 운영(Operations)을 의미하며, 두 영역 간의 협력과 통합을 강조합니다. 데브옵스의 주요 목표와 특징 지속적인 통합 (Continuous Integration, CI): 개발자가 코드를 공유하는 과정에서 자동화된 빌드 및 테스트를 수행하여 코드 품질을 높이고 문제를 조기에 발견합니다. 지속적인 배포 (Continuous Deployment/Delivery, CD): 지속적인 통합 이후 자동화된 배포 프로세스를 통해 새로운 기능이나 수정 사항이 실..

[ajax] Resolved [org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON

서버 측 에러 Resolved [org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: Class `com.deom.model.FileData` not subtype of `java.util.Map`; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Class `com.deom .model.FileData` not subtype of `java.util.Map` (through reference chain: java.util.HashMap["fileList"]->java.util.ArrayList[0])] 클라이언트 측..

error 2023.09.26

[MyBatis] BindingException@1300 "org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.demo.dao.FileMapper.getData"

BindingException@1300 "org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.demo.dao.FileMapper.getData" 이 오류는 MyBatis에서 SQL 쿼리나 매퍼 파일에 대한 문제가 있을 때 발생합니다. 에러 메시지를 자세히 살펴보면 com.demo.dao.FileMapper.getData라는 매핑된 문장(statement)을 찾을 수 없다는 내용입니다. 이 오류를 해결하기 위해 다음 몇 가지 단계를 따를 수 있습니다: mapper.xml에 해당 문장이 정의되어 있었지만 에러가 발생했습니다. //SELECT ~ databaseId를 제거 했을 때 정상적으로 동작했습니다. da..

error 2023.09.25

react-router-dom 버전6 변경 사항

기본 설정 방법 https://sumni.tistory.com/229 React Router Dom 설정(버전 5.x, 6링크) react-router-dom은 React 애플리케이션에서 라우팅 및 네비게이션을 처리하기 위한 JavaScript 라이브러리입니다. 1. React 앱에 react-router-dom 설치하기 먼저, React 앱에 react-router-dom을 설치합니다. 프로젝 sumni.tistory.com 버전 6 변경 사항 1. 라우트 설정 방법 이전 버전에서는 컴포넌트를 사용하여 경로와 컴포넌트를 매핑했습니다. 버전 6에서는 대신 를 사용하여 라우트를 정의합니다. 이제 각 경로에 대한 element 속성을 사용하여 해당 경로에 렌더링할 컴포넌트를 지정합니다. 예전 버전 (버전 5..

Frontend/react 2023.09.25

React Router Dom 설정(버전 5.x, 6링크)

react-router-dom은 React 애플리케이션에서 라우팅 및 네비게이션을 처리하기 위한 JavaScript 라이브러리입니다. 1. React 앱에 react-router-dom 설치하기 먼저, React 앱에 react-router-dom을 설치합니다. 프로젝트 루트 디렉토리에서 다음 명령을 실행합니다 npm install react-router-dom 2. 라우터 설정하기 React 앱의 라우팅을 위해 BrowserRouter 컴포넌트를 사용합니다. 주로 앱의 최상위 컴포넌트인 App.js에서 설정합니다. import React from 'react'; import { BrowserRouter as Router, Route, Switch } from 'react-router-dom'; impo..

Frontend/react 2023.09.25

[javaScript] 프로그래머스 - 게임 맵 최단거리

게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 문제 ROR 게임은 두 팀으로 나누어서 진행하며, 상대 팀 진영을 먼저 파괴하면 이기는 게임입니다. 따라서, 각 팀은 상대 팀 진영에 최대한 빨리 도착하는 것이 유리합니다. 지금부터 당신은 한 팀의 팀원이 되어 게임을 진행하려고 합니다. 다음은 5 x 5 크기의 맵에, 당신의 캐릭터가 (행: 1, 열: 1) 위치에 있고, 상대 팀 진영은 (행: 5, 열: 5) 위치에 있는 경우..

카테고리 없음 2023.09.21

[javaScript] 프로그래머스 - 네트워크

네트워크 https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 문제 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한..

카테고리 없음 2023.09.21

[javaScript] 프로그래머스 - 타겟 넘버

타겟 넘버 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 문제 n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴..

[javaScript] 프로그래머스 - 연속된 부분 수열의 합

연속된 부분 수열의 합 https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 문제 비내림차순으로 정렬된 수열이 주어질 때, 다음 조건을 만족하는 부분 수열을 찾으려고 합니다. 기존 수열에서 임의의 두 인덱스의 원소와 그 사이의 원소를 모두 포함하는 부분 수열이어야 합니다. 부분 수열의 합은 k입니다. 합이 k인 부분 수열이 여러 개인 경우 길이가 짧은 수열을 찾습니다. 길이가 짧은 수열이 여러 개인 경우 앞쪽(시작 인덱스가 작은)에 나오는 수열..