본문 바로가기

Spring23

day64) Spring-Controller설계1 Spring에서 제공하는 DispatcherServlet과 스프링 컨테이너를 활용하여 Controller를 설계해보자. [설계] NewFile.jsp에서 글을 쓰면 /WEB-INF/NewFile1.jsp(url로 접근할 수 없도록)에서 출력 [View] NewFile.jsp 더보기 NewFile1.jsp 더보기 ${msg} [web.xml] .do 요청이 오게된다면 필터를 통해 인코딩처리가 되고, Spring에서 제공하는 DispatcherServlet에 Mapping 더보기 encFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 encFilter *.do DispatcherServlet org.springframew.. 2022. 3. 31.
day62) Spring - Model 설계 [기본적인 게시판 CRUD를 활용한 Spring Framework 모델구조 만들기] -com.test.app.board 패키지에서는 객체화 되어 사용되지 않는 클래스 :BoardService(interface), BoardVO -com.test.app.board.impl 패키지에서는 객체화 되어 사용되는 클래스를 넣는다. :BoardDAO, BoardServiceImpl [applicationContext.xml] 컨테이너에서 어노테이션을 탐색하기 위해 사용 m.test.app" /> [BoardVO] 더보기 package com.test.app.board; public class BoardVO { private int bid; private String title; private String write.. 2022. 3. 30.
day62) annotation 사용하기1 - Model관련 .xml (설정파일)의 단점 -결합도를 낮추고 유지보수성을 높이기 위해 xml로 설정했으나 xml이 많아지면 설정할 것이 많아져 오히려 유지보수성이 낮아진다. *해결법: 어노테이션 사용! -시스템 전체에 영향을 주고 이후에 변경가능성이 있는것은 xml로 설정한다. [어노테이션] 서블릿 컨테이너(톰캣)가 언제 이 객체를 생성하고 호출할 지를 파악 할 수 있게 된다. @이 설정파일의 역할을 수행하고 있었음을 짐작할 수 있다. 컴파일, 런타임시에 반영된다. -사용방법 1. applicationContext -> namspace -> context 체크 2. -어노테이션 종류 @Component @Component Annotation이 있는 클래스에 대하여 bean 인스턴스를 생성한다. @Service, @Re.. 2022. 3. 30.
day61) 생성자 injection, setter injection IoC를 지원하는 컨테이너에게 객체생성권을 줄수있으니, 이를 이용해보자! 객체들을 생성하여 작업하다보면, "의존관계"가 발생한다. Dependency -> Dependency Injection(DI,의존성 주입)★☆★☆★ (원시타입보다 객체를 대상) [설계] 인터페이스로 같은 메서드를 사용하게 강제한다. TV 인터페이스 - 전원 on, off , 볼륨 up, down Remote 인터페이스 - 볼륨 up, down -> 리모콘으로 볼륨 up, down을 하며 A, B어느 걸로 하던 상관없이 작동한다 -> LgTV는 생성자 injection, SamsungTV는 setter injection으로 리모콘의 의존성을 주입할 예정 [코드] TV인터페이스 package test; public interface T.. 2022. 3. 29.