빈즈 (Beans)
빈즈는 특정한 일을 독립적으로 수행하는 컴포넌트를 의미한다. 컴포넌트란 다른 무언가를 만들기 위한 부품을 말한다.
컴포넌트는 각각 독립적인 기능이 있으며, 컴포넌트 조합을 통해 다양한 형태의 결과물을 만들 수 있다. 또한 각각의 모듈을 서로 조합하려면 규격화된 인터페이스가 있어야 한다.
JSP 빈즈
JSP 빈즈는 JSP와 연동하려고 만들어진 컴포넌트 클래스를 말한다. JSP 빈즈는 컨테이너 위치하며, JSP에 데이터베이스 연동 등 프로그램적 요소를 모듈화할 수 있도록 도와준다. 데이터 처리와 공용화된 기능을 제공하기 때문에 빈즈를 잘 활용하면 프로그램의 중복을 줄이고 더욱 원활하게 유지, 보수할 수 있다.
엔터프라이즈 자바 빈즈 (EJB)
EJB는 애플리케이션에서 비즈니스 로직을 구현하려는 컴포넌트 모델이다.
빈즈 연동
빈즈도 자바 클래스이기 때문에 JSP 파일의 스크립트릿 부분에서 인스턴스를 만들어 사용할 수 있지만 일반 클래스와 다를 바 없다면 굳이 빈즈라는 이름을 붙일 필요가 없을 것이다. 빈즈는 일반 클래스처럼 사용할 수 있지만, JSP 빈즈만의 특징적인 요소를 잘 활용하면 더욱 편하게 프로그램을 작성할 수 있다.
일반적으로 빈즈를 사용할 경우, 사용자 입력 처리에 필요한 HTML이나 JSP와 폼의 액션에 연결된 JSP 파일이 있어야 한다. 또한 폼을 처리하는 JSP 파일에서 참조할 빈즈 클래스도 필요하다.
HTML 폼에서 입력된 데이터는 JSP로 전달되고, JSP는 다시 빈즈로 전달한다. 빈즈는 실질적인 데이터베이스 처리 등을 수행하고 그 결과를 JSP에 전달한다.
1. 사용자 입력을 받기 위한 HTML 폼 입력값은 각각의 form 요소의 name 속성 값(value)을 통해 a.jsp로 전달한다.
2. a.jsp는 useBean 액션을 이용해서 빈즈 클래스를 불러오고 setProperty를 통해 폼으로부터 전달받은 값을 빈즈 클래스의 멤버 변수의 값으로 전달한다.
3. 이때 빈즈 클래스의 setter 메서드들이 자동으로 호출된다.
4. 빈즈 클래스 값을 참조하려면 getter 메서드를 사용한다.
5. 결과를 보여주기 위한 b.jsp에서는 a.jsp와 마찬가지로 useBean 액션을 이용해서 빈즈 클래스를 참조하고 getProperty를 이용해서 멤버 변수 값을 출력한다.
'BE > JSP' 카테고리의 다른 글
이클립스와 MySQL 연동 (0) | 2022.02.10 |
---|---|
JDBC (0) | 2022.02.09 |
서블릿 (0) | 2022.02.04 |
JSP 처리 과정과 MVC 패턴 (0) | 2022.01.30 |
웹 프로그래밍에 대한 이해 (0) | 2022.01.29 |