728x90
- JSP는 HTML내에 JAVA코드를 넣어 동적인 페이지를 생성하는 스크립트 언어이다.
- JSP 자바 빈즈는 JSP의 표준 액션 태그로 접근할 수 있는 자바 클래스로서
값을 가지는 속성(멤버변수)와 값을 설정하는 메소드(setter), 값을 추출하는 메소드(getter)로 이루어져있다. - <jsp:useBean>
<jsp:setProperty>
<jsp:getProperty>
JSP 자바빈즈 개발 규약
- 패키지화
- JSP 페이지에서 자바빈즈를 사용할 때 기본 패키지에 있으면 인식이 안된다.
- 반드시 패키지화 되어 있어야 한다
- 기본 생성자 존재
- 자바빈즈의 객체 생성은 jsp:useBean 액션 태그로 생성하는데, 객체가 생성될 때 기본 생성자를 이용하기 때문에 반드시 기본 생성자가 있어야 한다.
- 멤버변수의 접근자는 private으로 선언
- 자바빈즈 객체의 속성 값은 외부에서 직접 접근할 수 없도록 private으로 선언한다.
- 자바빈즈 객체의 속성값은 메소드로만 접근하게 해야 한다.
- getter / setter 메소드
- private로 선언한 멤버 변수의 값을 반환하는 메소드를 작성한다.
- getter setter접근자는 public으로 선언
- public으로 선언해야 JSP페이지에서 이 메소드를 호출할 수 있다.
package job.study.beans;
public class HelloBean {
private String name;
private String number;
public HelloBean() {
this.name = "이름이 없습니다.";
this.number = "번호가 없습니다.";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
}
// 자바 코드
HelloBean hello = new HelloBean();
//표준 액션 태그
<jsp:useBean class="job.study.bean.HelloBean" id="hello">
- id속성
- 주어진 페이지에서 자바빈즈 객체를 식별할 수 있는 유일한 명칭을 지정할 때 사용
이 id 속성의 값을 가지고와 각각의 객체를 구분
id속성 값 지정 규칙 : 유일성 / 대소문자를 구분 / 영문자, 숫자, 언더바 문자로 시작
- 주어진 페이지에서 자바빈즈 객체를 식별할 수 있는 유일한 명칭을 지정할 때 사용
- class속성
- 사용하려는 자바빈즈 객체의 실제 클래스명을 패키지명과 함께 지정
- type 속성
- 자바빈즈 클래스의 객체에 접근할 때 어떤 타입으로 접근할 것인지 지정
특별히 부모 type으로 접근하게 하려면 type속성을 사용하여 부모 타입으로 지정
- 자바빈즈 클래스의 객체에 접근할 때 어떤 타입으로 접근할 것인지 지정
- scope 속성
- page : 하나의 JSP페이지에서만 사용(기본값)
- request : 요청이 처리되는 동안 forward, include 된 페이지 간에 사용
- session : 클라이언트 단위로 사용
- application : 웹 어플리케이션 단위로 사용
getter 메소드 호출
//자바 코드
hello.getName();
//표준 액션 태그
<jsp:getProperty property="name" name="hello">
- name 속성 : 사용하려는 자바빈의 <jsp:useBean> 태그에서 정의해 놓은 id 속성값과 동일하게 지정
- property 속성 : property속성에는 값을 추출하려는 자바빈즈 객체의 멤버변수 이름을 지정
setter 메소드 호출
//자바 코드
hello.setName("codegizer");
//표준 액션 태그
<jsp:setProperty property="name" name="hello" value="codegizer">
//자바 코드
hello.setName(request.getParameter("irum"));
//표준 액션 태그
<jsp:setProperty property="name" name="hello" param="irum">
- name : 사용하려는 자바빈의 <jsp:useBean> 태그에서 정의해 놓은 id속성 값과 동일하게 지정한다.
- property : property속성에는 값을 수정하려는 자바빈즈 객체의 멤버변수 이름을 지정한다.
- value 속성 : 자바빈즈 객체의 속성을 변경하려는 값을 지정
- param 속성 : 질의 문자열에서 param속성에 할당된 값과 같은 name의 값으로 자바빈의 속성값을 설정한다.
//표준 액션 태그
<jsp:setProperty property="*" name="hello">
//자바 코드
hello.setName(request.getParameter("name"));
hello.setNumber(request.getParameter("number"));
- property = "*"
- 자바빈 객체의 속성값들을 초기화하는 매우 강력한 방법이다.
클라이언트로부터 입력받은 질의 문자열을 추출하여 자바빈즈 객체에 바인딩하는 데 편리하다.
- 자바빈 객체의 속성값들을 초기화하는 매우 강력한 방법이다.
728x90
'JSP' 카테고리의 다른 글
JSTL 5가지 태그 (0) | 2023.03.17 |
---|---|
표현언어 EL (0) | 2023.03.17 |
액션 태그 (0) | 2023.03.17 |
커넥션 풀 (0) | 2023.03.17 |
JSP 파일 업로드 (0) | 2023.03.17 |
댓글