웹/JSP

JSP 자바빈즈(Java Beans)

푸코잇 2023. 6. 5. 00:10

우리는 JSP를 통해 HTML 문서에 Java 코드를 넣을 수 있게 되었다.

그런데 HTML과 Java가 같이 쓰이게 되면서 가독성이 떨어지는 문제가 생긴다.

이때문에 등장한게 자바빈즈(Java Beans)이다.

 

자바빈즈(Java Beans)란?

 

자바빈즈(Java Beans)는 JSP의 표준 태그를 통해 접근할 수 있는 자바 클래스이다.

이 클래스는 멤버변수, setter, getter 메소드로 이루어져 있다.

 

자바빈즈(Java Beans) 규칙

 

  • 패키지화
  • 기본 생성자 선언
  • 필드 접근 제한자를 private로 설정
  • getter, setter 메소드 접근 제한자를 public으로 설정

 

스크립트(Script) 태그 vs 자바빈즈(Java Beans)

 

아래와 같이 Student 클래스가 있다고 해보자.

  • Student.java
package javabeansTest;

public class Student {
	private int age;
	private String name;
	
	public Student() {
		age = 0;
		name = "이름이 없습니다";
	}
	
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}

 

  • 스크립트(Script) 태그를 통한 Student 클래스 사용 예시
<%@page import="javabeansTest.Student"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>스크립트 태그 사용 예시</title>
</head>
<body>
	<%! Student student = new Student(); %>
	<%
		student.setAge(20);
		student.setName("Test");
	%>
	
	<%=student.getAge() %>
	<%=student.getName() %>
</body>
</html>

 

  • 자바빈즈(Java Beans)를 통한 Student 클래스 사용 예시
<%@page import="javabeansTest.Student"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>자바빈즈 사용 예시</title>
</head>
<body>
	<jsp:useBean class="javabeansTest.Student" id="student"/>
	
	<jsp:setProperty property="age" name="student" value="20"/>
	<jsp:setProperty property="name" name="student" value="Test"/>
	
	<jsp:getProperty property="age" name="student"/>
	<jsp:getProperty property="name" name="student"/>
</body>
</html>

 

  • 실행결과


출처

따즈아 - 배워서 바로 써먹는 JSP 1