일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 스프링 포매터
- IOC
- jpa lazy
- 정적팩토리메서드
- Atomicity
- jpa no session
- 스프링부트 도커
- open-session-in-view
- ioc컨테이너
- 생성자주입
- kotlin 리팩터링
- 토비의 스프링
- 동적파라미터
- 스프링시큐리티
- spring formatter
- fetch join
- 소프트웨어의 품격
- 그래프큐엘
- 비기능적 요구사항
- method refetence
- kotlin ::
- 기능적 요구사항
- java predicate
- 스프링di
- 자바 필터
- 도커 이미지 빌드
- 스프링
- 수정자주입
- Spring
- 스프링 시큐리티 설정
- Today
- Total
목록분류 전체보기 (109)
공부기록
GROUP BY 그룹화를 할 수 있다. 열에서 같은 값을 가진 행끼리 한데 묶어 그룹화한 집합을 집계함수로 넘겨줄 수 있다. ex) SELECT * FROM sample; no name value 1 A 1 2 A 2 3 B 10 4 C 3 5 NULL NULL 이때 그룹바이로 그룹화할 열을 지정한다. (복수로도 가능) ex) SELECT COUNT(name) FROM sample GROUP BY name; name COUNT(name) A 2 B 1 C 1 NULL 0 이렇게 name의 열 값이 A,B,C,NULL 로 그룹화된 것을 볼 수 있다. 주의할점 WHERE 구의 조건식에서는 집계함수 사용 불가. SELECT name, COUNT(name) FROM sample WHERE COUNT(name) ..
클래스와 멤버의 접근권한을 최소화하라. 잘 설계된 컴포넌트? 잘 설계된 컴포넌트는 바로 클래스 내부 데이터와 내부 구현정보를 외부 컴포넌트로부터 얼마나 잘 숨겼느냐로 판단. 잘 설계된 컴포넌트는 모든 내부 구현을 완벽히 숨겨, 구현과 api를 깔끔히 분리. 오직 api로만 다른 컴포넌트와 소통하며 서로의 내부 동작 방식에는 관심도 없다. (정보은닉, 캡슐화) 정보은닉의 장점. 개발속도를 높인다. 여러 컴포넌트를 병렬로 개발할 수 있기 때문. 관리비용을 낮춘다. 각 컴포넌트를 더 빨리 파악하여 디버깅이 가능. 다른 컴포넌트로 교체하는 부담도 낮다. 성능최적화에 도움을 줄 수 있다. 다른 컴포넌트에 영향 주지않고 해당 컴포넌트만 최적화 할 수 있기 때문. 소프트웨어 재사용성을 높인다. 독자적으로 동작할 수 ..
HTTP는 클라이언트와 서버 간에 통신을 한다. 리소스가 필요하다고 하는 쪽이 클라이언트, 리소스를 제공하는 쪽이 서버. 한 번의 통신에서 반드시 한 쪽은 클라이언트, 다른 한 쪽은 서버의 역할. 리퀘스트와 리스폰스를 교환하여 성립 클라이언트 측에서 리퀘스트 서버 측에서 리스폰스 리퀘스트를 수신해야 리스폰스를 송신한다. 리스폰스 메세지 구성 HTTP/1.1 200 OK | 프로토콜버전 / 상태코드 / 상태코드설명 Date: Tue, 10 Jul 2012 06:50:15 GMT | Content-Length: 352 | 리스폰스 헤더 필드 Content-Type: text/html | | 바디 ... | HTTP는 상태를 유지하지 않는 프로토콜 stateless 프로토콜. 이전에 보낸 리퀘스트나 리스폰스에..