[JPA] JPA와 영속성 컨텍스트
·
Backend/Spring Boot & JPA
이 포스트는 김영한님의 "자바 ORM 표준 JPA 프로그래밍"을 참조하였음을 알립니다. 이론 공부로 공부를 시작하는 것을 선호하지 않는 타입이라 무지성으로 Spring Boot로 블로그를 만드는 미니 프로젝트를 해보는 중이었는데, 점점 JPA와 영속성 컨텍스트에 대한 이해도 부족으로 인한 이슈 해결 능력이 부족함을 느끼게 되었다. 하지만 그런 시도가 있었기 때문에 이번에 다룰 내용을 훨씬 쉽게 이해할 수 있었던 것도 사실이다. 만약, 이 포스트를 참고할 사람이 있다면 이론 공부도 중요하지만 기본적인 CRUD 기능을 한 번 구현해보는 게 좋다고 생각한다. 목차 1. 객체와 테이블의 패러다임 불일치 2. What is JPA(Java Persistence API)? 3. Entity Manager 4. 영속..
[Spring Boot] Issue - spring boot cannot load driver class: com.mysql.cj.jdbc.driver
·
Backend/Spring Boot & JPA
mysql과 spring boot 버전 모두 확인해서 application.yml에 다음과 같이 작성해두었다. spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver 그런데 계속 mysql 부터 빨간 불이 들어오면서 드라이버 로드가 안 되면서 에러가 발생하길래 한참을 스트레스 받았는데 gradle에서 Reload 해주면 끝나는 문제였다. 디펜던시가 안 된다는 에러를 유의깊게 보고 있긴 했었는데, 내가 아직 스프링 부트에 대한 이해도가 낮아서 쉽게 해결하지 못 한 이슈라고 판단된다.
[Spring Boot] Concept part - JPA 연관관계 매핑 기초
·
Backend/Spring Boot & JPA
DRF로 진짜 쉽게 할 수 있는 건데.. 스프링은 분명 아는 개념을 다른 방식으로 구현할 뿐인데, 초반에 무슨 소린지 감이 안 와서 제법 힘들었다. 그래도 열심히 정리를 해보도록 하자. 쓰다보니 느낀 건데, JPA와 영속성 컨텍스트에 대해서도 한 번 정리를 해두는 게 좋을 것 같다는 생각이 든다. 엔티티 매핑도...할 거 엄청 많네? 목차 1. 패러다임의 불일치 2. 연관관계 정의 3. 연관관계 매핑 1. 패러다임의 불일치 JPA란 자바 표준 ORM 기술 표준이다. 연관 관계에 대한 설명에 들어가기 전에 왜 필요한지부터 간략하게나마 짚고 넘어가보자. Application은 규모가 커질수록 복잡도가 증가하는 것은 누구나 알 수 있는 사실이다. 로직은 제쳐두고 도메인만 따져보았을 때, 복잡성을 제어하기 위해..
[Spring Boot] Concept part - Spring Security
·
Backend/Spring Boot & JPA
최근 취미 삼아 Spring Boot를 독학하고 있는데, DRF 개발 경험도 있고 전반적인 구조를 파악하니 생각보다 쉽네 ㅎㅎ 라고 오만해져있었다. 그러다가 어제 유저 로그인/로그아웃과 권한 인증을 구현하다가 머리카락 죄다 쥐어뜯어서 탈모올 뻔 했다. Spring Security가 거의 Spring에서 최종 끝판왕급으로 어려운 내용이라고 하는데, 진위여부를 떠나서 어려운 건 사실이다. 왜냐하면 동작하는 flow 좇는 것도 그렇고 처음 보는 interface가 쏟아져나오니 어디서 부터 잡아야할지 감이 안 오기 때문. 그리고 버전이 업데이트 되면서 구글링해서 찾은 내용을 전부 새롭게 써야 하는데, 정보가 너무 없다. 따라서 이번 포스팅은 Spring Security가 뭔지 간략히 다뤄보고 실제 구현한 내 코..