-
[MVC] WebScore 프로젝트back end 2022. 3. 9. 18:28
1. Web_Score를 통해서 servlet/jsp 의 MVC 패턴을 활용할 수 있다.
2. 비즈니스로직과 데이터 연동(JDBC or ORM)을 분리해서 접목할 수 있다.
View
1. index.html : input page
2. ScoreAll.jsp : 전체데이터 페이지
3. ScoreInput.html : 데이터 입력 페이지
4. ScoreUpdate.jsp : 데이터 수정 페이지
Controller
- MyController.java : request를 받아서 그 결과를 request객체에 저장해서 response로 output page로 보냄.
Biz
- ScoreBiz : db에 접글할 connection을 생성하고 close 할 용도
Dao
- ScoreDao.java : 데이터 가져올 쿼리를 실행해서 저장할 곳.
- ScoreSql.java: sql구문(db에서 데이터 가져올때 쓸)
Entity
- Score.java : VO + Entity 객체
프로젝트 만드는 순서(myWeb/WebScore)
1/ JdbcTemplate: db접속해서 데이터 가져오기 위해 커넥션 만들고 commit, close 하는 용도. Biz에서 사용할 계획.
2/ Entity: Score.java VO객체로 활용할 계획.
3/ dao: ScoreDao.java.
-> DB에서 데이터를쿼리문으로 꺼내와 List객체에 넣어서 리턴하기
포함해야할 코드
-> DB에서 데이터 꺼낼 때 필요한 SQL문(4번 ScoreSql에서 가져온다.)
-> 쿼리문 결과를 한줄 씩 담을 객체 선언
-> 한줄 씩 담은 객체를 합칠 List 선언
-> 데이터가 들어올 커넥션의 통로 statement를 만들고, 그 통로를 통해 쿼리를 실행하여 리턴받을 ResultSet을 만든다.
-> resultset을 rs.next()를 이용해서 위에서 만든 한줄씩 담을 객체에 set을 이용해서 담는다.
-> 그 담은 객체를 List에 더한다.
-> resultSet과 statement를 close한다.
-> 객체를 담은 List를 Biz에 리턴한다.
4/ dao: ScoreSql.java
-> ScoreDao에서 사용할 쿼리문을 따로 관리한다. (select, insert, delete, update)
-> interface로 만들어서 ScoreDao에서 implements한다.
5/ BIZ: ScoreBiz.java
-> Dao에서 데이터 가져온다. 커넥션 필요
-> ScoreDao에서 getScoreAll을 불러서 결과를 all에 저장한다.
-> 커넥션 close하고 위의 결과 all을 리턴한다.
6/ Controller: ScoretAll.java
-> ScoreBiz에서 getScoreAll 메서드를 호출해서 값을 받아온다.
-> 받은 값을 request객체에 setAttribute로 저장한다.
-> 그리고 output 페이지인 ScoreAll.jsp로 보낼 준비
-> forward한다.
-> servlet 에서 servlet으로 페이지를 요청할때는 sendredirect 메서드를 사용한다.
View
7/ index.html 인 input 페이지에서 controller인 servlet ScoreAll로 이동하게 a 태그로 작성한다.
이렇게 각각 Controller를 만들고 하나의 Controller로 합친다.
ScoreAll.java
ScoreDelete.java
ScoreFind.java
ScoreInput.java
ScoreUpdate.java
오류 잡을때 아래 순서로 에러 검토
context.xml -> jdbcTemplate -> ScoreDAO -> Controller
DB server, WAS server의 환경설정 확인
DB 커넥션 확인
'back end' 카테고리의 다른 글
[Spring] DI Annotation (0) 2022.03.15 [JSP] EL/JSTL (0) 2022.03.09 [MVC 패턴] DB연동 (0) 2022.03.08 [JSP] 내장객체 (0) 2022.03.05 [JSP] JSP 엔진, 지시어 (0) 2022.03.04