728x90
반응형
페이지를 이동하는 방식
1.forward
- url이 변경되지 않는다. 데이터는 전송된다.
2.Redirect
- url이 변경되며, 데이터를 전송할 수 없다.
(데이터를 전송하기 위해서는 쿼리스트링만 가능하다)
파일업로드조건
**업로드를 위한 라이브러리를 추가해야 한다.
1. input type="file"이라는 태그가 존재해야 한다.
2. form태그에 method="post"여야 한다.
3. form태그에 enctype="multipart/form-data"속성이 존재해야 한다.
jsp내장객체
//모든 객체는 공통적으로 Attribute를 가지고 있음.
1. pageContext : 현재 한 페이지 내에서의 모든 정보를 가져오거나 설정을 할 수 있는 객체
2. request : 요청을 주는 곳에서 받는 곳까지 살아있으며, 해당 정보를 가져오거나 설정할 수 있는 객체
(다른 객체와는 다르게 Parameter(get/post)의 영역을 가지고 있다)
3. session : 브라우저가 켜져있는 동안(닫기기 전까지) 살아있으며, 해당 정보를 가져오거나 설정을 할 수 있는 객체
4. application : 애플리케이션이 구동되는 동안(서버가 종료되기 전까지) 살아있으며, 해당 애플리케이션에 대한 정보를 가져오거나 설정할 수 있는 객체

 

 

업로드 방식 장점  단점
cos.jar - 파일을 업로드하기가 쉽다. MultipartRequest객체만 생성하면 파일을 바로 업로드할 수 있다.
- 동일한 이름의 파일이 동일한 경로에 존재할 경우 리네임 처리를 쉽게 할 수 있다.
- 여러 개의 파일을 muliple로 업로드 하는 경우 파일명을 각각 떼어오기가 어렵다.
- 존재하지 않는 폴더로 경로를 설정하면 자동 생성되지 않는다.
(단, macos운영체제인 경우는 자동으로 폴더 생성이 됨)
commons-fileupload.jar - 여러 개의 파일을 muliple로 업로드 하는 경우 파일명을 각각 떼어오기가 쉽다
- 존재하지 않는 폴더로 경로를 설정해도 자동으로 폴더를 생성해준다.
- 파일을 업로드하는 로직이 cos.jar보다 복잡하다.
- 동일한 이름의 파일이, 동일한 경로에 존재할 경우 에러가 발생된다.
Part - 여러 개의 파일을 한꺼번에 업로드 처리하기 쉽다
- 동일한 이름의 파일이 동일한 경로에 존재하는 경우 마지막 업로드된 파일로 덮어쓰기가 된다.
- 존재하지 않는 디렉토리인 경우 자동생성되지 않는다.
- 추가해야하는 라이브러리들이 많다.

 

  cos.jar commons-fileupload.jar Part
파일
업로드
쉽다. MultipartRequest객체만 생성하면 파일을 바로 업로드할 수 있다. 로직이 cos.jar보다 복잡하다. 추가해야하는 라이브러리들이 많다.
동일명
동일경로
리네임 처리를 쉽게 할 수 있다. 에러가 발생된다. 마지막 업로드된 파일로 덮어쓰기가 된다.
다중파일
업로드
파일명을 각각 떼어오기가 어렵다. 파일명을 각각 떼어오기가 쉽다 한꺼번에 처리하기 쉽다.
존재하지 않는 폴더로 경로 설정시 자동 생성되지 않는다.
(단, macos운영체제인 경우는 자동으로 폴더 생성이 됨)
자동으로 폴더를 생성해준다. 자동생성되지 않는다.
728x90
반응형

+ Recent posts