Programming/Java, Spring

[JAVA / JSP] 자바 빈즈(Java Beans)란? / 빈즈(Beans)의 장점 / 빈즈(Beans) 클래스 구조

Juun 2022. 5. 15. 16:21
반응형

JSP 빈즈란??

JSP와 연동하기 위해 만들어진 자바 컴포넌트 클래스

  • 컨테이너에 위치
  • JSP에 DB 연동 등 프로그램적 요소를 모듈화 할 수 있도록 도와줌
  • 데이터 처리와 공용화된 기능 제공
  • 프로그램 중복을 줄이고 월활한 유지보수 가능

※ JSP코드 내에 스크립트릿를 이용해서 자바 소스코드를 직접 포함할 수 있지만

그런 방법 보다는 별도의 빈즈를 만들어 사용하는 것이 모듈화 측면에서 바람직하다!

 

 

* 컴포넌트(component)

1. 특정 작업인 비지니스 로직을 독립적으로 수행하는 하나의 프로그램 단위

2. 규격화된 인터페이스를 가지며, 조합을 통해 다양한 결과물을 쉽게 만들어 낼 수 있음

 

* JSP (Java Server Page)

간단하게 설명하면 HTML 안에 자바 코드가 있는 것!


JSP 빈즈 사용의 장점

1. JSP 페이지가 복잡한 자바 코드로 구성되는 것을 피할 수 있음

→ JSP 페이지에 HTML 코드와 쉽고 간단한 자바 코드만을 구성

 

2. 한 번 작성된 자바 빈즈를 여러 응용 프로그램에서 재사용 가능

→프로그램 개발 기간 단축 가능

 

※ 복잡한 처리를 담당하는 자바 코드는 빈즈 클래스로  jSP페이지에서 별도로 분리하고

JSP 페이지 내에는 간단한 자바 코드만 작성해서 유지보수 할 수 있도록 하자


일반적인 JSP 구현에서의 빈즈

출처 유튜브 사람만이

JSP에서 필요에 따라 빈즈 클래스를 선언하고 불러와 사용가능


MVC 패턴을 적용한 경우에서의 빈즈 사용

출처 유튜브 사람만이

컨트롤러에서 빈즈와의 연동, JSP 내장 객체의 속성 관리 기능을 이용해 뷰에 빈즈 객체를 전달


빈즈 클래스의 구조

  • 자바 클래스의 구성을 따르나 JSP액션과 연동하기 위해 다음과 같은 필수 구성 요소를 가짐
  1. 인자 없는 생성자를 제공해야함
  2. 멤버 변수는 private 영역에 두어 외부 접근을 막음
  3. JSP 액션과의 연동을 위해 access 메서드 제공해야 함
  • 접근이 필요한 멤버에 한해 정의
  • getXXX(), setXXX()

get: 멤버변수의 값을 가져와라!! 반환 받을 수 있는  메서드 형태

set : 설정하고자 하는 멤버 변수의 자료형과 유사한 매개변수의 인자를 갖거나 boolean 반환타입을 가지고 있는 함수

※ 현재 객체에 새로운 멤버변수 값을 설정하거나 기존에 설정되어 있는 값을 얻어올때 getter 와 setter와 같은 함수를 사용

반응형