tip) .. .. 설문지 만들때 쿠키를 길게 만들어서 그걸 배포 한다.
_______________________________________________________________

cookie = 사용자가 정보를 가지고 다니는것
session = 서버가 사용자 정보를 가지고 있느것.

(session cookie) : 고유한 식별자 쿠키 = 서버에서 자동발행

쿠키는 한 도메인당 20 개 정도의 제한이있다.

쿠키 발행 ..
 String ckName = "ck1";
 String ckValue = "10";
 
 Cookie ck = new Cookie(ckName,ckValue);
 ck.setAgeMax(60); 쿠키의 살아있는 최대한의 시간을 지정..
쿠키는 이름과 값과 있으면 찍어내는거 가능
쿠키의 기본 생명주기는 30 분 정도이다.


 

 보안     유용성  범위
쿠키   취약    문자열만 도메인관련
 암호화 필요   갯수제한 같은도메인에소속된서버일때 ok


세션  세션ID의보안   객체  물리적으로 다른 서버에
 서버에서 데이터 보관  무한~  연결시 추가 작업 필요


session.setMaxInactiveInterval(30); //세션 연결 의 시간을 지정..
접속후 setMaxInactiveInterval시간동안 아무 동작도 하지 않으면 세션을 버린다.

web.xml
 addChild message-destination-welcome-file-list
  session-config
   add - child

    session-timeout
<session-config>
   <session-timeout>1</session-timeout>
</session-config>        |-> 여기를 지정.. 시간은 분 단뒤

http://www.servlets.com/cos/   --> 서블릿 .. 홈페이지.

enctype = "multipart/form-data" => 태그를 주면 사용자의 pc에서 올린

//멀티 타입으로 설정했을때는 . request. 사용 불능. .    

 MultipartRequest mr = new MultipartRequest(request,savePath,max,"EUC-KR", new DefaultFileRenamePolicy());
      // 요청, 파일저장될위치, 파일 최대길이, 인코딩,  중복 불가능하게 하는메소드 
 System.out.println("file1 : "+ mr.getParameter("file1"));
 
 File file1 = mr.getFile("file1");
 System.out.println("file1 :" + file1.getName());
 System.out.println("original : "+request.getParameter("title"));
 System.out.println("mr : "+ mr.getParameter("title"));

 


base64인코딩
<form action="pdsInputAction.jsp" method ="post" enctype = "multipart/form-data">
  <h2>파일등록</h2>
 
   <tr>
    <td>첨부파일1</td>
    <td><input type = "file" name = "file1"></td>
   </tr>

 

자료실 두번째..

http://commons.apache.org/fileupload/
파일 업로드에 필요한 파일 다운로드

http://commons.apache.org/io/
io압축파일 다운로드

  cos     apache파일업로드
차이점  잘못된 파일 그냥 업로드  파일을 temp에 보관했다가 파일 업로드 결정시 저장 

 

common 저장
 중요 .. ******************************
 DiskFileItemFactory factory = new DiskFileItemFactory(); 임시 파일저장소
 factory.setSizeThreshold(1024*1024*2); 크기 지정
 factory.setRepository(new File("c:\\zzz")); 2메가 이상이 저장되면 .. 여기에 저장한다.
첨부파일 처리원칙
1. 절대 웹상의 경로에 링크로 처리하지 않는다.
 - 웹에서 보이지 않는 경로에 처리 (-> WEB-INF에 처리
2. 덮어쓰는 상황발생미리 조치  - 시간에 의한 처리 . (유니크한 값으로 .. 밀리까지지원하는 시간으로처리)
3. os의 처리 상황고려
4. 속도 고려  - 첨부 파일을 db로 처리시
5. 보안 고려 (로그인) - 다운로드

 

request

response

out 표현식 대신 사용 <%= %>


컨텍스트 - > ServletContext
 1) 공통상수처리 - > web.xml context_param 태그를 이용해서 설정
    ex <%=application.getInitParameter("path")%>
 2) 리스너(컨텍스트)처리

 3) 현재 실행되는 경로를 파악 가능
   ex) application.getRealPath("");
   하드디스크상의 경로 출력가능

 4) 객체를 모든 컨텍스트에서 사용가능하게 만든다.
     - 컨텍스트 객체에 자바 객체를 하나 셋팅
     - 객체를 하나만 만들어서 여러객체가 돌아가면서 사용(객체 재사용)
   ex) application.getAttribute 객체를 꺼내서 사용
 

+ Recent posts