목록spring mvc (22)
[꼼꼼한 개발자] 꼼코더

👷🏻♂️ 프로젝트를 위한 요구사항프로젝트 진행 전에 고객의 요구사항을 인식하고, 이를 설계하는 과정이 필요하다.이를 흔히 요구사항 분석 설계라고 한다.‘고객이 원하는 내용이 무엇이고, 어느 정도까지 구현할 것인가'에 대한 프로젝트 범위를 정하는 것이 목적이다. 요구사항은 너무 방대해질 수 있으므로, 단계를 정확히 구분해 주는 것이 좋다.따라서 경험이 풍부하다면 초기 버전을 많은 기능을 포함시킬 수 있지만경험이 적다면 최대한 단순하고 눈에 보이는 결과를 만들어 내는 형태로 진행하는 것이 좋다. 요구사항은 온전한 문장으로 정리하는 것이 좋다.주어는 ‘고객’이고 목적어는 ‘대상’이 된다. 여기서의 ‘대상’은 결국 데이터의 베이스 설계와 시스템 설계에서 가장 중요한 용어가 된다.다른 용어로는 도메인(dom..

✍🏻 @ModelAttribute 어노테이션 웹 페이지 구조는 Request에 전달된 데이터를 가지고 필요시 추가적인 데이터를 생성하여 화면에 전달하는 방식으로 동작한다. Model의 경우는 파라미터로 전달된 데이터를 가지고 존재하지 않지만 화면에서는 필요한 데이터를 전달하기 위해 사용. 게시판의 페이지 번호는 파라미터로 전달되지만, 결과 데이터를 반환하려면 Model에 담아서 전달해야 함 스프링 MVC의 Controller는 기본적으로 Java Beans 규칙에 맞는 객체는 다시 화면으로 객체를 전달한다. 다시 말해 Java Beans의 규칙은 단순히 생성자가 없거나 빈 생성자를 가져야 하며 getter/setter를 가진 클래스의 객체들을 의미한다. 앞의 예제는 파라미터로 사용된 SampleDTO의 ..

👨🏻💻 Controller의 파라미터 수집(SampleDTO 클래스 작성) Controller를 작성할 때 가장 편리한 기능은 파라미터가 자동으로 수집되는 기능이다. 따라서 매번 request.getParameter()를 이용하는 불편함을 없앨 수 있다. org.zerock.domain 패키지 생성 → SampleDTO 클래스 작성 SampleDTO 클래스는 Lombok의 @Data 어노테이션을 이용해서 처리하는 걸 볼 수 있다.. @Data는 getter/setter, equals(), toString() 등의 메서드를 자동으로 생성해주기 때문에 편리하다. SampleController의 메서드가 SampleDTO를 파라미터로 사용하게 되면 자동으로 setter 메서드가 동작하면서 파라미터를 수집하게..

👀 스프링 MVC의 Controller 스프링 MVC를 이용하는 경우 작성되는 Controller는 다음과 같은 특징이 있습니다. HttpServletRequest, HttpServletResponse를 거의 사용할 필요 없이 필요한 기능 구현 다양한 타입의 파라미터 처리, 다양한 타입의 리턴 타입 사용 가능 GET 방식, POST 방식 등 전송 방식에 대한 처리를 어노테이션으로 처리 가능 상속/인터페이스 방식 대신에 어노테이션만으로도 필요한 설정 가능 다른 프레임워크들과 달리 스프링 MVC는 어노테이션을 중심으로 구성되기 때문에 예제들을 작성할 때에도 각 어노테이션의 의미에 대해서 주의해가며 학습해야 한다. 👨🏻💻 @Controller, @RequestMapping(SampleController 클래..

🕹 스프링 MVC의 기본 사상Java를 이용하는 웹 애플리케이션을 제작해 본 적이 있다면Servlet/JSP 기술을 활용해서 제작하는 방식을 먼저 배우게 된다. 이후 모델 2라는 방식에 대해서 학습하게 되는데 스프링 MVC의 경우 이러한 부분은개발자들에게 보여주지 않고 개발자들은 자신이 필요한 부분만 집중해서 개발할 수 있는 구조로 만들어져 있다. 웹 프로그래밍에서 가장 익숙한 단어들 중 하나는 Request/Response일 것이다.Servlet/JSP에서는 HttpServletRequest/HttpServletResponse라는 타입의 객체를 이용해브라우저에서 전송한 정보를 처리하는 방식이다. (Servlet/JSP의 API사용) 스프링 MVC의 경우 이 위에 하나의 계층을 더한 형태가 된다.스프링..

👨🏻💻 코드 예제(XML 설정)‘Spring Legacy Project’ → ‘Spring MVC Project’ → ‘org.zerock.controller’ → ‘ex01’ 프로젝트 생성생성된 프로젝트는 스프링 버전이 3 버전이므로 pom.xml을 수정하여 5.0.7 버전으로 변경한다.또한 Lombok 기능을 이용해서 간단한 코드를 작성하고, 테스트 할 것이므로 pom.xml에 추가한다. Spring Legacy Project로 생성된 프로젝트는 서블릿 버전이 2.5 버전을 사용하지만Java 설정 등을 이용하려면 서블릿 3.0 이상을 사용하는 것이 좋다.pom.xml 파일을 수정한다. (기존 > 주석 처리 or 삭제)Maven의 컴파일 옵션은 1.8버전으로 변경하고 프로젝트 우클릭 → ‘Mav..