상황 원래의 애플리케이션은 잘 실행되었다. 하지만 기존 Qna 엔티티와 Reply 엔티티의 클래스명을 생각해봤을 때 너무 모호하다는 생각을 했다. 왜냐면 Qna 사실 질문과 답변이라는 말을 아우르고 있고 Reply는 답변도 되지만 사실은 댓글이라는 느낌이 강했다. 그래서 Qna -> QnaQuestion 으로 Reply -> QnaAnswered 라는 이름으로 변경하고자 했다. Qna 엔티티 이름을 QnaQuestion으로 인텔리제이의 Refactor 기능을 활용해서 변경했다. 하지만 그 이후 애플리케이션을 실행할 때 오류가 난다. 어플리케이션 실행 오류 org.springframework.beans.factory.BeanCreationException: Error creating bean with na..
들어가며.Section4의 마지막을 달리고 있다. 스프링 MVC 부터 스프링 Security 까지 다배우고 Spring에서도 Non-Blocking 방식을 지원하는 SpringWebFlux에 대해서도 맛만 보았다. 벌써 4개월의 시간이 거의 끝나간다는게 놀랍다. 실제로 프로젝트로 서비스를 만들려면 복습을 열심히 해야겠다. 어쨋뜬 오늘부터 클라우드 서비스에 실제로 배포하고 어떻게 인프라를 구축하는지에 대해서 배우기 시작했는데 재미있다. 옛날에 고등학생 때 제로보드를 활용해서 웹사이트를 의뢰 받아 제작했던 경험이 있는데 그때는 웹호스팅 업체에 FTP로 파일을 올리고 했던 기억이 있는데 요즘에는 어떻게 실제로 이용자가 서비스를 이용하도록 배포하는가를 명확히 잘 몰랐다. AWS EC2, S3, Netlify, ..
재귀는 복잡한 문제를 해결하기 위해 Java에서 자주 사용되는 강력한 프로그래밍 기술입니다. 이 블로그 게시물에서는 재귀의 개념을 살펴보고 작동 방식을 이해하는 데 도움이 되는 Java 예제를 제공합니다. 재귀란 무엇입니까? 재귀는 특정 조건이 충족될 때까지 함수가 반복적으로 자신을 호출하는 프로그래밍 기술입니다. 이 기술은 솔루션이 복잡한 문제를 더 작고 관리하기 쉬운 하위 문제로 분해해야 하는 문제를 해결하는 데 일반적으로 사용됩니다. 함수가 자신을 호출하면 새로운 입력 매개변수 세트를 사용하여 자신의 새 인스턴스를 생성합니다. 함수의 새 인스턴스는 이전 인스턴스와 독립적으로 실행되며 자신을 호출할 때 새 인스턴스를 만듭니다. 이 프로세스는 재귀 호출을 중지하고 결과를 반환하는 기본 사례에 도달할 때..
자바에서 문자열 비교하기 자바에서 문자열을 비교하는 방법에는 여러 가지가 있습니다. 이번 글에서는 가장 기본적인 방법인 == 연산자와 equals() 메소드, 그리고 사전 순서를 기준으로 비교하는 compareTo() 메소드와 compareToIgnoreCase() 메소드에 대해 알아보겠습니다. == 연산자로 문자열 비교하기 == 연산자는 두 객체의 주소값이 같은지를 비교합니다. 따라서 문자열의 내용이 같더라도 서로 다른 객체를 생성한 경우에는 false를 리턴합니다. 예를 들어, String a = "가나다"; String b = "가나다"; String c = new String("가나다"); System.out.println(a == b); // true System.out.println(a == ..