본문 바로가기

공부이야기27

[React] react project 생성하기 React로 프로젝트를 시작해보려 한다 ! Backend 개발자라 앞단은 해 볼 기회가 없어 개인 프로젝트로 경험해 보면 좋을 듯 하였다 =) 잘 모르지만.. START ! React Project 만들기 react project는 npm 이나 yarn을 통해 설치할 수 있다. 나는 npm 으로 설치해 보았다. 아래는 react project를 생성해 주는 명령을 설치하는 커맨드이다. npm install -g create-react-app 이렇게 설치하고 원하는 디렉토리로 옮겨 아래와 같이 react project를 생성해 준다. npx create-react-app my-app cd my-app npm start 여기서, npx는 npm의 패키지 실행도구이다. 만들어진 프로젝트 디렉토리로 이동하여 n.. 2021. 6. 19.
[DB] Transaction (트랜잭션)이란? Transaction이란? 데이터베이스 관리 시스템 또는 유사한 시스템에서의 상호작용 단위. (유사한 시스템: 성공과 실패가 분명하고 상호 독립적이며, 일관되고 믿을 수 있는 시스템을 의미) 전부 성공하거나 전부 실패되거나 둘 중 하나의 작업을 수행하며 모든 연산은 반드시 한꺼번에 완료가 되어야 하고 그렇지 않은 경우에는 한꺼번에 취소되어야 한다. (원자성) 한꺼번에 완료가 된 경우에는 COMMIT을 호출해 작업 결과를 DataBase에 반영한다. 취소가 되거나 문제가 발생한 경우에는 ROLLBACK을 호출하고 작업결과를 모두 취소하여 DataBase에 영향을 미치지 않게 한다. Transaction의 성질 Atomicity (원자성) 분리할 수 없는 하나의 단위로 작업은 모두 완료되거나 모두 취소되어야.. 2021. 5. 13.
[DB] Isolation Level (트랜잭션 격리 수준) 트랜잭션 격리 수준 (Isolation Level) 동시에 여러 트랜잭션이 처리 될 때, 트랜잭션끼리 얼마나 서로 고립되어 있는지를 나타내는 것. Read Uncommitted Read Committed Repeatable Read Serializable READ UNCOMMITTED 어떤 트랜잭션의 변경 내용이 COMMIT이나 ROLLBAK과 상관없이 다른 트랜잭션에서 보여진다. Dirty Read 발생 가능 A 트랜잭션에서 10번 사원의 나이를 27살에서 28살로 변경 커밋하지 않음 B 트랜잭션에서 10번 사원의 나이를 조회 28살이 조회됨 (Dirty Read) A 트랜잭션에서 문제가 발생해 ROLLBACK 함 B 트랜잭션은 10번 사원이 여전히 28살이라고 생각하고 로직을 수행 READ COMMI.. 2021. 5. 13.
[Spring] Bean Scope의 종류 Singleton (싱글톤) 기본 scope. 스프링 컨테이너의 시작과 종료까지 하나의 객체로 유지되는 가장 넓은 범위의 스코프이다. 특정 타입의 Bean을 하나만 만들어 두고 공유해서 사용하기 위함. - Bean에 상태를 저장하는 코드를 작성하는 것은 동시성 문제를 유발함, Prototype (프로토타입) 스프링 컨테이너는 프로토타입 빈의 생성과 의존 관계 주입까지만 관연하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다. 요청이 오면 항상 새로운 인스턴스를 생성하여 반환하고 이후에 관리하지 않는다. (빈 콜백 중 종료 메소드가 호출 안 된다.) Web (웹) request: 웹 요청이 들어오고 나갈 때 까지 유지되는 스코프 session: 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프 appl.. 2021. 5. 13.