본문 바로가기
개발자/백엔드 웹 개발자 과정(국비)

[JSP]자바빈,Javabean,DTO,DAO

by 초응 2023. 1. 9.

[JavaBean]
JavaBean은 데이터를 표현하는 것을 목적으로 하는 자바 클래스로 보통 DTO라는 키워드를 붙여 저장한다.
-웹에서 사용되는 자바 객체

기능클래스 (대표:Random.math , MAP, Scanner)
정보클래스 (대표 : exception -  에러의 정보를 담을 수 있는)
ㄴ이론적으로만 나누고 같은 클래스다.

웹에서 사용하는 클래스
정보를 담당하는 클래스 (DTO):

내가 사용할 테이블을 대상으로 모델링/ 나를 대표하는 값들만 가지고 있음. (은닉화 시켜야함)


기능을 담당하는 클래스 (DAO): 
ㄴ 이론적으로만 나눠놓은것 뿐 모두 클래스이다.
VO?

자바빈(JavaBean)을 이용하면 비지니스로직과 디자인 로직을 구분할 수 있다. 
화면 하나가 서블릿 하나 /서블릿 > 서블릿 이동. new로 객체 생성 X /  Action Tag이용

[Action Tag] : 서버에서 돌아가는 태그
-클라이언트 혹은 서버에게 어떤 행동을 지시
-jsp의 실행시점과 클라이언트에게 돌려줄 응답에 영향을 미치는 특별한 태그
-표준 액션 : jsp로 시작/
-사용자 지정 액션 : 사용자가 직접 만드는 태그 

표준 액션 태그
<Jsp:useNean>액션태그
- jsp에게 사용할 자바빈 객체를 지정해준다.

문법
<jsp:useBean id ="빈이름" class="자바빈클래스이름" scope="범위"/>

TestBean tb = new TestBean();
<jsp:useBean id="tb" class ="com.yong.TestBean"/>
ㄴusebean에 호출되는 기본생성자... 
클래스는 패키지 명까지 써줄것. (웹은 패키지의 활용도가 높다)

[getProperty 와 setProperty]
-UseBean 액션태그로 객체를 생성하면 get 또는 setProperty 액션 태그를 이용하여 객체의 프로퍼티를 입력하거나 가져 올 수 있다.

getProperty문법 
<jsp:hetProperty name ="자바빈" property ="프로퍼티"/>
setProperty 문법
<jsp:setProperty name=" 자바빈" property="프로퍼티" value ="값"/>


property(프로퍼티)(웹상에서 부르는) = 멤버변수

DTO 다른곳으로 메소드나 특정대상자에게 넘겨야 할때 편하다(카트만 넘기면 되기 때문에)
setProperty 폼태그와 멤버변수와 같다면 value값을 따로 안써줘도 괜찮다.
DTO는 컬럼이름과 동일. DTO 하나가 한 객체 정보를 표현하게 된다.
DTO :내가 모델링하는 객체보다 많을수있지만 적을수 없다.
모르면 테이블의 컬럼 따라 쓰면 됨. 

 


개발 순서 : 
1. db스키마 설계
2. 디자인 설계(컨텐츠의 뼈대) : jsp
3. 기능 구현 : DTO &DAO설계 java
4. 징검다리 (컨트롤러) _ok.jsp - 모델 1

[Beans]
자바 코드: 기능 담당.