IT 개발노트

자바빈(JavaBean)이란? 본문

기초튼튼/JAVA

자바빈(JavaBean)이란?

limsungju 2019. 4. 19. 14:47

자바빈(JavaBean)이란?

일반적인 웹 사이트는 디자이너와 프로그래머가 협력하여 개발한다. 그런데 프로그래머가 JSP페이지에 자바코드를 입력했을때 디자이너 입장에서는 해석하기 어려워지고 효율또한 매우 떨어지게 된다. 이런 비효율적인 부분을 지원하기위해 제공되는 기능의 형태가 자바빈이다. 자바빈은 JSP페이지의 디자인 부분과 로직부분을 나눔으로써 복잡한 자바코드를 줄이고 프로그램의 재사용성을 증가시킨다.

자바빈의 설계 규약

자바빈을 작성하기 위해서는 설계규약을 따라야 한다. 만약 설계규약과 맞지 않는 경우 자바빈의 특성을 갖지않는 클래스가 되어버릴 수 있다.
1. 멤버변수마다 별도의 get/set 메소드는 존재해야 한다.
2. get 메소드는 매개변수가 존재하지 않아야한다.
3. set 메소드는 반드시 하나 이상의 매개변수가 존재해야 한다.
4. 생성자는 매개변수가 존재하지 않아야 한다.
5. 멤버변수의 접근제어자는 private이고 각 set/get메소드의 접근제어자는 public, 클래스의 접근제어자는 public으로 정의한다.

자바빈 사용하기
1.<jsp:useBean/>태그

자바빈 객체를 생성하기 위한 코드이고 태그 속성은 다음과 같다.

<jsp:useBean id="빈 이름" class="자바빈 클래스 명" scope="사용범위"/>

id는 JSP페이지에서 자바빈 객체의 변수명, class는 자바빈에 사용할 클래스명(클래스가 패키지 안에 있다면 패키지 경로까지 적어주어야 한다.) scope는 자바빈의 사용범위를 뜻하며 request, page, session, application 4종류가 존재한다. 디폴트 값은 page로 설정된다.

2.<jsp:setProperty/>태그

자바빈 클래스의 속성 값을 설정하기 위한 태그이고 속성은 다음과 같다.

<jsp:setProperty name="빈 이름" property="속성명" value="설정할 값"/>
<jsp:setProperty name="빈 이름" property="속성명" value="파라미터명"/>
외부 링크로 첨부된 음악, 동영상은 재생이 지원되지 않는다.

name은 선언된 자바빈 객체의 id, property는 객체내의 속성명, value는 속성에 넣을 값을 의미한다. 여기서 클라이언트에서 전송되어오는 파라미터 값을 속성값으로 할당 하고 싶다면 value 속성대신 param속성을 이용하면된다. 그런데 여기서 자바빈으로 사용되는 클래스의 속성들은 설계규약에 의하여 private으로 설정되는데 <jsp:Property/> 태그로 접근이 가능한 이유는 변수에 직접적인 접근이 아닌 set 메소드를 호출하여 접근하게 되는 것이다.

3.<jsp:getProperty/>태그

자바빈 클래스의 속성값을 가져오기 위한 태그이고 속성은 다음과 같다.

<jsp:getProperty name="빈 이름" property="속성명"/>

name은 값을 가져올 빈의 id, property는 가져올 속성의 이름이다.

 

'기초튼튼 > JAVA' 카테고리의 다른 글

해싱, 해시함수, 해시테이블  (0) 2019.05.03
트리, 이진트리  (0) 2019.04.24
소켓을 이용하여 채팅 프로그램 만들기  (0) 2019.03.22
javafx  (0) 2019.03.05
TIME 예제(현재시간부터 일정 시간표시하기)  (0) 2019.02.19