본문 바로가기

자바33

스프링부트 JPA 사용기 특징. 1캐시, 2캐시가 존재. 1캐시는 로컬 영역. 2캐시는 글로벌 영역으로 처리. 데이터베이스에 직접 데이터를 넣기 전 메모리로 정보를 가지고 있는다. 때문에 가지고 있는 정보를 먼저 조회 후 데이터가 없으면 데이터베이스에 연결. 장점. 데이터베이스와 커넥션을 줄일 수 있다.(통신 비용 감소) 데이터베이스를 잘 몰라도 정보를 조회할 수 있다.(컬렉션을 사용하는 방법으로 운영하는 듯.) 단점. 어노테이션 고수가 되야 한다. 어렵거나 최적화 쿼리는 짜기 어렵다. 제공되는 기능이 많다보니 헬적화 인듯. 타인 혹은 타사에게 제공하는 라이브러리를 구현해본 사람은 알겠지만 결국 어노테이션(애트리뷰트) 혹은 원래 기능이 필요하다. 때문에 자체적 쿼리도 구현할 수 있도록 제공 하는 등 아무래도 최적화하기엔 프로시저.. 2020. 11. 1.
자바 Post 한글 깨짐 대충 친구 검색을 만들고 있었다. @PostMapping(value = "/list" ) @ApiOperation(value = "친구", notes = "친구 검색") public String friendList(HttpServletRequest request , @RequestParam(value = "value", required = true) String value) throws Exception { 대충 친구 리스트를 불러오는 post C# 클라이언트 테스트 코드 처음에 보내보니 한글이 깨져서 들어온다. 환경설정에서 utf-8로 한적이 있는거 같은데? 라고 생각났는데 인텔리제이 파일에 관련한 utf-8 설정같았다. 그래서 찾아본 결과 인코딩 방식 중 하나인 8859_1를 사용해서 개별적으로 인코.. 2020. 8. 21.
자바 순차키 만들기 1. UUID를 사용할 수 없을 때. 2. uuid를 가져와서 uuid.hashcode * -1로 양수를 만들고 처리하려 했지만, 20만건에서 한 6개를 중복된다.(다시 생성할 순 있지만...) 3. AAAA0001 -> AAAA0002 -> AAAA9999 -> AAAB0001순으로 처리하기로 함. package com.packege.commonlib.util; import com.packege.commonlib.util.response.CustomErrorCode; import com.packege.commonlib.util.response.CustomErrorMessgae; import com.packege.commonlib.util.response.exception.RestapiInvalidReq.. 2020. 8. 7.
Effective Java #09 equals를 재정의할 때는 반드시 hashCode도 재정의하라 equals 함수를 재정의하는 클래스는 반드시 hashCode 함수도 재정의 해야 한다.그렇지 않으면 Object.hashCode의 일반 규약을 어기게 되므로, HashMap, HashSet, Hashtable같은 해시(hash) 기반 컬렉션과 함꼐 사용하면 오동작하게 된다. Object 클래스 명에서 복사해 온 일반 규약은 다음과 같다. 응용프로그램 실행 중에 같은 객체의 hashCode를 여러 번 호출하는 경우 equals가 사용하는 정보들이 변경되지 않았다면 언제나 동일한 정수(integer)가반환되야 한다.다만 프로그램이 종료되었다가 다시 실행되어도 같은 값이 나올 필요는 없다. equals(Object) 함수가 같다고 판정한 두 객체의 hashCode 값은 같아야 한다. equals(Object.. 2016. 4. 17.