Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- spring
- 어노테이션
- gradle
- application.properties
- @Valid
- jointpoint
- 유효성검사
- 바인딩변수
- 생성자주입
- .xml
- springjdbc
- after-throwing
- @RequestMapping
- springmvc
- MVC
- 서비스레이어
- SpringBoot
- Model
- frontController
- 비즈니스레이어
- @
- c:if
- @ResponseBody
- AOP
- 의존주입
- 스프링
- Java
- @RequestParam
- PointCut
- produces
Archives
- Today
- Total
메모장
MVC 패턴 중 Ctrl 공부 본문
728x90
반응형
컨트롤러에 대해서 공부 해보자 !

컨트롤러에서 우리는 model 부분의 music과 member를 사용할 예정 이므로 dao를 초기화 해주고 view부분도 초기화 !

큰 틀을 먼저 잡아준다 ! 실행을 했을때!!! 프로그램 모드에서는 회원가입,로그인,프로그램종료 로 간단하다. 사용자는 로그인을 통해 접속해야 더 세부적인 내용을 수행할 수 있다.

로그인을 통해 들어가면 이제 그 안에서 메뉴들을 또 나눠서 큰 틀을 잡을것 !
이 다음은 내가 한글코딩 , 설계한 대로 코드를 작성해야 한다.
package ctrl;
import model.MemberDAO;
import model.MovieDAO;
import view.View;
public class TestCtrl {
// 멤버변수로 M,V를 가짐
private MemberDAO memberDAO;
private MovieDAO movieDAO;
// DAO만 모델이다!
private View view;
public TestCtrl() {
// "초기화가 되어있는가?" == "new를 했는가?"
this.memberDAO=new MemberDAO();
this.movieDAO=new MovieDAO();
view=new View();
} // 생성자: 멤버변수를 초기화시키는 행동을 함
public void startApp() { // 사용자가 내 어플을 켰다!
// 한글코딩지역
while(true) {
// 무한루프 생성 --->> 종료 조건 만들기
// 사용자는 맨 처음에 안녕하세요 출력보고,
view.화면에 안녕하세요 출력();
// 메뉴목록을 보는데
// 그중에서 뭔가를 선택한다.
int action=view.사용자한테 무엇을 할건지 받아봐();
// action == 사용자가 선택한 값
// 메뉴목록
// 1. 사진보기
// 2. 사진올리기
// 3. 사진변경하기
// 4. 사진삭제하기
// 5. 어플 종료
if(action==1) {
// 사용자가 만약에 1을 했다면
// 사진을 화면에 보여준다.
/*
ArrayList<사진VO> pdatas=model.selectAll();
// selectAll 은 여러 목록 등 두가지 이상 일때 ! 무조건 selectAll();
*/
사진VO pic=model.selectOne(); // 딱 하나만 일때
view.사진 보여주기(pic);
}
else if(action==2) {
// 사용자가 만약에 2를 했다면
// 사용자로부터 사진을 받아와서
사진VO pic=view.사진받아와();
// 그걸 DB에 저장
boolean flag=model.insert(pic);
if(flag) {
// 성공
view.성공화면();
}
else {
// 실패
view.실패화면();
}
}
else if(action==3) {
// 사용자는 어떤 기존사진을-1 어떤 변경할사진으로-2 변경할지 알려줘야함
사진VO vo=view.변경화면을 출력해줘();
// ★ JAVA에서는 OUTPUT이 2개이상일수가 없음!!!!!
// 이럴때에는 VO를 OUTPUT으로 사용한다!!!!!
// 그럼 그 정보를 DB에 전달할예정
boolean flag=model.update(vo);
if(flag) {
view.성공화면();
// 변경완료된 사진을 한번 출력해주자~
view.사진보여줘(vo);
}
else {
view.실패화면();
}
}
else if(action==4) {
// 사용자는 무엇을 삭제할지 알려줘야함
int picPK=view.삭제할정보를받아옴();
// 그러면 해당 사진을 DB에서 삭제
사진VO 사진vo=new 사진VO( picPK );
boolean flag=model.delete(사진vo);
if(flag) {
view.성공화면();
}
else {
view.실패화면();
}
}
else if(action==5) {
// 어플 종료 화면출력
view.어플종료화면();
break; // 무한루프의 종료 조건 ★
}
}
}
}
728x90
반응형
'JAVA > 개념정리' 카테고리의 다른 글
| 인터페이스 (0) | 2024.04.07 |
|---|---|
| 클래스 , 객체 , 인스턴스의 차이 (0) | 2024.04.07 |
| MVC 패턴 중 View 공부 (0) | 2024.04.07 |
| MVC 패턴 중 Model 공부 (0) | 2024.04.07 |
| MVC 패턴 (0) | 2024.04.07 |