Rylah's Study & Daily Life
10. Java Bean 본문
1. JavaBean
- JSP 페이지의 로직 부분을 분리해서 코드를 재사용함으로써 프로그램의 효율을 높이는 것이 목적
- 모듈(Module)화가 대세인 현 프로그래밍에서 한 번 잘 작성한 코드를 재사용하면서 작성 기간이 단축되고, 이미 실사용중인 코드를 사용하므로 코드의 안정성이 보장되어 유지보수에도 좋다.
- 자바빈은 자바로 작성되어진 컴포넌트들을 일반적으로 일컫는 말로, 자바는 프로그램 기본 단위가 클래스이고, 자바빈은 클래스들로 이루어진 복합적인 구조이다.
2. JavaBean 만들기 : JavaBean Class
a. JavaBean Class
- Declaration
| 1 | public class DbDataLogin{ } | cs | 
b. Setter, Getter
- Declaration
| 1 2 3 | public void setId(String id) {     this.id = id.trim(); } | cs | 
| 1 2 3 | public String getId() {     return this.id; } | cs | 
3. JavaBean, useBean, Action Tag(jsp:useBean)
- 객체 생성
| 1 | <jsp:useBean id="beanName" class="javaBeanClassName" scope="area" /> | cs | 
- Set Property Value
| 1 | <jsp:setProperty name="beanName" property="propertyName" value="propertyValue" /> | cs | 
- Get Property Value
| 1 | <jsp:getProperty name="beanName" property="propertyName" /> | cs | 
1. 자바빈은 JSP에서 어떤 목적으로 사용되는가?
2. 다음 조건에서 주어진 대로 자바빈을 작성하시오.
| 자바빈의 접근 제어자는 public으로 선언하고 클래스명은 ExBean으로 지정한다. ExBean 클래스는 ex.ch10 패키지에 속한다. ExBean 클래스는 접근제어자를 private를 갖는 3개의 프로퍼티를 가지고 있다. - String 타입의 id 프로퍼티 - String 타입은 passwd 프로퍼티 - int 타입의 number 프로퍼티 | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | package ex.ch10; public class ExBean {     private String id;     private String passwd;     private int number;     public String getId() {         return id;     }     public void setId(String id) {         this.id = id;     }     public String getPasswd() {         return passwd;     }     public void setPasswd(String passwd) {         this.passwd = passwd;     }     public int getNumber() {         return number;     }     public void setNumber(int number) {         this.number = number;     } } | cs | 
3. 아이디, 패스워드 좋아하는 숫자를 입력받아 자바빈을 사용해서 프로퍼티 값을 저장하고 저장한 값을 화면에 표시하기 위한 프로그램이다.
problem10_03Form.jsp, problem10_03Pro.jsp가 주어진다. 자바빈은 ExBean.java를 사용한다.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <%@ page language="java" contentType="text/html; charset=UTF-8"     pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Problem 10-03 Form</title> </head> <body>     <h2>좋아하는 숫자를 입력하세요</h2>     <form method="post" action="problem10_03Pro.jsp">         아이디 : <input type="text" name="id"> <br>         패스워드 : <input type="password" name="passwd"> <br>         좋아하는 숫자 : <input type="text" name="number"> <br>         <input type="submit" value="입력완료">     </form> </body> </html> | cs | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <%@ page language="java" contentType="text/html; charset=UTF-8"     pageEncoding="UTF-8"%> <% request.setCharacterEncoding("UTF-8"); %> <jsp:useBean id="ExBean" class="ex.ch10.ExBean">     <jsp:setProperty name="ExBean" property="id"/>     <jsp:setProperty name="ExBean" property="passwd"/>     <jsp:setProperty name="ExBean" property="number"/> </jsp:useBean> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>problem10_03Pro.jsp</title> </head> <body>     <h2>입력 받은 정보 표시</h2>     아이디 : <jsp:getProperty name="ExBean" property="id"/><br>     패스워드 : <jsp:getProperty name="ExBean" property="passwd"/><br>     좋아하는 숫자 : <jsp:getProperty name="ExBean" property="number"/><br> </body> </html> | cs | 


'Web Study > JSP' 카테고리의 다른 글
| 11. JSP, DataBase (2) - Basic Query (0) | 2022.03.20 | 
|---|---|
| 11. JSP, DataBase (1) - MySQL (0) | 2022.03.20 | 
| 09. JSP Page Error (0) | 2022.03.20 | 
| 08. JSP Page Action Tag (0) | 2022.03.19 | 
| 07. JSP Page Implicit Object (0) | 2022.03.19 | 
 
           
                   
                  