JAVA
-
JSP: FrontController 직접 구현해보기JAVA 2021. 7. 26. 11:02
Spring 의 FrontController 이해하기 // FronctController.java package com.stone.mvc.control; import java.io.IOException; import java.util.Map.Entry; import java.util.Set; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http...
-
이미지업로드: inputStream,outputStream, cos.jar-MultipartRequestJAVA 2021. 7. 25. 14:43
이미지 업로드 form 에 enctype="multipart/form-data" 속성과 값을 지정해야 한다. ( 이번에 쓸 API 와 관련된 환경타입 ) 파일을 request.getParameter 하면 파일의 이름, 정보등이 텍스트형식으로 얻어진다. 파일 이름만 있으면 그 파일을 다운받거나 요청할 수 있기 때문이다. 파일은 1. 파일저장 2. DB저장 의 두가지 방법이 있다. 파일 업로드를 위한 API 는 cos.jar 라고 검색해서 mavenpository 홈페이지에서 다운 또는 maven dependency 태그로 넣자 https://mvnrepository.com/artifact/servlets.com/cos/05Nov2002 Servlet 책에서 library 에 tomcat안의 servlet ..
-
ModelAndViewJAVA 2021. 7. 25. 14:37
DispatcherServlet Spring 에서는 FrontController 를 DispatcherServlet 이라는 클래스로 정의해놓았다. dispatcher : 배달 보내는 사람, 운행 관리원 Servlet 처음 할 때 사용한 MVC 모델 순서 1. 요청이 옴 2. FrontContoller 가 먼저 요청을 받는다. 3. 요청사항(요청명) 에 따라 control 을 짝 지어 요청(request)을 넘긴다. (control 의 메서드에 매개변수로 넘긴다.) (control 들이 공통 구현한 인터페이스 하나로 다향성을 이용하자) 4. 짝 지어진 control 이 요청에 맞는 업무 즉, model 을 사용한다.(등록폼관련 control은 model 사용안할 수도 있다.) 그리고 매개변수로 받은 요청에..
-
MVC 3 Tier,인터페이스정의서,AJAX-JSON사용,BLOB(image)JAVA 2021. 7. 25. 14:23
MVC - 3 Tier 3 Tier ( 3 layer architecture ) presentation : control, view business(logic) : service(인터페이스통신) dataservice : DAO common : VO 위 3개 항목이 common 소스들을 공통적으로 사용한다. business : 송-수신 관계의 시스템들이 통신하는 인터페이스들의 영역. presentation 과 business 가 함께 존재시 서버에 과부하가 올 수도 있다. 그래서 이 둘을 서버를 더 생성하여 서로 다른 서버에 두는 방식이 있는데 이것이 웹 서비스 이다. 지금까지는 축소형 MVC 사용중이였다. : control view DAO VO http://dawoonjeong.com/mvc-vs-3..
-
Servlet, 과도기 MVCJAVA 2021. 7. 25. 14:15
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/MyServlet") // 이 웹서버에 /MyServlet 요청시 이 Servlet 이 반환 //@WebServlet("/") // 이 웹서버에 아무거나 요청해도 이 Servlet 이 반환. public class MyServlet extends Htt..
-
MVC모델2, JSTLJAVA 2021. 7. 25. 13:18
JSP & Spring 의 대표모델 (MVC모델) 화면 - > 업무 - > 데이터처리 화면 : View 업무 : Control => (1) 요청 (2) 업무 (3) 경로지정 (2) 업무 = 데이터처리 즉, 지금은 Control 와 Model을 같은 JSP 에서 다룬다. 데이터처리 : Model => DAO, VO 이용 view + control + (Model)DAO + (Model)VO UML 모델에 작성해보자. Board 목록 >> IBoardDAO.java , BoardDAO.java (메서드추가) List selectAll(); // IBoardDAO 인터페이스 public List selectAll() { // BoardDAO 클래스에서 구현 ArrayList array게시물 = new A..
-
MVC모델이란JAVA 2021. 7. 25. 13:13
MVC모델 Login 전 페이지 1 - 게시물등록준비 // 게시물등록준비에서 게시물등록으로 갈지 로그인준비로 갈지.. 요청1 -> 업무1 -> 뷰1 : 뷰1로 가거나 뷰2를 위한 업무2로 가거나 | -(x)-> 뷰2 : 바로 다른 뷰로 가는건 안된다. | -(O)-> 업무2 -> 뷰2 : 업무검사로 간 후 뷰2가 나와야 한다. 요청받았을 때 업무하는 것은 업무처리가 아니라 요청제어라고 한다. 그래서 요청제어(= Control) 와 업무처리(= Model)로 나뉜다. Model(업무처리) - View(뷰) - Control(요청제어)- : MVC 모델 View는 화면 출력하는 부분(디자인 부분)으로 칭하고, Model은 데이터베이스와 연동하는 부분 등 로직의 부분을 칭한다. Controller는..
-
ConnectionPool,ViewResolverJAVA 2021. 7. 25. 13:09
Connection Pool JavaApp ---> Connection Pool ( 여러 Connection ) ---> DBMS. 사용자의 요청에 따라 Connection 을 생성하다 보면 많은 수의 연결이 발생했을 때 서버에 과부하가 걸리게 된다 . 이러한 상황을 방지하기 위해 미리 일정수의 Connection 을 만들어 pool 에 담아 뒀다가 사용자의 요청이 발생하면 연결을 해주고 연결 종료 시 pool 에 다시 반 환하여 보관하는 것이다 . DB Connection Pool 매니저가 일정의 Connection 을 연결하고 있다가 요청이 들어오면 Connection 을 할당해주고 없으면 기다리게 한다. 클라이언트는 Connection 을 다 쓰면 다시 반납하는 구조로 이루어진다. 따라서 속도나 p..