본문 바로가기

교육/Servlet&JSP

(9)
[jsp]커스텀 태그 커스텀 태그장점재사용성역할 분담유지 보수성가독성작성 법클래스 기반태그 핸들러 클래스커스텀 태그를 사용할 때 호출되는 자바 클래스 파일실행문을 구현Tag interface 상속JSP 1.2SimpleTagSupport 상속JSP 2.0태그 라이브러리 디스크립터실제 로직이 구현된 클래스파일을 어떤 jsp태그 이름으로 사용할지 설정하는 xml파일.tld확장자를 사용구성 태그taglibtlib-version태그 라이브러리 버전 지정jsp-versionJSP 버전 지정short-nametag library 이름 지정uriJSP페이지에서 TLD파일 연결할때 사용할 이름tagname커스텀 태그의 이름tag-class커스텀 태그와 연결되는 tag handler객체body-content커스텀 태그 body의 conten..
[jsp]EL(Expression Language) ELExpression LanguageJSP2.0에서 추가${}와 같이 사용표현식논리${true}${false}숫자${123}${3.14}문자열${"Java"}${'java'}연산자산술 연산자+, -, *, /, %, mod논리 연산자&&, ||, !, and, or, not비교 연산자==, !=, =, , eq, ne, lt, get, le, geempty 연산자값이 null이나 공백인지 판단${empty "" }true${empty null}true내장객체pageContextpageScopepageContext에 등록된 데이터의 이름과 값을 저장하는 map객체requestScopeHttpServletRequest에 등록된 데이터의 이름과 값을 저장하는 map객체sessionScopeHttpSessio..
[jsp] jdbc 1. JDBC설치oracle dbms설치개요Java DataBase Connectivity관계형 DB에 접속, SQL 수행DBMS서버에 따라 JDBC 드라이버 필요JDBC 인터페이스java.sqlJDBC 드라이버인터페이스를 상속하여 구현한 파일jar파일들구현JDBC 드라이버 로딩Class.forName("oracle.jdbc.driver.OracleDriver");DBMS서버 접속Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","scott","tiger")Statement 객체자바와 DB사이의 데이터를 전달해주는 객체생성Statement stmt = conn.createStatement();SQL실행ex..
[JSP] 태그 1. JSP태그스크립트 기반 태그지시자(directive)객체의 변수 사용법setProperty의 경우 일일이 설정할 필요없이 property값을 "*"(와일드카드)로 주어서 처리 커스텀 태그EL(Expression Language)paramscoperequestsessionapplicationparam.2. 내장 객체requestHttpServletRequestresponseHttpServletResponsesessionHttpSessionapplicationServletContextconfigServletConfigoutJSPWriterpageContextPageContextJSP페이지당 하나씩 자동으로 생성forward()지정된 페이지로 이동getRequest()HTTPServletRequest 반..
[Servlet] 필터,리스너, 에러처리 1. 필터서블릿이 수행되기 전이나 후에 추가기능을 수행할 수 있음대표적으로 로그기록, 한글처리등에 사용구현init()필터 객체가 생성될 때 호출FilterConfig 값을 받아올 수 있음web.xml필터이름풀패키지.class명값이름값위와 같이 설정 후 config.getInitParameter("값이름"); 으로 받아올 수 있음destroy()필터 객체가 삭제될 때 호출doFilter(res,req)필터링 설정한 서블릿을 호출할 때마다 호출chain.doFilter(res,req);꼭 써줘야 함등록web.xml필터이름풀패키지.class명mappingweb.xml필터이름/*위와 같이 하면 전체 *대신에 URI값을 주면 해당 서블릿만 실행filter-mapping순서대로 필터 실행함2. 리스너이벤트가 발생하..
[Servlet]상태정보 유지 1. ServletContext웹 어플리케이션 시작 시 생성웹 어플리케이션 내릴 때 제거웹 어플리케이션 단위init()함수에서 servletconfig.getServletContext()service()함수에서 this.getServletContext()servletContext 변수web.xml에서 선언파라미터 이름파라미터 값 변수 추출sc.getInitParameter("파라미터이름");웹 어플리케이션 단위 정보 공유sc.setAttribute("이름",값);sc.getAttribute("이름");2. HttpSession클라이언트가 처음 접속 시 생성클라이언트가 접속 종료 시 제거Session ID가 삭제될때브라우저가 종료될 때invalidate();호출 시유효시간이 경과되었을 때클라이언트 단위클라..
[Servlet] 중요 파일들 의미와 위치 1. 웹 어플리케이션구조루트 디렉토리WEB-INFlib컴파일된 .jar파일들이 위치classes컴파일된 .classes파일들이 위치web.xml서버가 올라갈 때 실행여러 환경설정을 할 수 있음실행 순서최초 실행 시메모리로딩서블릿 객체 생성ServletConfig 객체 생성init(ServletConfig)최초 실행이 아닐 시HttpServletRequest, HttpServletResponse 객체 생성service(req,res) 실행서버가 내려갈때destroy()실행서블릿 등록 법web.xml이름풀패키지명이름/사용할 이름annotation클래스 위에 @WebServlet("/사용할 이름");요청 방식에 따른 실행doGet(req,res);get방식으로 호출 했을 때doPost(req,res);post..
[Servlet&JSP] 개발 환경 구축 1. JDK설치www.oracle.com/index.htmlJava SEJDK 다운로드환경 변수 설정JAVA_HOME내컴퓨터 오른쪽 클릭 후 설정고급 시스템 설정고급탭->환경변수시스템변수->새로 만들기JAVA_HOME, jdk 경로 입력Path설정시스템 변수의 Path 더블클릭맨 앞에 %JAVA_HOME%\bin; 입력맨 앞에 입력하는 이유path는 맨 앞부터 찾기 때문2. WAS설치톰캣 설치http://tomcat.apache.orgJDK와 맞는 버전 설치3. 이클립스 설치www.eclipse.orgJAVA EE에 맞는 것 다운로드dynamic web project로 생성target runtime다운받은 tomcat 버전 설정톰캣 경로 설정