최프 - 210116토 오후 수업

갓김치·2021년 1월 16일
0

최종프로젝트

목록 보기
6/19

들어가기 전

  • 프레임워크 깔아서 스프링 연동하고 db연동하고 라이브러리 쓰며 게시판을 할 줄 알아야 욕을 안먹는다,,
  • 토요일 4시간 밖에 안되지만 현업 팁과 노하우를 전수하러 도와주시러 오신 것이다

개발환경구성

  • 프로젝트 설정은 aa의 역할만이 아니다. 모두가 알아야하는 기초임.
  • 오늘 연습하면서 프로젝트 구조를 같이 짜야할 것

ppt



  • Mapper: 인터페이스 사용하는 매퍼방식을 이용할 것
  • VO: 맵을 사용하는것은 추천하지않음,
  • implements 하는 이유
    • 무조건 인터페이스를 만들어서 구현체를 만들 필요가 없는데 왜할까?
    • 특수한 경우가 아니면 interface 만들고 구현하는 방식은 퍼포먼스를 떨어트릴수가 있다.
  • 베이스컨트롤러: 최상위 계층 컨트롤러, 중복제거를 위함
    • 베이스컨트롤러를 상속받아 logger사용
    • 코드서비스: 공통코드 테이블
    • 코드테이블에 쉽게 접근할 수 있도록


  • context-mapper.xml에서 mapUnderscoreToCamelCase로 vo와 컬럼명을 매핑
  • 프로젝트마다 맵으로 개발하는사람, vo로 개발하는사람 나뉘는데 vo로 개발하도록
  • 타입미스매치같은 runtime오류가 나는 건 큰일, 이미 서버에 올라갔는데 런타임오류가난다..? 끔찍
  • 이름, 아이디 뿐만아니라 업무용 시스템에서는 검색조건이 10개가 되기도함
  • BoardVO가 BaseVO를 상속받고있음
  • BoardVO에는 CRUD관한 데이터
  • SearchBoardVO에는 검색어, 검색조건이 들어감
  • <form:hidden path="boardVO.id" id="sid"/> 컴파일전
    • <input type="hidden" name="boardVO.id" id="sid" />
  • boardVO: 게시판의 순기능 crud
  • searchBoardVO: 게시판의 검색기능 담당
  • 스프링 폼태그랑 jstl이랑 착각하지마세요..
  • log4j모드를 debug로 해두고 서버올린다면? -> log4j 부하걸려서 OutOfMemory 난리남

프로젝트 생성



구성

VO

BaseVO


ERD

  • ERD를 어렵게 생각하지말자, 개발하면서 계속 바뀐다
  • ERD그리다보면 USER로 연결이 되어있다
    • ERD를 한장에 그리기 쉽지않다, 업무단위별로 ERD를 쪼개는 방법도 있다
  • 메뉴구조도와 요구사항의 내용을 ERD에 투영시켜야함

게시판

  • 게시판마다 테이블을 만드는게 아닌 게시판마다 구분코드

코드

  • 코드테이블: 코드명, 코드디스크립션
  • 코드테이블은 어디서나 쓸 수 있게만든다
  • 코드테이블은 코드안에서도 분류체계가 있어야한다
    • 보드BD, BD밑에 A,B,C,D
    • 취미HB, HB밑에 A,B,C,D
  • 자바에 넣고 쓰면, 변경시 재컴파일해서 서버재구동을 해야하기때문에 코드테이블이 중요하다

파일

  • 어지간하면 파일도 한테이블에서 관리
  • 보드처럼 구분코드를 주어라
  • 파일사이즈(업로드시 파일사이즈 제한을 위해, 상세화면에서 파일사이즈 보여주고싶을때), 파일원본명, 시스템네임(파일명칭, 저장명), 확장자

화면정의서

  • JSP로 만든후 캡쳐하여 만들어라 -> 역공학

메뉴구조도

  • 3depth까지만, 4depth는 사이트맵을 만들어도 찾기어려움
profile
갈 길이 멀다

0개의 댓글