일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 소프트웨어의 품격
- kotlin ::
- 동적파라미터
- Spring
- spring formatter
- 스프링
- 기능적 요구사항
- 정적팩토리메서드
- 스프링di
- 스프링시큐리티
- 자바 필터
- 스프링 포매터
- fetch join
- jpa lazy
- 생성자주입
- java predicate
- method refetence
- 스프링부트 도커
- ioc컨테이너
- 토비의 스프링
- 도커 이미지 빌드
- IOC
- jpa no session
- 수정자주입
- 비기능적 요구사항
- open-session-in-view
- Atomicity
- 스프링 시큐리티 설정
- kotlin 리팩터링
- 그래프큐엘
- Today
- Total
목록전체 글 (109)
공부기록
영속성 컨텍스트 EntityManagerFactory에서 고객의 요청이 있을 때 마다 EntityManager를 생성한다. 이렇게 생성된 EntityManager는 커넥션풀에서 커넥션을 가져와 사용한다. EntityManagerFactory는 어플리케이션 통틀어서 단 하나! EntityManager는 쓰레드간 공유하면 안된다. 영속성 컨텍스트 "엔티티를 영구 저장"하는 환경이라는 뜻. EntityManager.persist(entity) entity를 DB에 저장하는 것이 아니라, 영속성컨텍스트에 저장한다. 엔티티 매니저를 통해 영속성컨텍스트에 접근한다. 트랜잭션이 끝나면 영속컨텍스트 또한 종료된다. 엔티티의 생명주기 비영속(new / transient) 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태 ..
합병정렬(merge sort) 분할정복법을 이용한 정렬이다. 분할정복법 ? 분할 : 해결하고자 하는 문제를 작은 크기의 동일한 문제들로 분할 정복 : 각각의 작은 문제를 순환적으로 해결 합병 : 작은 문제의 해를 합하여(merge) 원래문제에 대한 해를 구함. 데이터가 저장된 배열을 절반으로 나눔 각각을 순환적으로 정렬 정렬된 두 개의 배열을 합쳐 전체를 정 {'A','L','G','O','R','O','T','H','M','S'} {'A','L','G','O','R'} , {'O&#..
기본적인 정렬(선택정렬, 버블정렬, 삽입정렬) 선택정렬 가장 큰 값을 찾는다. 맨 마지막 자리의 값과 자리를 바꾼다 가장 큰 값이 마지막에 위치한다. selectionSort(A[], n) { -> 배열 A[1...n]을 정렬한다. for last A[k]와 A[last]의 값을 교환 ---3 } 1의 for 루프는 n-1 번 반복. 2에서 가장 큰 수를 찾기 위한 비교횟수 : n-1, n-2, ... , 2, 1 (last개 최대값 last-1) 3의 교환은 상수시간 작업 -> 시간 복잡도 T(n) = (n-1)+(n-2)+...+2+1 = O(n^2) 버블소트 첫번쨰 값과 다음 인덱스의 값을 비교해 첫번째 값이 크면 스왑. 두번째 값과 다음 인덱스의 값을 비교해 두번쨰 값이 크면 스왑. ... 가장 ..
쿠키와 세션. 최초의 웹에서는 단순히 문서를 전달받거나 정보를 공유하는 목적으로 사용했기 때문에 상태 유지 및 관리가 필요없었다. 하지만 웹이 발전해가며 로그인이라던지 장바구니에 담긴 상품 등 상태 유지및 관리가 필요하게 됐다. 이러한 배경 때문에 쿠키가 등장한다. 상태 유지 및 관리 , 사용자 인증 수단 -> 쿠키 쿠키 지속쿠키 일반적으로 우리가 부르는 쿠키. 클라이언트 하드 디스크에 텍스트형태로 저장. 클라PC 사용자들은 해당 쿠키 정보 열람가능. 세션쿠키 일반적으로 우리가 부르는 세션. 클라이언트 웹 브라우저 캐시에 저장. 예를 들어 정상적인 로그인을 하면 was는 서버측에 해당 세션정보를 저장함. 쿠키 헤더 구조 서버에서 클라로 쿠키 발급시 Set-Cookie 헤더를 통해 클라이언트에 쿠키 값을 ..
아이템24. 멤버클래스는 되도록 static으로 만들라. 중첩클래스 다른 클래스 안에서 정의된 클래스. 자신을 감싼 바깥 클래스에서만 쓰여야한다. 그 외 쓰임새가 있다면 톱레벨 클래스로 선언할 것. 정적 멤버 클래스, (비정적)멤버클래스, 익명 클래스, 지역 클래스 등이 있다. 정적 멤버 클래스 다른 클래스 안에 선언되고, 바깥 클래스의 private 멤버에도 접근 가능을 제외하면 일반 클래스와 똑같음. 개념상 중첩 클래스의 인스턴스가 바깥 인스턴스와 독립적으로 존재할 수 있다면 정적멤버클래스로 만들 것. (비정적 멤버 클래스는 바깥 인스턴스 없이는 생성할 수 없다) 결론. 메서드 밖에서도 사용해야 하거나 메서드 안에 정의하기엔 너무 길다면 멤버클래스로 만들 것. 멤버클래스의 인스턴스 각각이 바깥 인스턴..