본문 바로가기

JSP

(18)
현재 접속자수 표시 #서버의 저장장소 : 4영역 , DB , file- db접속하면 속도확느려짐- file도 느려짐- 4영역중에 application!!! ( session으로하면.....몇가지 문제점이 생김 ) [ex] 기본적인 현재접속자수 증가원리- application을 이용!- 로그인성공시 application의 Attribute의 한곳이 계속 증가 - 로그아웃시 그 한곳이 감소 loginProcess.jsp======================= if(id와 pw일치하면){ if(application.getAttribute("activeCNT")==null) application.setAttribute("activeCNT",1); else{ int ac=(Integer)application.getAttribute..
로그인 화면이동( 화면이동방법 3가지 ) # 로그인( 모듈화 안된거. 그냥 막코딩. 중복 많음. 필요없는 코드 많음 )main.jsp============ TOP Guest님 즐거운 시간!! 총방문자수 : 현재접속자수: 로그인 main페이지 사이트를 이용하려면 로그인을 해주세요... loginForm.jsp================== TOP Guest님 즐거운 시간!! 총방문자수 : 현재접속자수: 로그인 ID PW loginProcess.jsp===================1) 2) 2-1)깔끔히완성 하고나서 loginForm.jsp에 다음과같이추가해줘야함 loginSuccess.jsp================TOP 님 즐거운 시간!!총방문자수 : 현재접속자수: 로그인로그인성공~ #화면이동처리3가지방법(주소바뀜, 데이터전달X) - ..
총 방문자수 찍기 # 총 방문자수찍기먼저 총방문자 수 증가하는법은 DB테이블 생성후 증가하거나 쿠키등을 이용하는방법등여러가지가 있다.먼저 가장 기초적인 방법으로 만들어보자. 프로젝트의 WebContent에서 new -> 폴더 생성 후 그 폴더에서 -> new -> 파일생성폴더명은 cnt 파일명은 cnt.txt cnt.txt=======0 엔터(줄바꿈필수) a.jsp======== 총방문자수 : 하지만 웹브라우저 새로고침할때마다 카운터증가되는문제가있음...이를 해결하기위해 수정해줌( 하지만 이것도 session을이용하기때문에 웹브라우저 완전끄고 다시키면 이전 session이사라지기때문에 카운터증가됨..)a.jsp==========if(session.getAttribute("abc")==null){ // session에 변수..
웹어플리케이션 초기화 파라미터 사용법(application객체) # web.xml에 파라미터 변수를 선언하고 jsp에서 가져와보자 #웹어플리케이션 초기화 파라미터 읽어오기 [ex] application.getInitParameter("aa") 사용법web.xml ( 안에 ) 다음과같이추가해줌======= aa bb cc dd a.jsp========= => bb 출력됨 - 만약 데이터베이스의 아이디와 비밀번호를 a1.jsp부터 a100.jsp전부에서 데이터베이스 사용할경우 만약 아이디가 변경되면 전부다 변경해야함 하지만 이렇게 초기화파라미터로 설정해두고 각 모든 jsp페이지에서 파라미터를 가져다쓴다면 web.xml에 파라미터값만 바꾸면됨 [ex] application.getInitParameterNames() 사용법a.jsp=============== => aa cc..
캐쉬삭제법( 삭제라기보단 캐쉬저장 안하는법 ) [ex] 뒤로눌렀을때 기존값이 사라져야함!( 캐쉬삭제해야함 )a.jsp===== b.jsp===== 뒤로가기 - #은 이동할곳이없다는거- history.back()은 새로고침이아님! 단순히 뒤로가기임! [an]a.jsp에 다음을 추가==================- Expires는 응답결과의만료일을 지정하는것으로 0, 1 등으로 현재시간이전으로 만료일을 지정함으로서 응답결과가 캐시에 저장되지 않도록 하는방법임! - 네이버메인처럼 데이터전달이아닌 화면만 단순히 이동할때에는 캐시사용하는게좋음!
JSP한글전송(인코딩, 디코딩) # 핵심요약 1 .get방식해결을위해 톰캣 server.xml에 URIEncoding="euc-kr" 추가해주고 사용하는 모든 jsp페이지에 charset과 pageEncoding을 같은 값으로 맞춰준다. ( euc-kr로 맞춰도되고 utf-8로 맞춰도 됨. 둘다 한글처리가능 !! )2. post방식해결을위해 파라미터 받는부분앞에(디코딩부분) 젤먼저 아래를 해준다. # 자세히 알아보기 [ex] 파라미터 한글전송- 태그는 URL부분을보면 한글 그대로 인코딩안하고 전송되고( 맨밑에 인코딩해서보내는법 볼것)- 태그에서 action에서는 URL부분에서 한글은 인코딩해서 전송됨- 영문숫자등은 그대로 전송됨 오직 한글만!!!! [ex] 아래 예제는 파라미터 한글 전송이 깨짐!a.jsp====== b.jsp=====..
서블릿의 get, post방식 # 서블릿 톰캣이 만들어준 java파일 # 간단한 서블릿 만들기 - src -> new -> Servlet -> 패키지와 파일명 작성뒤 피니시하면 - WebContent->WEB-INF-> web.xml에 부분이 생성됨(만약 톰캣연동설정시 모듈버전이 3.0이면 이부분 자동생성안될수도있음! ) [ex] 서블릿이되는조건은 - extends HttpServlet의 자손이면됨- import javax.servlet.http.HttpServlet;해야함- HttpServlet은 추상클래스임(객체생성불가) , 메서드는 추상아니라서 그냥쓰면됨 ( 단, 오버라이딩이므로 접근제어자는 좁아질수없음) # 이클립스로 만든 기본 서블릿 jjj.java======================package com.jaeju; im..
JSP기본객체와 영역 속성과 영역을 가진 4개의 기본객체에 대해 알아보자. #JSP 기본객체와 영역 jsp는 총 9가지의 기본객체(request ,response, pageContext, application, session, out, config, page, exception )중 4가지의 영역(scope)을 가지고 있는데 이들 영역은 다음과 같다. application 영역( ex: 히트수 ) - 톰캣이 시작되면 하나만들어지고 톰캣끄면사라짐- 모든 사용자와 관련해서 공유할정보( 현재접속자수, 임시디렉터리경로 ) 와같은 웹어플리케이션의 설정정보를 주로저장 session 영역( ex: 로그인 )- 회원정보같은존재- 웹브라우저가 켜져있는동안에만 유효함( 로그인 )- 웹브라우저가 켜져있고 다시 같은 웹브라우져를 새로 실행하면 유..