import java.io.IOException;import java.io.PrintWriter;import javax.servlet.GenericServlet;import javax.servlet.ServletException;import javax.servlet.S
멀티스레드 방식 -> 웹방식 = 편리하니까컴파일 방식 : 속도가 빠르다 하지만 로직이 변경되면 서비스하고 있던 것을 중지하고 다시 올려야하는 단점이 있다.인터프리터 : 스크립트로 된 파일로, 스크립트가 읽어서 한줄씩 실행하므로 중간에 변경해도 서비스를 중단할 필요가 없
web에서는 build path 하지 않아도 lib에 파일을 그냥 넣어주면 된다.출력결과: generic servlet 으로 상속받은 service()는 get/post 상관하지않고 다 받는다. 그러나 때로는 구분해서 처리하고 싶을 때가 있다. 메서드 단위로 분리해서
모든 서블릿에서 공유가 가능하도록 xml파일 수정 web.xmlcontext를 받도록 java 코드를 수정하였다.
controller : 어디에 줄 지 결정
Error.jspHeader.jspTail.jspMemberList.jsp결과mysql 서버를 종료 하여 일부러 에러를 발생시켜보았다.error.jspMemberList.jsp : catch 부분 변경 결과
servletContext : 톰캣이 동작을 실행하는 순간 공간이 생성되고 종료되기 전까지 계속 저장하기때문에 가장 수명이 길다.HttpSession: 브라우저 - 서버 연결. 브라우저를 켜놓고 작업하면 그동안 존재. 너무 오랫동안 반응이 없으면 session을
:훨씬 더 단순한 표현이 가능하다.적용하지만 el에서는 for문과같은 반복문은 표현할 수 없다.
JSTL jstl 문법을 사용하기 위해 라이브러리를 추가했다.
: 데이터에 접근하는 객체를 다음과 같이 따로 만들 수 있다MemberDao.javaMemberListServlet
connection 객체를 서블릿마다 실행하는 것이 아니라 멤버 dao 객체로 만들어서 공유하도록 하는 것이 나을 것 같다 AppInitServelt을 사용하지 않고 Listener를 사용하도록 수정 web.xml ContextLoaderListener
: 같은 커넥션을 이용하는 DAO들의 작업에 영향을 준다.하나의 connection 객체(contextListener)를 공유하면 예외발생시 문제의 소지가 있다.하나에서 rollback 했는데 다른 dao들에게까지 영향을 미칠 수 있다.해결책은 무엇일까?\-> 쓸 때마
라이브러리를 이용하기 위해 lib폴더에 추가하였다.
우리가 직접 data source 라이브러리를 가져와서 만드는 것이 아니라 톰캣에게 맡길 수 있다.우리가 객체를 만들어주지 않아도 알아서 객체가 할당되고 해지되는 것을 처리한다.servers/context.xmlweb.xml코드 추가 ContextLoaderListen
controller : 모든 서블릿이 하는 일이 있고, 특정 대상만 하는 일이 있다? 그래서 controller를 두개로 나누었다. 프론트 컨트롤러 -> servlet으로 만들고 뒤의 컨트롤러 -> java로 만든다.
페이지 컨트롤러에서 servlet 제거하기 (종속 끊기)req, resp, session 등을 이용하지 않는다
객체를 만들어야하는 update, add, login, delete 컨트롤러 코드수정DataBinding interfaceMemberAddControllerLogInControllerMemberUpdateControllerMemberDeleteControllerif 문
component annotation: controller의 객체를 만들면서 dispatcher컨트롤러에 주소를 전달 applicaton-context.properties : 객체를 생성하는 것은 annotation으로 만들 것이기 때문에 주석처리
library 추가, temp와 upload폴더, MultipartTest.html생성 MultipartTest.htmlFileUploadServlet파일은 eclipse 안의 upload 폴더가 아니라 tomcat 안의 폴더에 올라가는 것이다./Users/jenna/