본문 바로가기
Java (국비)/Java 메모

MVC (Model-View-Controller) 메모

by Hwanii_ 2023. 5. 24.
728x90

DAO 예시)

 

DAO 클래스
VO의 배열리스트 객체 datas를 선언
배열리스트 객체를 생성자에서 초기화
VO 클래스의 객체 생성

 

1. VO 클래스의 객체를 생성해서, VO 클래스의 배열리스트 (객체배열)에 .add 하는 모습.

 

2. CRUD의 Create에 해당하는 insert 메서드에 인자값으로,

DrinkVO(클래스명/타입) vo(참조변수) 를 확인 할 수 있다.

 

원래라면,

CRUD - Create

DrinkVO의 객체를 배열리스트에 .add 할 때

VO의 생성자가 PK,name,price,cnt 라서 (PK는 직접 입력 받지 않음)

insert 메서드의 인자로 위와 같이 표현 했다.

 

그래서

접근할 때

참조변수.메서드,

참조변수.메서드,

참조변수,메서드

로 표기 할 수 있다.

 

3. CRUD의 Read에 해당하는 selectAll 메서드에 인자값으로,

DrinkVO(클래스명/타입) vo(참조변수) 를 확인 할 수 있다.

 

CRUD - Read

1) 리턴값으로 DrinkVO의 배열리스트의 객체를 토해내야 하니,

아웃풋으로 ArrayList<DrinkVO> 이고,

 

2) 인자로는 고정으로 DrinkVO vo 인것을 확인 할 수 있다.

 

3) 만약 vo.getName()이 null 이야 ? 

그러면 배열리스트를 리턴해 (텅 비어 있는 상황)

 

4) 텅 비어있는 상황이 아니라면 ~ ( 객체(음료)가 있으면 ~)

else문 ~

검색 결과 목록을 보기 위해 쓴건데, 나중에 다시 필기..

 

 

 

4. CRUD의 Read에 해당하는 selectone 메서드에 인자값으로,

DrinkVO(클래스명/타입) vo(참조변수) 를 확인 할 수 있다.

 

CRUD - Read

1) 리턴값으로 DrinkVO의 (지정된 (PK)) 객체 1개를 토해내야 하니,

아웃풋으로 DrinkVO 이고,

 

2) 인자로는 고정으로 DrinkVO vo 인것을 확인 할 수 있다.

 

3) for each문을 사용해서,

배열리스트 안의 데이터들을(객체들을) DrinkVO 타입의 참조변수 data에 다 넣을거야

만약, 배열리스트 안의 데이터들을(객체들을) 옮겨 담은

DrinkVO 타입의 참조변수 data 안의 객체의 getNum() (PK) 이(가) 

controller 에서 받아온 PK 값이랑 같으면, 

return data을 해줘 ~

 

4) 하나도 같지 않으면, return null.

 

 

 

5. CRUD의 Update에 해당하는 update 메서드에 인자값으로,

DrinkVO(클래스명/타입) vo(참조변수) 를 확인 할 수 있다.

 

CRUD - Update

1) 이 기능은 특별한 리턴값이 필요없으므로 boolean 으로 고정 이다.

 

2) 해당 음료의 현재 재고가 controller 에서 입력받은 구매할때의 갯수 보다 크거나 같으면

새롭게 setCnt 해..

 

 

 

6. CRUD의 Delete에 해당하는 delete 메서드에 인자값으로,

DrinkVO(클래스명/타입) vo(참조변수) 를 확인 할 수 있다.

 

CRUD - Delete

1) 이 기능은 특별한 리턴값이 필요없으므로 boolean 으로 고정 이다.

 

2) for문을 사용하여,

만약 배열리스트안의 i번째 객체의 PK가 controller에서 받아온 PK랑 같아?

그러면 그 i번째 객체를 지워줘 ~

반응형

'Java (국비) > Java 메모' 카테고리의 다른 글

MVC 패턴 느낀점  (0) 2023.05.25
MVC (Model-View-Controller) 메모 2  (0) 2023.05.24
에러 메모  (0) 2023.05.19
로그  (0) 2023.05.17
객체 지향 언어 메모  (0) 2023.05.17