programming study 73

영속성 컨텍스트와 OSIV

[JPA] 영속성 컨텍스트와 OSIV(Open Session In View) (tistory.com) [JPA] 영속성 컨텍스트와 OSIV(Open Session In View) 개요 JPA를 사용하면서 개발하다보면 간혹 LazyInitializationException 이라는 예외를 접하게 될 것이다. 이번에 포스팅할 OSIV는 해당 예외와 밀접한 관련이 있다. 또한 OSIV의 활성화 여부에 따라 JPA를 xzio.tistory.com 개요 JPA를 사용하면서 개발하다보면 간혹 LazyInitializationException 이라는 예외를 접하게 될 것이다. 이번에 포스팅할 OSIV는 해당 예외와 밀접한 관련이 있다. 또한 OSIV의 활성화 여부에 따라 JPA를 사용해서 개발하는 애플리케이션 성능에 ..

mysql 접속 오류(Public Key Retrieval is not allowed)

상황 dbeaver에서 mysql 접속이 잘 되다가 갑자기 안 됨 원인 이 전에는 주소값,데이터베이스,드라이버이름,유저아디디,패스워드 등만 가지고 젒고이 가능했다. MySQL 8.0 이후 접속 시에는 allowPublicKeyRetrieval=true 설정이 필요하다. 해결 jdbc에서는 jdbc:mysql://localhost:3306/database?allowPublicKeyRetrieval=true dbeaver에서는 connection settings - Driver properties : allowPublicKeyRetrieval=true

JPA 영속성 컨텍스트(Persistence Context)의 5가지 특징

JPA 영속성 컨텍스트(Persistence Context)의 5가지 특징 — devoong2 (tistory.com) 영속성 컨텍스트 특징 1차 캐시 변경 감지 (Dirty Checking) 동일성 보장 지연 로딩(Lazy Loading) 쓰기 지연 1차 캐시 영속성 컨텍스트 내부에서 엔티티를 캐시로 저장하는 것 일반적으로 @Transactional 어노테이션과 라이프사이클이 동일함 OSIV(Open Session In View) 가 true 라면 ServiceLayer 에서 @Transactional 이 종료되어도 PresentationLayer 까지도 1차 캐시는 유지됨 Jpa 는 데이터 조회시 캐시를 우선적으로 조회하고 캐시에 데이터가 없으면 DB를 조회함 @Transactional public ..

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (2)

실습 [Spring Settings] Project : Gradle - Groovy Language : Java Spring Boot : 2.7.6 Group : hello Artifact : springmvc Name : springmvc Description : Demo project for Spring Boot Package Name : hello.springmvc Packaging : Jar Java : 11 Dependencies: Spring Web, Thymeleaf, Lombok GENERATE 수행 war vs jar war를 사용하는 경우 - jsp 사용할 때 - Tomcat 같은 WAS 서버를 별도로 설치두고 거기에 빌드된 파일을 넣을 때 (내장 Tomcat에도 사용 가능하긴 하지만 ..

JSP CharacterSet정리

: 클라이언트(부라우져)가 어떤 CharacterSet으로 받을지 -> 웹 브라우져에서 한글 깨짐 방지 : JSP페이지가 어떤 캐릭터셋으로 작성됐는지 : HTML 페이지가 어떤 케릭너셋으로 작성됐는지 # JSP파일은 서블릿으로 변환되어 읽으므로 HTML 케릭터셋보다 JSP케릭터셋을 더 우선시 함. HTML form 태그 post 메서드 방식은 받는 곳에서 request.setCharacterEncoding("UTF-8");해줘야 한글 안 깨짐 HTML form 태그 get 메서드 방식은 URL을 통해( UTF-8 세팅이 되어있는 톰캣을 거침) 캐릭터 셋 처리를 하기 때문에 톰캣이 세팅된 대로 처리된다. request.setCharacterEncoding("UTF-8"); 파라메터(인자)로 전송되는 데이터..

REST API

https://dongwooklee96.github.io/post/2021/03/28/rest-api-%EB%B3%B4%EC%95%88-%EB%B0%8F-%EC%9D%B8%EC%A6%9D-%EB%B0%A9%EC%8B%9D.html REST API 보안 및 인증 방식 | 개발자 이동욱 REST API 보안 보안에 관해서는 백번, 천번을 강조해도 과함이 없다. 근래의 대부분의 서비스 시스템들은 API를 기반으로 통신한다. 앱과 서버 간의 통신 또는 자바 스크립트 웹 클라이언트와 서버 dongwooklee96.github.io https://blog.npcode.com/2017/04/03/rest%EC%9D%98-representation%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC..