Java
-
InterceptorJava/Spring 2018. 8. 24. 16:29
/board 이하의 모든 URL들에 대해 인증된 회원만 접근하고자할때, Filter 기능을 사용해서 Session 인증 처리를 할수 있지만, Spring Bean 주입 받을 필요가 있을 경우 Interceptor를 이용한다. Adapter에서 Controller로 보낼때, -> preHandleController에서 Adapter로 받을 때 -> PostHandleJSP가 Return되려 할때 -> AfterComplet 주로 Interceptor는 preHandle에서 쓰인다. -> Session검증, 정보 검증 Interceptor는 bool 로 되있다. return 값이 true면 진행하고 false면 진행하지 않는다. 일종의 검문소와 같다고 볼 수 있다. SessionInterceptor라는 Ha..
-
bean config 설정 분리Java/Spring 2018. 8. 24. 16:05
applicationContext에 Data가 늘어날수록 파일이 무거워지기 때문에 Bean Config 설정을 분리한다. Bean들을 한 곳에 정의하고 Listener를 통해 모두 Loading한다. web.xml에서 ContextLoaderListener를 추가한다. contextConfigLocation /WEB-INF/spring/*Context.xml org.springframework.web.context.ContextLoaderListener /WEB-INF/spring/*Context.xml 이미 Load된 Bean Container에 적재 된 Bean은 제외한다. applicationContext.xml에서는 URL관련 설정을 작성한다. ( HandlerMapping, HandlerAdap..
-
Application 예외 처리Java/Spring 2018. 8. 24. 15:53
웹 페이지를 이용하다보면 Page Error 404, 505등 페이지 에러가 나타난다. 해당 에러 페이지에는 민감한 정보가 그대로 노출되기때문에 예외처리를 통해 페이지를 구성해야 한다. view 폴더 아래 errors 폴더를 만들고 jsp파일을 만든다. DOCTYPE html>404 Not Found 페이지를 찾을 수 없습니다. 홈으로 돌아가기 500.jsp DOCTYPE html>500 Not Found 일시적 오류로 인해 페이지를 표시할 수 없습니다. 잠시 후 다시 시도해 주세요. 이 페이지가 계속 보인다면, 사이트 관리자에게 문의해 주세요. 고객센터 바로가기 홈으로 돌아가기 상황별 예외 처리를 위해 web.xml에서 throwExceptionIfNoHandlerFound param을 추가한다. sp..
-
File - Upload / DownloadJava/Spring 2018. 8. 23. 17:53
pom.xml에서 파일 업로드에 필요한 Dependency를 추가한다. commons-fileupload commons-fileupload 1.3.3 applicationContext.xml에서 파일 업로드 설정을 한다. 100MB가 최대 용량이다. * Form 객체를 Command Object라고 부른다. 파일업로드를 사용하기 위해 write.jsp의 form 태그에 enctype="multipart/form-data"를 입력한다. Spring Framework에서는 File을 MultipartFile 객체로 전달 받는다. * Servlet / Jsp 에서는 Upload가 불가능하다. -> Java File Transfer가 없기 때문이다. Commons-fileupload는 file을 byte단위로 ..
-
SessionJava/Spring 2018. 8. 23. 17:41
Session의 단점 1. 사용자가 많으면 메모리가 많이 필요하다.2. 보안 취약 -> Session ID를 계속 바꿔야한다. -> Session 하이재킹에 위협이 있다.3. 분리되있는 서버에서는 Session이 공유가 안된다. Server에 VO정보를 전달한다. -> Session ID 브라우저 Cookie에 Session ID를 저장하고, 서버가 닫히면 삭제 된다. 재요청시 이전에 사용했던 SessionID를 브라우저 쿠키에서 가져온다. Spring Controller는 필요한 객체들을 파라미터를 통해 직접 제공받을 수 있다. Session 처리를 위해 HttpSession 객체가 필요할 경우 파라미터를 통해 주입 받는다. DispatcherServlet이 필요한 Argument 자리에 Paramet..
-
Spring - JSTLJava/Spring 2018. 8. 22. 17:49
JSP의 EL과 함께 사용 된다. 반복 / 조건 / 데이터 포맷의 기능을 구현 해놓은 라이브러리다. jstl, standard의 Dependency를 추가한다. jstl jstl 1.2 taglibs standard 1.1.2 // JSTL에서 사용 가능한 코어 라이브러리 실습예제 applicationContext.xml에서 사용할 Query를 value Tag에 만든다. INSERT INTO SPRING.BOARD ( ID , SUBJECT , CONTENT , EMAIL , CRT_DT , MDFY_DT , FILE_NAME , ORIGIN_FILE_NAME ) VALUES ( BOARD_ID_SEQ.NEXTVAL , ? , ? , ? , SYSDATE , SYSDATE , ? , ? ) SELECT..
-
Spring - JDBCJava/Spring 2018. 8. 21. 15:34
pom.xml에 commons-dbcp, spring-jdbc Dependency를추가한다. ojdbc6.jar파일을 C드라이브에 옮긴 후프로젝트 우클릭 -> Run -> Maven Build... -> Goals에 install:install-file -Dfile=C:\ojdbc6.jar -DgroupId=ojdbc -DartifactId=ojdbc -Dversion=6 -Dpackaging=jar 를 입력하고 Apply, Run시킨다. Build후 GroupID를 ojdbc, ArtifactID를 ojdbc, version을 6을주고 dependency를 pom.xml에 만들어준다. 이후 VO를 만들고 Getter,Setter 추가, DaoImpl의 Argument를 수정한다 SQL의 jdbc dri..
-
Eclipse Error - An error occurred while filtering resources Maven Java EE Configuration ProblemJava/Spring 2018. 8. 21. 15:12
DescriptionResourcePathLocationTypeAn error occurred while filtering resourcesProject-Nameline 1Maven Java EE Configuration Problem Alt + F5로 Maven Update를 진행하면 Error가 해결된다.또는 프로젝트 우클릭 -> Maven -> Update Project도 가능하다.