
예제 1 ElTest.java package el.test; public class ElTest { private String[] productList = { "test1", "test2", "test3", "test4", "test5" }; private int num1 = 30; private int num2 = 50; public String[] getProductList() { return productList; } public void setProductList(String[] productList) { this.productList = productList; } public int getNum1() { return num1; } public void setNum1(int num1) { this..

EL (Expression Language) : 표현 언어 - 처음에는 JSTL의 부분으로 사용 되었으나 JSP2.0 부터는 기본 스펙에 포함 - 자바 빈즈 속성 값을 보다 쉽고 제약을 덜 받는 방법으로 사용하기 위해 나옴 기본 문법 - 표현 언어네는 "$"로 시작 - 모든 내용은 "{표현식}"과 같이 구성됨 - 표현식에서는 기본적으로 변수명 혹은 속성명, 메소드명 구조로 이루어짐 - 숫자, 문자열, boolean, null 도 올 수 있음 - 연산 가능 구성 요소 1. CORE : 공통 필수 기능 - for, switch 문등 자바 코드를 쓸 수 있게 해줌 2. XML : XML 문서 처리 관련 기능 3. L18N : 국제화 지원 관련 기능 4. SQL : JDBC를 이용한 DB처리 기능 태그 : 출력..

모델1 : JSP 페이지에서 화면을 보여주고 요청을 하게 되면 J네 페이지에서 직접 모델에 접근하여 처리 - 데이터 베이스 연동하는 JSP 페이지를 만들 때 디자인 부분과 데이터 베이스와 연동하는 로직 부분이 모두 같은 페이지에 코딩 모델2 : 디자인 부분과 로직 부분을 나누어서 개발하기 때문에, 디자이너는 디자인 부분만, 프로그래머는 로직 부분만 개발 가능 - 독립적 (디자이너는 JSP페이지, 프로그래머는 JAVA 클래스) MVC : Model, View, Controller - Model : 데이터 베이스와 연동하는 부분등의 로직 부분 - View : 화면 출력 - Controller : 위 두 부분을 적절하게 연결시켜주는 역할 #모델2는 Model과 View를 독립적으로 코디하기 때문에 Contro..

JavaBean - JSP에서 데이터를 JavaBean에 담아서 값을 보여줌 액션 태그 1. - 기본 형태 - id : JSP 페이지에서 자바빈 객체에 접근할 때 사용 - class : 패키지 이름을 포함한 자바빈 클래스 이름 - scope : 범위 2. - 기본 형태 - name : property 값을 바꿀 자바빈 객체 이름 -> 에서 지정한 id값 사용 - property : 값을 지정할 property 이름 - value : property 값 3. - 기본 형태 - name : 에서 지정한 id값 사용 - property : 값을 가져올 property 이름 JavaBean을 이용한 회원가입 login.java - JavaBean package result; public class Login {..

Action Tag - 스크립트 언어를 사용하지 않고 다른 페이지의 서블릿이나 자바빈의 객체에 접근할 수 있도록 태그를 이용해 구현된 기능 - 보이는 부분과 처리 부분을 별도로 분리 목적 - 반복되는 사이트를 만들 때 예제 top.jsp Login | Join bottom.jsp Since 2018 left.jsp 신상품 인기상품 newitem.jsp 신상품 목록입니다 bestitem.jsp 인기상품 목록입니다 template.jsp 실행 결과 첫 화면을 신상품으로 설정 왼쪽에 [인기상품]을 누르면 내용이 바뀌는것을 볼 수가 있다

1. login - 로그인 화면 - 비밀번호 입력은 없으며 사용자 이름을 입력하는 양식만 제공 - 아이디를 입력하지 않을 경우 예외처리 2. setProduct - 상품 선택화면 - 리스트에서 원하는 상품을 선택하고 추가 버튼을 눌러서 상품을 추가 3. add - setProduct에서 선택한 상품을 세션에 넣음 - 선택된 데이터를 모두 저장해야하므로 ArrayList 사용 - 상품이 추가되었다는 메시지를 보여주고 다시 setProduct로 돌아감 4. checkOut - 세션이 살아 있고, 하나 이상의 상품을 선택한 상태면, 목록을 보여줌 - 상품 목록이 없을 경우 예외처리 - 로그아웃시, 모든 데이터 삭제 login.jsp Login 아이디 setProduct.jsp 상품 선택 님이 로그인 한 상태 ..

sendRedirect( ) : 페이지 이동 방법 중 하나 1. GET - 내가 친 내용이 보임 - 보안성 없음 2. POST - 내가 친 내용이 보이지 않음 -> null로 떠야 정상 로그인 예제 login.jsp GET 아이디 비밀번호 POST 아이디 비밀번호 1. GET result_get.jsp end_get.jsp SHOW 아이디 비밀번호 2. POST result_post.jsp end_post.jsp SHOW 아이디 비밀번호 실행 결과 1. GET 2.POST

Attribute (속성) : 공유되는 데이터 Scope (영역) : 속성을 공유할 수 있는 유효 범위 속성 처리 메소드 메소드 리턴 타입 설명 setAttribute(String name, Object Value) void 이름이 name인 속성 값을 value로 지정 getAttribute(String name) Object 이름이 name인 속성의 값을 구함 #지정한 이름이 속성에 존재하지 않으면 null리턴 removeAttribute(String name) void 이름이 name인 속성을 삭제 getAttributeNames( ) Enumeration 속성의 이름 목록을 구함 #page에서는 메소드 제공 안함 영역 1. PAGE - 하나의 JSP 페이지를 처리 -> 현재 페이지까지 - 한 번의..

오류 예외처리 주요 응답 상태 코드 - 200 : 요청을 정상적으로 처리 - 307 : 임시로 페이지를 리다이렉트함 - 400 : 클라이언트 요청이 잘못된 구문으로 구성 - 401 : 접근을 허용하지 않음 - 404 : 요청한 URL을 처리하기 위한 자원이 존재하지 않음 - 405 : 요청한 메소드를 허용하지 않음 - 500 : 서버 내부 에러가 발생 ex) JSP에서 익셉션 발생 - 503 : 서버가 일시적으로 서비스를 제공할 수 없음 에러 페이지 지정방법 1. error-code 404 /404.jsp 2. error-type java.lang.NullPointerException /404.jsp 설정 방법 1. 예외가 발생 했을 시, 실행되는 프로젝트 생성 파일 이름 작성 후 [Next >] 클릭 ..

web.xml Welcome to Tomcat Welcome to Tomcat Calculator Calculator Calculator /calc Calculator.jsp 계산기 + - * / Calculator.java import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /..