IT/Spring6 ViewResolver 적용하기 ViewResolver 사용하는 이유 클라이언트 브라우저에서 JSP 파일을 직접 호출할 수 있는데, VeiwResolver를 이용하면 클라이언트에서의 직접적인 JSP 호출을 차단할 수 있다. 대부분 ViewResolver 를 필수로 사용한다. 클라이언트에서 직접 호출하는 것을 방지하는 이유로는 로그인을 해야만 볼 수 있는 페이지가 있을 텐데, 해당 페이지에 직접 들어올 수도 있기 때문이다. ViewResolver 적용 1) /WEB-INF/ 폴더는 브라우저에서 접근할 수 없다. 따라서 /WEB-INF/ 밑에 폴더를 생성하여 폴더 밑으로 JSP 파일을 옮긴다. /WEB-INF/board/getboard.jsp /WEB-INF/board/getboardList.jsp 2) xml 설정 파일에 ViewReso.. 2022. 5. 30. 포워드(Forward)와 리다이렉트(Redirect) 차이 포워드 방식 한 번의 요청과 응답으로 클라이언트의 요청이 처리되므로 실행속도가 빠르다. 대신 브라우저의 URL이 바뀌지 않는다. RequestDispatcher dispatcher = request.getRequestDispatcher("b.jsp"); dispatcher.forward(request.response); 리다이렉트 방식 요청이 들어온 파일로 부터 응답을 보낸 뒤 다른 파일로 요청을 보낸다. 브라우저의 URL이 변경되지만, 두번의 요청과 응답을 하기 때문에 실행 속도가 느리다. response.sendRedirect("b.jsp"); 2022. 5. 26. Java Framework - Spring(4) : MVC 모델 Spring MVC MODEL 1 아키텍쳐 구조 - Model 기능의 JavaBeans는 DAO 와 VO 클래스를 의미 - JSP에서 Controller + View 기능을 모두 담당 - JSP에서 컨트롤에 해당하는 JAVA 코드 // 1. 사용자 입력정보 추출 String id = request.getParameter("id"); String password = request.getParameter("password"); // 2. DB 연동 처리 UserVO vo = new UserVO(); vo.setId(id); vo.setPassword(password); UserDAO userDAO = new UserDAO(); UserVO user = userDAO.getUser(vo); // 3. 화면 이.. 2022. 5. 19. Java Framework - Spring(3) : JDBC Spring JDBC ▶ JdbcTemplate 클래스 - JDBC의 반복적인 코드를 제거하기 위해 제공하는 클래스 - DAO 클래스에서 JdbcTemplate 클래스가 제공하는 템플릿 메소드를 호출하여 DB연동 처리 - JdbcTemplate 클래스는 내부적으로 JDBC API를 이용하여 실제 DB연동 작업 처리 BoardDAO, UserDAO → Spring DAO(JdbcTemplate) → JDBC API (java.sql) → Oracle / MySQL ▶ DataSource 설정 JdbcTemplate 클래스가 JDBC API를 이용하여 DB연동 처리를 하려면 데이터베이스로부터 커넥션을 얻어야한다. 따라서 JdbcTemplate 객체가 사용할 DataSource를 등록하여 스프링 컨테이너가 생.. 2022. 5. 18. Java Framework - Spring (2) : DI / AOP 의존성(Dependency) 주입 Dependency Lookup 스프링 컨테이너가 생성한 객체를 컨데이너 외부에서 검색(Lookup)하는 과정 Dependency Injection - 객체 사이의 의존관계를 스프링 설정 파일에 등록된 정보로 컨테이너가 자동 처리 - 의존관계를 변경하고 싶을 때 자바 코드를 수정하지 않고 메타 데이터만 수정하여 유지보수에 좋음 Constructor Injection : 엘리먼트 사이에 사용 Setter Injection : 클래스에 setter() 메소드 생성, 엘리먼트 사이에 사용 Type Injection : @Autowired 사용 Annotation 과 bean 사용 - 유지보수 과정에서 바뀌지 않는 코드라면 주로 annotation 사용하며, 바뀌는 경우가 있다.. 2022. 5. 18. Java Framework - Spring (1) : 컨테이너 / IoC 프레임워크의 구조 프레임워크 코어 (Cold Spot) : 프레임워크가 제공하는 JAR(Java Archive) 파일 ▶ ex. 뼈 확장모듈 (Hot Spot) : 애플리케이션의 비즈니스 로직 추가 ▶ ex. 살 메타데이터 : xml 환경설정 파일 ▶ ex. 뼈와 살을 연결해주는 연결고리 스프링(Spring) 프레임워크 POJO(Plain Old Java Object) 란 말 그대로 평범한 옛날 자바 객체를 의미 Not POJO 클래스 POJO 이전의 자바 기술들 Applet / Servlet / JSP / EJB 규칙이 복잡함 ▷ 마음대로 클래스를 만들 수 없음. 메모리 사용량 多 ▷ 느림, 디자인 패턴 공부 필요. POJO 특징 Spring 상속받는 클래스가 없음 ▷ 독립적인 클래스 마음대로 만들 수.. 2022. 5. 16. 이전 1 다음 반응형