Programming/Spring

MVC패턴은 무엇인가, MVC1과 MVC2의 차이점 오늘은 이전부터 기록해두고 싶었던 MVC1과 MVC2에 차이점에 대해 포스팅하려고 한다. 개발자로서 반드시 알아야 할 부분 중에 하나라고 생각하여 정리를 해두고 수시로 익힐 예정이다. 💡 MVC 패턴이란? MVC 패턴은 소프트웨어 공학에서 사용하는 디자인 패턴 중 하나로 Model, View, Controller의 앞 글짜를 따서 MVC 디자인패턴이라고 한다. Model : 어플리케이션의 정보나 데이터, DB등을 말한다. (백그라운드에서 동작하며, 사용자가 원하는 데이터나 정보 제공) View : 사용자에게 보여지는 화면, UI를 말한다. 모델로부터 정보를 받아 표출한다. Controller : 데이터와 비즈니스 로직 사이의 상호 동작을 관리한다. 즉,..
Mybatis - foreach 사용법 및 예제 간혹 동적 쿼리를 이용하는데 sql을 여러번이용해 Data를 List형태로 꺼낼때가 효율성이 떨어질 때가 있다. 우리는 효율적인 프로그래밍을 지향하기 때문에 반복해서 쿼리를 수행하는 것에 대해 조금 더 효율적인 방법을 생각하고 이행할 필요가 있다. 오늘은 Mybatis에 foreach문법에 대해 기록할 것이다. 💡 Mybatis 문법 foreach문법을 사용하기 전 각 문법 형태 collection 전달받은 인자 값 - List나 Array형태만 가능 item 전달받은 인자 값의 alias 명 open 해당 구문이 시작될 때 삽입할 문자열 close 해당 구문이 종료될 때 삽입할 문자열 separator 반복 되는 사이에 삽입할 문자열 index 반복되는 ..
JPA로 원하는 매개변수로 findBy 메서드 생성하기 최근 "스타트 스프링부트" 라는 책으로 공부하는게 기본환경이 JPA를 활용하기 때문에 JPA에서 findBy를 이용해 쿼리 메소드를 작성하고 조회 조건처리 및 like 구문 처리 까지 정리하는 포스팅을 목표로 한다. SQL문에서 특정한 칼럼의 값을 조회할 때는 쿼리 메서드의 이름을 findBy로 시작하는 방식을 이용한다. Collection findBy + 속성 이름(속성 타입) 예를들어, '게시물에서 user00이라는 작성자의 모든 데이터를 조회한다'는 기능을 BoardRepository에 추가하면 다음과 같이 코드를 작성한다. package org.zerock.persistence; import java.util.Collection; impor..
Dispatcher Servlet 이란? Dispatcher Servlet에서 dispatch는 "보내다" 라는 사전적 의미를 가지고 있습니다. 본격적으로 Dispatcher Servlet에 대해 설명하기 앞서 FrontController 패턴의 개념을 살펴보고 가겠습니다. 1. FrontController 패턴 이란? 우리는 사용자의 요청을 Servlet에게 전달하기 위해 web.xml 에 servlet을 등록하고 mapping하는 과정이 필요합니다. 하지만 수 많은 요청이 필요한 경우 계속해서 이 작업을 필요로 하기 때문에 이 점을 해소하고자 FrontController 패턴이 생겨났습니다. Front Controller 패턴 Front Controller는 주로 서블릿 컨테이너의 제일 앞에서 서버로..
목차 Controller와 RestController의 차이점 Spring MVC의 Work Flow @RestController 개념 및 예제 ResponseEntity 개념 및 예제 일반적인 API는 반환하는 리소스에 Value값만 있지 않습니다. 상태코드, 상태 메시지 등등 데이터들이 있는데 이러한 Data를 return하는 것을 주용도로 사용하는 것이 ResponseEntity 클래스 입니다. 먼저 ResponseEntity를 배우기 전에 Controller와 RestController의 차이점을 알아보겠습니다. 1. Controller와 RestController의 차이점 - Spring MVC Controller와 Restful Controller의 가장 큰 차이점은 HTTP Response ..
IoC 그리고 DL 과 DI IoC의 이해 IoC(Inversion of Control) 이란? "제어의 역전" 이라는 의미로, 메서드나 객체의 호출을 개발자가 결정하는 것이 아닌, 외부에서 결정되는 것을 의미한다. 간단히 말해 "제어의 흐름을 바꾼다" 라고 한다. Ioc의 장점 객체의 의존성을 역전시켜 객체 간의 결합도를 줄이고 유연한 코드를 작성할 수 있게 하여 가독성 및 코드 중복, 유지 보수를 편하게 할 수 있게 한다. IoC의 컨테이너 스프링 프레임워크도 객체에 대한 생성 및 생명주기를 관리할 수 있는 기능을 제공하고 있다. 이때, IoC 컨테이너가 기능을 제공한다. 기존에는 다음과 같은 순서로 객체가 생성되고 실행되었다. 객체 생성 의존성 객체 생성 - 클래스 내부에서 생성 의존성 객체 메서드..
Ajax를 활용한 로그인 처리 예제 1. 로그인 화면 - login.html moony blog 로그인 class="save_id">아이디 저장
@ModelAttribute 어노테이션 Spring MVC에서 @ModelAttribute를 메서드의 파라미터로 사용했을 때 흐름은? @Controller public class TestController{ @AutoWired private TestService testService; @RequestMapping(value="/test") public String test(@ModelAttribute("testVO") TestVO testVO, Model model){ return "spring/test"; } } 먼저 필요한 것은 TestVo 클래스가 존재하여야 하고 아래 url에서 던져주는 testId, testPw의 getter & Setter가 존재하여야 정상적으로 주입되어 받아올 수 있다. ht..
코딩무니
'Programming/Spring' 카테고리의 글 목록 (2 Page)