profile
블로그 이전 -> https://hwanghub.tistory.com/

REST API 디자인 가이드

api의 엔드포인트를 디자인할 때에는 kebab-case가 권장됩니다. 이는 rest api 디자인 가이드에 나와있는 사항이므로, 준수해주는 것이 일반적인 개발 환경에서 이롭습니다.주 출처주 출처

2023년 5월 31일
·
0개의 댓글
·

new int[] arr

int는 객체가 아님에도 배열 선언시에 new 연산자를 사용하는 것이 갑자기 이질적이여서 찾아보게 되었습니다.자바에서 기본 데이터 타입인 int는 객체가 아니라 원시 타입(primitive type)입니다. 따라서 int 타입 변수를 선언할 때는 메모리에 해당 변수를

2023년 5월 31일
·
0개의 댓글
·

int[] arr vs. int arr[]

두 표현 방식은 차이가 있을까 하여 찾아보았다.하지만 두 문법은 동일하게 int 배열을 생성한다.단, C/C++에서는 int arr\[]와 같이 선언하므로 이를 호환하기 위해 뒤 문법도 "지원"하는 것으로 보여진다.하지만 int\[] arr이 더 자바스러우며, 자바에서

2023년 5월 31일
·
0개의 댓글
·

dto를 사용해야 하는 이유

dto가 아닌 엔티티를 사용하면,엔티티 필드를 모두 json으로 노출해야 한다.(이를 @jsonignore로 일시적으론 막을 수 있지만 이를 매번 하기도 어렵고, 프레젠테이션 레이어에 개입하는게 바람직하지 않음(관심사 분리)엔티티 필드 이름을 조금만 바꾸더라도 api

2023년 5월 29일
·
0개의 댓글
·

지연 로딩을 위한 프록시 객체

프록시 객체 > 프록시 객체를 단독으로 로직에 활용하는 경우는 드물지만, 이를 이해하고 있어야 지연 로딩을 원활하게 이해할 수 있으므로 프록시 객체 개념을 이해하고 있는 것은 중요합니다. 프록시 객체는 그 단어의 의미에서 알 수 있듯이, 대리 객체를 의미합니다. A

2023년 5월 26일
·
0개의 댓글
·

리다이렉트 vs. 포워드

페이지 전환 주체가 다르다. 리다이렉트는 클라이언트가 페이지를 전화하며, 포워드의 경우 페이지 전환을 서버가 처리한다. 출처1 출처2

2023년 5월 26일
·
0개의 댓글
·

가변인자 (...파라미터)

개발을 배우다 보면, 아래와 같은 코드를 한 번 쯤은 마주하게 됩니다.처음 마주했을 때에는 ...이라는 표현이 매우 이질적으로 느껴졌던 기억이 있습니다. 이를 누군가에게 설명하기 위해 정리해봅니다.자바는 ...를 사용하여 동적으로 파라미터를 받을 수 있습니다.즉, 동일

2023년 5월 25일
·
0개의 댓글
·

JOIN과 JOIN FETCH 차이

요약 출처상세 출처

2023년 5월 24일
·
0개의 댓글
·

for-Loop와 stream api

java8부터는 stream을 이용하여 함수형 프로그래밍을 적극적으로 지원한다. 따라서 우리는 list collection 내의 요소를 출력하는 방식을 다음 세 가지로 요약해볼 수 있다.위와 같이 작업을 수행할 수 있다. 이 외에도 우리는 각 요소에 대하여 처리할 때

2023년 5월 24일
·
0개의 댓글
·

절대 경로 vs. 상대 경로

절대 경로와 상대 경로는 알고 나면 당연스럽게 이해되는 용어이지만, 처음 들었을 때에는 "뭘까?" 했던 용어이기도 합니다.이번에 간단하게 정리해두려 합니다.절대 경로는 파일의 root부터 target 파일까지의 전체 url path를 의미합니다. 이는 다음과 같이 표현

2023년 5월 24일
·
0개의 댓글
·

[이슈] 1초에 한번 풀링하는 방법을 사용하면 안되는 이유

실시간 채팅을 구현하는 과정에서, 데이터를 실시간으로 동기화하는 방법에 어려움이 있어 1초에 한번 채팅 데이터를 업데이트 하는 방식으로 진행하려 했었다.하지만, 데모가 아닌 이상 대부분의 경우 실 서비스를 위한 비즈니스 로직을 구현할 때, 풀링으로 구현하면 안되고 무조

2023년 5월 24일
·
0개의 댓글
·
post-thumbnail

JPA 활용2 배우는 내용 간단 요약

요즘은 MSA로 구성하다보니, "서버사이드 렌더링"보다는 api 단위로 개발하게 된다.JPA를 활용하여 api를 작성할 때에는 주의할 것이 많다.\-> JPA를 활용하여 api를 만들 때 어떤 방식이 올바른 방식인지 설명해주실 예정.우선 서버에서 화면을 처리하는 것과,

2023년 5월 24일
·
0개의 댓글
·

service를 interface와 impl로 분리하는 이유

대개의 경우 우리는 Service 패키지를 구성할 때, OrderService 인터페이스와 OrderServiceImpl 구현 클래스로 구분하여 작성하곤 합니다.이 방식은 Loose Coupling을 위한 개발 방식이라고 이해하고 있는데, 엔터프라이즈 레벨이 아닌 일반

2023년 5월 23일
·
0개의 댓글
·

[이슈] permission denied .ssh authorized_key

2023년 5월 22일
·
0개의 댓글
·

[이슈] Not possible to fast-forward, aborting.

git config pull.ff only 를 통해 pull의 기본 옵션을 ff-only로 설정해놓은 경우 발생.git pull --rebase 로 해결conflict가 발생한 파일에서 충돌 요소를 수정수정사항을 git add, git commit 하고그 다음 git

2023년 5월 22일
·
0개의 댓글
·

scp 업로드/다운로드 정리할것

2023년 5월 22일
·
0개의 댓글
·

싱글톤 패턴을 사용하는 이유

기본적으로 스프링 프레임워크는 컨테이너 내에서 객체를 관리할 때, 싱글톤을 기본값으로 가지고 운영됩니다.싱글톤 패턴은 객체가 프로그램 내부에서 단 1개만 생성됨 을 보장하여 메모리를 효율적으로 사용하고, 멀티 스레드에서 이 객체를 공유하며 동시에 접근하는 경우에 발생하

2023년 5월 18일
·
0개의 댓글
·
post-thumbnail

[이슈] Could not open init generic class cache for initialization script '~경로\wrapper_init.gradle'

설정에 들어가보면 알 수 있듯이, gradle-wrapper properties 파일을 찾을 수 없어 발생하는 문제입니다. 기본값으로 설정해 둔 경로에 없어서 발생하는 문제인데, 대개의 경우 패키지 구조를 굳이 변경하지 않으므로 패키지 root를 다르게 열어서 발생합니

2023년 5월 18일
·
0개의 댓글
·
post-thumbnail

[이슈] cannot resolve column "name"

엔티티를 모델링 하고 커밋을 하려고 하는데 다음과 같은 에러가 확인되었다.찾아보니 intelliJ에 DB가 연결되어 있지 않아서, 해당 칼럼에 대한 정보가 없어 반환되는 에러인 것 같다.

2023년 5월 18일
·
0개의 댓글
·