인텔리J의 변수 명, 메서드 명, 클래스 명 한방에 수정하기(Feat. Shift + f6)
OrderSimpleQueryDTO라는 클래스 파일이 있고, 그것을 다른 클래스 파일에서 사용하고 있는 장면이다. 그런데, OrderSimpleQueryDTO12345라고 클래스명을 지었어야 했는데, 잘못 지어버려서 수정을 해야 한다. 그러나 만약 이 OrderSimpleQueryDTO 클래스가 파일 100 군데에 있다면, 일일이 찾아 가서 수정을 해야 하는 어마어마한 상황이 벌어진다. 이때 단축키 [Shift + f6]을 누르고, OrderSimpleQueryDTO로 고쳐주면, 파일 100군데에 있는, OrderSimpleQueryDTO 명이 자동으로 OrderSimpleQueryDTO12345로 변경이 된다. (window 기준 단축키이며, mac은 단축키가 다르다)
더보기
DB 설계 시, 다중성 설정이 헷갈릴 때의 tip!!
A,B 2개의 Table이 있다고 하자. A와 B Table 사이의 다중성이 잘 파악되지 않을 때는, 2가지 작업을 거쳐 보자. STEP 1 : A를 1로 뒀을 때, B는 몇 개가 되는지 STEP 2 : 반대로 B를 1로 뒀을 때, A는 몇개가 되는지 -> 만약 STEP 1,2의 결과 A,B 둘 중 하나라도 多가 나오면, 예를 들어, A만 多라면, A : B = 多:1이며, A,B 모두 多라면 A : B = 多:多가 된다.
더보기
Rest API 개발 시, List<E> 등의 [컬렉션]을 [직접] 반환하지 말 것!
결론부터 말을 하자면, 컬렉션을 [직접] 반환하면 항후 API 스펙을 변경하기 어렵기 때문에, 컬렉션을 별도의 클래스로 한 번 Wrapping을 한 후에 넘겨줘야 한다(무슨 말인지는 아래를 천천히 읽어 보자). (사전 지식 : JSON은 실체는 쌍의 배열이다 EX) "id": 1, "name": "jin young kim", 위와 같은 JSON이 있다고 하자. 이것의 실체는 List json = new ArrayList()에 불과하다. "id": 1, "name": "jin young kim", "address": { "city": "해운대구", "street": "해운대로781번길23, 101동 1702호", "zipcode": "48102" } 위 address는 컬렉션이 반환이 된 것이다. json..
더보기