리스트(232)
-
영속성 컨텍스트와 Transaction의 관계
프로젝트를 진행하면서 영속성 콘텍스트를 정확히 알고 쓰지 못해 생긴 이슈에 대해서 정리하고자 한다. 결론부터 말하자면, 영속성 컨텍스트와 트랜잭션 생존 범위가 동일하고, 트랜잭션이 같으면 같은 영속성 컨텍스트를 사용한다. 그러나 트랜잭션이 다르면 다른 영속성 컨텍스트를 사용하게 된다(그림 1참고) 이 개념을 이해하고 꼭 개발하도록 하자!!!!!!!(정확히 이해를 하지 못한채 API 서버 개발할 때 잦은 로직 변경이 있었음 ㅠㅠ) 이슈 - 하나의 트랜잭션이 끝난 후 그 값을 다른 트랜잭션에서 연산(persist, remove... 등)하려고 하면 영속화되지 않은 엔티티를 어떠한 행위를 하려고 해서 오류가 뜨게 된다. 해결방법 다른 트랜잭션에서 연산하기 전에 em.find를 통해 영속성 컨텍스트에서 가져와서..
2022.03.23 -
@NotNull, @NotEmpty, @NotBlank 차이점
프로젝트 진행하면서 @NotNull, @NotEmpty, @NotBlank를 사용하다가 3가지의 차이점이 헷갈려서 정리하려고 한다. - @NotNull : Null만 허용하지 않는다. 공백 값을 허용한다(ex. "", " ") - @NotEmpty : Null과 "" 둘다 허용하지 않는다. " "는 허용이 된다 - @NotBlank : Null과 "", " " 모두 허용하지 않는다. 3개중에서 가장 유효성 검사가 엄격하다. 정리하자면 Null 허용 "" 허용 " " 허용 NotNull X O O NotEmpty X X O NotBlank X X X
2022.03.23 -
완주하지 못한 선수
https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr [알고리즘 접근 방법] 1. 해쉬 접근법(효율성 평균 41ms=0.041초) -해쉬에 먼저 참가자들을 다 넣는다 -참가자들 중에서 완주자 확인 -미완 주자 출력 //효율성 평균 41ms string solution(vector participant, vector completion) { unordered_map map; //일단 맵에 모든 참..
2022.03.23 -
JAVA 문법 정리 사이트
자바 문법을 깔끔하게 정리한 사이트가 있어서 공유하려고 한다. 자바 문법 참고용으로 좋을듯 https://codechacha.com/ko/category/java/ codechacha Java, Kotlin, Android, Python, Linux 등 Programming, Software 개발 방법을 다룹니다. codechacha.com
2022.03.23