1210 개발일지

Yesol Lee·2021년 12월 10일
0

개발일지 - 2021

목록 보기
5/20

오늘 한 일

1. 페이지 연결

  • index.jsp -> Controller -> selectBtList.do 리퀘스트 처리하는 메서드로 이동 -> service(impl) -> DAO에서 selectBtList라는 id값 + btVO에 담긴 정보값 리턴 -> SQL 쿼리 처리하는 곳에서 id=selectBtList 찾아서 실행 -> service 함수 리턴값에 맞는 VO에 DB에서 가져온 값 넣어서 selectList.jsp로 이동 -> results에 담긴 전체 데이터 중 각각을 result로 받은 후 result.traveler_id와 같이 접근 -> jsp 코드의 원하는 곳에 넣어줌

오류 기록

Error parsing XML.  Cause: org.xml.sax.SAXParseException; lineNumber: 10; columnNumber: 72; "class" 속성이 필요하며 요소 유형 "resultMap"에 대해 지정되어야 합니다.
  • ibatis 사용 시 sql 쿼리 작성하는 파일에 resultMap에 type-> class라고 적어주어야 한다.
  • sql 쿼리 파일의 id과 DAO 메서드에서 리턴하는 문자열 값이 같아야 한다. 나는 대소문자를 잘못 써서 연결이 안 됐었다.
<!-- SQL.xml -->
<delete id="btDAO.deleteBt">
  <![CDATA[
   DELETE FROM TBBUSINESSTRIP 
   WHERE BT_ID=#bt_id#
  ]]>
</delete>
// dao.java
public void deleteBt(BtVO vo) throws Exception {
	delete("btDAO.deleteBt", vo); // 첫 번째 변수인 문자열이 sql의 id와 동일해야 한다
}
  • db에서 가져온 값 중 location은 화면에 뜨는데, traveler_id와 같이 언더바가 포함된 이름의 데이터들은 불러오지 못하는 것을 보고 controller에서 데이터리스트를 콘솔에 출력해보았다. 확인해보니 언더바가 들어간 DB 변수명들이 전부 카멜케이스로 변해있어서 불러오지 못하는 거였다. jsp를 수정해주니 잘 나온다.

2. DB에 테스트용 데이터 넣기

아직 화면에서 데이터 삽입, 수정, 삭제가 불가능하기 때문에 DB에 직접 값을 넣어주었다. 그리고 테이블의 컬럼명으로 name, rank 등을 사용하면 기존 SQL에 해당 키워드가 있는지 쿼리가 잘 실행되지 않았다.

3. 페이지 화면 만들기

  1. 목록화면, 입력화면, 상세보기 화면 디자인 정하기 (oven)
  2. 기본 템플릿 만들기: header, main에서 내용물이 들어갈 공간 잡기
  3. 목록화면 header, main의 테이블까지 완성. 페이징과 검색은 추후 완성하기

4. 테이블 설계서, 화면 설계서 양식에 맞게 재작성하기

  • DB 구조 수정된 것 반영
profile
문서화를 좋아하는 개발자

0개의 댓글