JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)

2023. 8. 5. 01:03·JSP
728x90
반응형
SMALL
🟰JSP 액션태그
☀️자바를 모르는 사람도 간편하게 사용할 수 있도록 만든 태그



🟰JavaBean

☀️지정한 id로 변수를 만들고
☀️지정한 class의 기본 생성자를 호출하여 빈 객체를 생성한다.
☀️useBean으로 생성된 객체는 지정한 scope의 attribute로 자동 추가된다.
☀️scope를 지정하지 않으면 기본값은 pageContext이다.

🟰JavaBean을 만들기 위한 세가지 필수 조건
☀️Private 멤버 필드
☀️public getter/ setter
☀️기본 생성자(오버로드한 생성자를 만들지 않은경우 기본 생성자를 생성하지 않아도 자동으로 생성된다.)


⏬예시 코드
//데이터 필드
public class Member {

	private String name;
	private int age;
	
	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;
	}
	
	
	
}


//위의 클래스의 객체를 자동으로 생성해주는 JavaBean

	<jsp:useBean id="ob" class="day05.Member"/>
    이 태그는 Member ob = new Member();와 동일하다.​


🟰SetProperty

☀️name에 작성한 객체를 대상으로 property에 대한  setter를 호출하면서 value를 전달한다.

⏬예시코드
<jsp:setProperty name="ob" property="name"  value="이지은"/>
	<jsp:setProperty name="ob" property="age"  value="31"/>​

🟰GetProperty

☀️name에 작성된 객체를 대상으로 property의 getter를 호출하여 값을 가져온다.
☀️일반적으로 EL태그를 사용해서 보여주는게 더 간편해서 잘 사용하지 않는다.

그럼 JavaBeans와 SetProperty, GetProperty를 사용한 코드를 봐보자.

<jsp:useBean id="ob" class="day05.Member"/>
	
	<jsp:setProperty name="ob" property="name"  value="이지은"/>
	<jsp:setProperty name="ob" property="age"  value="31"/>
	
	<!-- getProperty는 너무 길어서 안쓴다. -->
	<h3>ob.name : <jsp:getProperty name="ob" property="name" /></h3>
	<h3>ob.age : <jsp:getProperty name="ob" property="age" /></h3>
	
	<%@ page import="day05.Member" %>
	<%
		out.print("<h4>" + ob.getName() + "</h4>");
		out.print("<h4>" + ob.getAge() + "</h4>");
		
		Member test = (Member)pageContext.getAttribute("ob");
		out.print("<h5>"+test.getName()+ "</h5>");
		out.print("<h5>"+test.getAge()+ "</h5>");

	%>​

⏬ 해석 코드

⏬결과 코드

..


이번에는 입력 > 처리 > 화면출력 3단계의 예시를 보여드리겠습니다.
코드와 실제 화면을 함께 보여드립니다.

⏬예시코드와 화면


⏬클릭 후 처리되는 ex02-action.jsp 코드 화면(☀️설명은 주석에 있습니다.)

추가 설명
🟰setProperty의 property에 *을 붙이면 어떻게 될까?

☀️ Member 데이터에서 자동으로 객체의 타입에 맞게 값을 저장해준다.
☀️간편한게 * 하나로 따로 지정하지 않아도 타입에 맞춰 set해주는것이다.


⏬forward된 ex02-result.jsp 코드 및 구현 페이지
☀️이전처럼 HTML코드와 섞어서 사용하지 않아도 되는 편리함이 있으며
☀️코드의 구독성이 높아진다.





728x90
반응형
SMALL

'JSP' 카테고리의 다른 글

JSP-JSTL ( <C:set>, core 태그 사용하기)  (0) 2023.08.08
JSP EL태그 종류(예시 있음)  (0) 2023.08.06
JSP - Foward  (1) 2023.08.04
JSP - Redirect  (0) 2023.08.04
JSP 내장 객체 유효 범위 (pageContext,Request,Session,Application), Attribute  (0) 2023.08.03
'JSP' 카테고리의 다른 글
  • JSP-JSTL ( <C:set>, core 태그 사용하기)
  • JSP EL태그 종류(예시 있음)
  • JSP - Foward
  • JSP - Redirect
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (325)
      • 면접 준비 (22)
        • OS (6)
        • Spring Security (0)
        • Java (3)
        • DB (11)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      자바 반복문
      자바스크립트
      백준
      redis
      자바 면접
      JavaScript
      jsp request
      CSS
      springsecurity
      jsp기초
      자바
      자바기초
      스프링프레임워크
      리눅스
      Spring Data Redis
      자바 면접질문
      JSP
      프로그래머스
      JS
      redis 채팅
      java
      레디스
      자바 알고리즘
      HTML
      리눅스마스터2급정리
      Spring
      spring redis
      Springframework
      리눅스마스터2급
      Til
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)
    상단으로

    티스토리툴바