일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |
- subquery
- 외부키
- ㅔㄴ션
- WeNews
- 커밋메세지수정
- 테스트
- 적용우선순위
- querydsl
- 2 > /dev/null
- 참조키
- foreignkey
- 예약
- appspec.yml
- appspec
- 컨테이너실행
- MySQL
- 추후정리
- ubuntu
- application.yml
- Query
- EC2
- AuthenticationEntryPoint
- 서브쿼리
- 메세지수정
- 검색
- docker명령어
- 테스트메소드
- 네이티브쿼리
- 메소드명
- 포트
- Today
- Total
제뉴어리의 모든것
java bean 규약과 java bean에 대하여.. 본문
29. 자바 Beans의 개념, 규약, 종류
- JavaBeans
=> JavaBeans란 자바로 작성된 소프트웨어 컴포넌트를 지칭하는 단어로 이 컴포넌트를 빈(Bean)이라고 부르며 썬사의 JavaBeans API에 정의된 스펙에 따라 만든다.
=> JavaBeans는 자바 관련 소프트웨어 개발에 있어 재사용이 가능한 표준 컴포넌트 모델이다.
- Beans
=> java 클래스들을 모아놓은 package
=> Model, View, Controller(MVC패턴 구현)
Model - 저장소역할( setXxx(), getXxx() 구현) - java코딩
View - GUI역할(클라이언트에게 보여줄 화면구성 구현 ) - jsp코딩
Controller - DAO(데이터처리 담당 -DB연동)역할 , 비즈니스 로직
내부적으로 보이지 않게 처리해야하는 기능 구현 -java코딩, 서블릿문서
=> Beans를 이용하여 MVC패턴으로 구현함으로써 재사용성과 유지보수 용이
=> 이러한 MVC패턴을 기반으로 나오는 다양한 프레임웍이 있음.
===========================================================================================================================
*빈즈 규약
[1] 기본 생성자가 반드시 존재해야한다. (인자가없는 디폴트 생성자)
[2] 속성을 접급한고 꺼내올수있는 setXXX/getXXX메소드를 구성한다.
[3] 속성을 지정(private)해야하는데 속성 이름은 보통 html의 form태그안에서 input 태그의 name속성 값과 같게 정한다.
*빈즈의 종류
[1] 비쥬얼 컴포넌트 : ex) JButton, JTextField......
[2] 데이터빈즈 : 데이터를 담아두는 객체를 만드는 클래스 ex) StudentDTO, StudentVO.....등
[3] 서비스빈즈 : 연산이나 서비스 기능 Beans즉, worker빈즈 ex) StudentDAO....등
*빈즈의 유효범위
[1] page : 하나의 jsp페이지 내에서만 유효
[2] request : 하나의 요청에 대한 처리관련 jsp페이지들에 유효, 포워딩 되거나 인클루드된 페이지에서 이 빈을 사용가능
[3] session: 빈은 서버 파트의 기억 공간인 session객체에 저장됨, 하나의 사용자(브라우저)에대한 유효
** 유효시간 : 특정사용자가 웹브라우저를 닫을때까지 , 특정 설정이 없으면 30분동안 요청이 없을때까지(conf/web.xml에서 세션시간(Session time out)을 조정할수있다.)
[4] application : JSP 애플리케이션과 생명주기를 같이함,
서버가 종료되기전까지 메모리에 상주,
웹 애플리케이션이 undeploy되기전까지 메모리에 상주
웹 애플리케이션 deploy -> 생성
웹 애플리케이션 undeploy -> 제거
cf)크기
page < request < session < application
===========================================================================================================================
-Beans만들기
1. Model의 역할 저장소(java문서)
package gaon.bean;
public class LoginBean{
private Strig id;
private int pwd;
//전역변수 id, pwd에대한 setXxx()메소드와 getXxx()메소드 작성
public void setId(String id){
this.id = id;
}
public String getId(){
return id;
}
public void setPwd(int pwd){
this.pwd = pwd;
}
public int getPwd(){
return pwd;
}
}//end
2. jsp영역에서 Beans사용법
- beans 사용 선언
<jsp:useBean id="별칭" class="사용할클래스이름" scope="beans의범위" />
* id="bean" => bean이라는 이름으로 클래스에 있는 메소드 접근
* class="gaon.bean.LoginBean" => bean 이름으로 사용한 클래스선언
* scope ="request | session | application | page"
request => 사용자요청이 들어오는 순간에만 bean사용함.
sssion => 클라이언트의 세션이 살았는동안 bean사용함.
application => 서버시작 ~ 종료될때가지 bean사용함.
page => 현재 페이지내에서만 사용함(기본값)
- 선언된 Bean에 저장하기 ( Bean data를 저장 )
<jsp:setProperty name="bean" property="id" />
=> bean 클래스에 있는 setId()호출됨
<jsp:setProperty name="bean" property="*" />
=>bean 클래스에있는 set으로 시작하는 모든메소드 호출됨
-선언된 Bean의 데이터 가져오기
<jsp:getProperty name="bean" property="id" />
=> bean클래스에 있는 getId()호출됨.
'JAVA' 카테고리의 다른 글
자바 Array 특정값으로 초기화 하는 방법 (How to initialize a Java Array to a specific value) (0) | 2021.03.18 |
---|---|
JSP 자바빈즈 (0) | 2021.03.15 |
자바 기본 문법 영상 - 간단 정리 (0) | 2021.03.10 |
변수의 데이터타입 확인하기 (0) | 2021.03.10 |
HttpsURLConnection을 이용하여 네이버 맵 api 호출시 주의사항 (0) | 2021.03.05 |