cs 기술 면접 공부 8

Spring Transaction

DB의 격리 수준 1. Read Uncommited commit 이나 rollback 여부 상관 없이 다른 트랜잭션에서 값을 읽을 수 있다. 정합성 문제가 많은 격리 수준이기 때문에 사용하지 않는 것을 권장한다. commit되지 않은 상태지만, update된 값을 다른 트랜잭션에서 읽을 수 있다. Dirty Read 발생 트랜잭션 작업이 완료되지 않았는데도 다른 트랜잭션에서 볼 수 있는 현상 2. Read Commited Dirty Read 발생 x 실제 테이블에서 가져 오는 것이 아니라, undo 영역에 백업 된 레코드에서 값을 가져온다. T1이 commit한 이후 아직 끝나지 않은 T2가 다시 테이블 값을 읽으면 값이 변경 됨을 알 수 있다.⇒ 입, 출금의 금전적인 처리에서 주로 발생 ⇒ Reapea..

Spring AOP

관심사의 분리 ⇒ 공통 로직의 분리, 공통로직을 사용(호출)하는 코드까지 공통로직의 연장선으로 봄 OOP를 더욱더 OOP스럽게 만들어줌 core concenrn: 핵심 로직 cross cutting concern: 공통 로직 개요 핵심 관심사항과 공통 관심 사항 기존 oop에서는 공통 관심사항을 여러 모듈에 적용하는데 있어 중복된 코드를 양상 하는 한계 존재 → 이를 해결하기 위해 AOP 등장 공통 관심 사항을 기준으로 프로그래밍함으로써 공통 모듈을 손쉽게 적용할 수 있게 함 AOP는 관심사의 분리(핵심적인 기능에서 부가적인 기능을 분리한다) 분리한 부가 기능을 Aspect라는 독특한 모듈형태로 만들어서 설계하고 개발 AOP는 부가 기능을 Aspect로 정의하여, 핵심 기능에서 부가기능을 분리함으로써 핵..

AJAX

AJax(Asynchronous Javascript and XML) 언어나 프레임 워크가 아닌 구현하는 방식을 의미 웹에서 화면을 갱신하지 않고 데이터를 서버로부터 가져와 처리하는 방법 Java Script의 XMLHttpRquest객체로 데이터를 전달하고 비동기 방식으로 결과를 조회 화면 갱신이 없어 사용자 입장에서 편리하지만, 동적으로 DOM을 구성해야하므로 구현이 복잡 일반 요청과 Ajax 요청에 대한 응답 일반 요청 데이터를 입력 후 event 발생 Ajax를 적용하지 않은 요청은 서버에서 데이터를 이용하여 로직 처리 로직 처리에 대한 결과에 따라 응답 페이지를 생서하고 client에 전송(화면 전환 발생) Ajax 요청에 대한 응답 데이터를 입력 후 event 발생 Ajax 적용하면, event..

데이터 저장소, JSON

Storage API HTML5 JS API 데이터 저장소 개념 localStorage : 브라우저 간(여러 창을 띄운 상황), 탭 간 공유 가능한 저장소 sessionStorage: 해당 브라우저 탭에서만 사용 가능한 저장소 데이터 저장 키 - 값 쌍으로 관리 객체를 통으로 저장하고 싶다면 문자열(JSON포멧의 문자열)로 변환하여 저장 → JSON.stringify(obj) JSON Java Script Object Notation 객체 표기: {} 속성명: 값 배열(리스트) 표기 [ , , , ] let a="{name: '김재환', age: 28}"; //문자열 let p = JSON.parse(a); //JSON 표기 -> p.name p.age let p2={ //객체, local Storage..

JavaScript (2)

BOM(Browser Object Model) 브라우저 내장 객체 window: JS 실행엔진이 제일 먼저 생성하는 전역 객체 전역 위치에 var로 선언한 함수 전역 위치에 있는 함수 선언문 ⇒전역 객체에 등록됨 전역 성질을 가지고 있어 어디서든 접근이 가능 let은주로 윈도우에 등장하지 x ⇒ 보통 winodw. 키워드를 생략하고 많이 사용 Window 객체 - location, history location. href: 할당된 url로 페이지 이동 location.reload(): 현재 페이지 새로 고침 window.document window.location winodw.screen DOM Document Object Model: html, sml문서의 구조를 정의하는 api제공 문서 요소의 집합을..

Java Script (1)

원시 타입: bool, number, string, undefined, null 객체 타입: object 함수 타입: function =>일급객체(first-class function): 함수도 객체 함수를 변수에 저장가능--> 함수를 매개변수로 전달, 리턴값으로 사용 가능 변수 선언: var 변수명 [=초기값]; Java Script: 동적 타이핑 언어: 변수 공간 자체는 타입 정보가 없고, 저장되는 값에 의해 동적으로 타입이 결정됨 let, var, const 차이 변수의 중복 선언 불가 let 변수 중복 선언이 불가능하지만 재할당은 가능하다 const 반드시 선언과 초기화를 동시에 진행해야 한다. 2. 변수 호이스팅 - var선언문이나 function선언문 등 모든 선언문이 해당 Scope의 처음로..

CSS

div> 태그: 페이지의 영역 분리 태그: 줄바꿈 없이 한 줄로 나열되는 인라인 요소 : Navigation의 약자로 메뉴바처럼 여러가지 링크들을 모아놓은 영역을 구분할 때 사용합니다. : 페이지의 사이드바처럼 본문과 별개의 내용을 포함하는 사이드에 위치한 영역을 구분할 때 사용합니다. : ****과 비슷하지만, 관련 뉴스 혹은 관련 컨텐츠처럼 그 자체만으로도 독립적인 영역을 구분할 때 사용합니다. CSS CSS는 Cascading Style Sheets의 약자로 기본적인 스타일이 이미 지정된 HTML 요소를 개발자가 직접 다양한 스타일로 디자인할 수 있는 언어입니다. 문법 #title { }

HTML

Client 브라우저 → DATA 발생/ URL, PORT를 통해 서버에 REQUEST(요청) html(구조) css(디자인) js(동작) CSR: 클라이언트에서 데이터를 받아 화면을 만듬 SSR(Jsp, CSS): 서버쪽에서 만들어줌 Server Framework: get, db요청, 응답을 처리해줌 Spring + Mybatis(JPA) WAS DB server HTML4 → HTML5 MarkUp 변화 Semantic tag 지원: main, aside, article, section, header, footer…. Media tag: 확장 프로그램 설치 없이도, 영상, 오디오 실행 / audio, video form control/validation 지원 JS API 지원 Media API, St..