티스토리 뷰
1. 자바 빈이란?
- 반복적인 작업을 효율적으로 하기 위해 빈을 사용.
- Java의 데이터(속성)와 기능(메서드)으로 이루어진 클래스
- jsp페이지를 만들고, 액션태그를 이용하여 빈을 사용. 그리고 빈의 내부 데이터를 처리.
2. 빈 만들기
- Java에서 데이터 객체(학사관리에서 student객체 등)를 만들 때, 데이터를 가져오기 위한 getter, setter가 존재함. 빈을 만든다는 것은 데이터 객체를 만들기 위한 클래스를 만드는 행위.
3. 빈 관련 액션 태그
- 액션태그 중에서 Bean 관련 태그, useBean, setProperty, getProperty
- 주로 데이터를 업데이트하고, 얻어오는 역할을 함.
3-1 useBean
- 특정 Bean을 사용한다고 명시함.
- student객체를 java파일로 생성하고, 해당 객체를 현재 코딩하고 있는 jsp페이지에서 객체로 만들어 사용하겠다라는 것을 명시 (new연산자를 이용해서 생성하는 것이 아닌, useBean을 사용하여 간단하게 처리 가능)
- id="student" : Java에서 new연산자를 이용하여 객체의 인스턴트를 생성할 때, 변수 명에 해당(Student student(이 부분) = new ~)
- class="" : class의 위치를 패키지주소부터 명시
<jsp:useBean id="student" class="com.javalec.ex.Student" scope="page"/>
Student student = new Student();
- Scope
1) page : 생성된 페이지 내에서만 사용 가능
2) request : 요청된 페이지 내에서만 사용 가능
3) session : 웹브라우저의 생명주기와 동일하게 사용 가능
4) application : 웹 어플리케이션 생명주기와 동일하게 사용 가능
3-2 setProperty
- 데이터 값을 설정 할 때 사용 (Java의 setter와 동일)
- name="student" property= "name" value = "홍길동"/> : student라는 빈 이름의 객체에 있는 : name이라는 속성의 값을 홍길동으로 설정(set)하겠다.
- value는 생략 가능하며, value를 생략하면 form으로 넘어온 값이 세팅 된다.
<jsp:setProperty name="student" property="name" value="홍길동"/>
3.3 getProperty
- 데이터 값을 받아 올 때 사용 (Java의 getter)
- student인스턴스의 name 속성의 값을 받아온다.
<jsp:getProperty name="student" property="name"/><br/>
4. 전체 코드 및 실행 결과
1) Java bean 파일
- com.javalec.ex 패키지에 담긴 Student.java 파일 (JavaBean으로 사용)
- 즉, JavaBean이란 서버로 가져와서 사용하길 원하는 객체를 정의한 Java 파일.
package com.javalec.ex;
public class Student {
private String name;
private int age;
private int grade;
private int studentNum;
public Student() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
public int getStudentNum() {
return studentNum;
}
public void setStudentNum(int studentNum) {
this.studentNum = studentNum;
}
}
2) JSP파일로 가져오기
- useBean, setProperty, getProperty 태그를 이용하여 JavaBean 사용
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<jsp:useBean id="student" class="com.javalec.ex.Student" scope="page"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<jsp:setProperty name="student" property="name" value="홍길동"/>
<jsp:setProperty name="student" property="age" value="13"/>
<jsp:setProperty name="student" property="grade" value="6"/>
<jsp:setProperty name="student" property="studentNum" value="7"/>
이름 : <jsp:getProperty name="student" property="name"/><br/>
나이 : <jsp:getProperty name="student" property="age"/><br/>
학년 : <jsp:getProperty name="student" property="grade"/><br/>
번호 : <jsp:getProperty name="student" property="studentNum"/><br/>
</body>
</html>
3) 실행 결과
* 자바빈 더 깊게 배우려면
'JSP > 인프런 JSP' 카테고리의 다른 글
17. JDBC (0) | 2020.02.21 |
---|---|
16. 데이터베이스 -1 (0) | 2020.02.21 |
13. 예외 페이지 (0) | 2020.02.18 |
12. 세션 (0) | 2020.02.15 |
11. 쿠키 (0) | 2020.02.13 |
- 20200503
- 백준
- chapter7
- 20200317
- 20200420
- 20200428
- 20200424
- 20200423
- 20200415
- 생활코딩리눅스
- 20200624
- 20200413
- 20200622
- 20200429
- 20200417
- 20200319
- chapter8
- 20200502
- 20200512
- 20200421
- 20200425
- 20200403
- 20201204
- 20200406
- 20200510
- likelion
- 20200330
- 20200504
- 20200804
- 20200427
- Total
- Today
- Yesterday