일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 세션의 정의
- 필터의 정의
- springSecurityFilterChain 오류
- 쿠키의 정의
- .orelseThrow
- 유연한 컨트롤러1 - v5
- spring
- n+1
- application-properties
- abap value in field Data Class error
- 401오류
- Validation
- MVC
- 인터셉터의 정의
- optional
- 세션이란
- spring MVC
- Testcode
- 김영한
- BindingResult
- filter vs interceptor
- controller
- 세션vs쿠키
- SpringMVC
- java.lang.AssertionError
- 쿠키란
- @Controller
- 구글 보안 api 활용
- 필터vs인터셉터
- jpa
- Today
- Total
목록김영한 (5)
ABAP DUMP ERROR 24시

# 인프런 김영한의 스프링 MVC 2편 - 백엔드 웹 개발 핵심 기술을 개인적으로 정리한 글입니다. 1. 직접 JAVA 코드로 Cookie 와 Session 구현해보기 2. HttpSession 을 통해 Spring의 기술을 통해 구현해보기. Q. 쿠키 vs 세션 쿠키는 "웹브라우저에 정보를 저장" 세션은 "서버에 정보를 저장" 쿠키는 "로그아웃과 무관하게 쿠키 보관소에 저장" 세션은 "로그아웃시 세션정보 삭제" Q. 그럼 쿠키 왜써? 세션쓰지? 세션은 "서버"에 정보를 저장하는것이기 때문에 비용이 많이들고, 보관한 데이터 용량 * 사용자 수로 세션의 메모리 사용량이 급격하게 늘어나서 장애로 이어질 수 있다. 또한 서버와 웹브라우저는 결국 쿠키로 통신하기 때문에 쿠키를 안쓸수는 없다. 중요 정보는 서버 ..
# 인프런 김영한의 자바 ORM 표준 JPA 프로그래밍 - 기본편을 개인적으로 정리한 글입니다. 정리 Q . fetch join이 뭐야? 실무에서 자주 사용하며, 연관된 엔티티 컬렉션을 sql문 한방으로 조회하는 쿼리다. 흔히 N+1 문제의 해결 방안으로 제시되곤 한다. //N+1 문제란 JPA에서 query 1개를 호출했는데 DB에는 N개의 query가 호출되어 나가는 현상. Q .fetch = fetchType.EAGER 와 fetch join과의 차이점이 뭐야? 둘다 join query가 나가는 것은 비슷하다. 하지만 EARGER는 묵시적인 특성으로. 내가 나타내지 않는 쿼리명령어 이외의 쿼리가 나가면서 join 이 이루어진다. 따라서 추적이 어렵다. fetch join은 암시적인 특성으로, 내가 ..

인프런 김영한의 자바 ORM 표준 JPA 프로그래밍 - 기본편을 공부하면서 정리한 글입니다. 종류 @ManytoOne @OneToMany @OneToOne @ManyToMany 핵심 : 연관관계의 주인은 왜래키를 갖고 있는 객체가 되야한다. @ManytoOne Many 쪽에 연관 관계가 왜래키를 갖고있고 연관관계의 주인이 된다. @OneToMany One쪽이 주인인데 Many쪽에 왜래키를 갖고 있다. @JoinColumn을 사용해서 꼭 명시해 줘야한다! 아니면 DB에 중간 테이블이 하나 생성된다, 엔티티의 왜래키가 다른 테이블에 있으므로 연관관계시 UPDATE SQL문이 한방 더 나간다. @OneToOne case 1 ) 주 table에 왜래키 있는 경우 => 주 table 조회시 대상 table에도 데..
객체와 DB 사이의 매핑시 @Entity @Table 필드와 컬럼 매핑시 @Column 기본키 매핑시 @Id + @GenerateValue 연관관계 매핑 @ManyToOne , @JoinColumn 나는 @Column 과 @Table의 구분이 어려웠다. 따라서 @Table은 DB의 Real 테이블 명을 설정하는데 사용한다. =>"대장 역할" @Column 은 테이블 내의 필드명을 설정하는 데에 사용한다 = > "쫄병 역할" 예시) 엔티티(JAVA) 테이블 (DB) Member mrd id : String member_id name :String name city : String city street : String street zipcode :String zipcode 큰 틀에서 Member 엔티티에 다..
-JPA 왜 쓸까? = 식당의 주방과 같은 역할 내 생각 : DB 와 JAVA의 연결다리. 즉. 자바 컬렉션에 저장하고 매핑하고 SQL문으로 따로 DB에 저장했던 귀찮은 과정을 JPA가 해결해준다. -JPA 핵심 기술 1. 객체 + DB mapping 2. 영속성 컨텍스트 => "엔티티를 영구 저장하는 환경" -영속성 컨텍스트 장점 *엔티티 = 음식 1. 1차 캐시 => 냉장고 역할 음식은 재료가 오면 냉장고에 저장했다가 요리가 되어 손님에게 나간다. 개발은 JAVA요청이 오면 JPA에 잠시 저장했다가 DB에 저장이된다. 즉 냉장고 역할을 한다. 2. 엔티티의 동일성 보장 => 냉장고 속 칸별 어떤 음식이 있는지 알고있다. 의미 : 1차 캐시로 반복 가능한 읽기(REPEATABLE READ) 등급의 트랜..