서비스와 데이터 레이어의 구분방식

    컨트롤러 URL Mapping과 사용자 출력

    Service와 DAO의 역할

    입력을 사용자로부터 받고 사용자에게 돌려주기 위해서 데이터가 필요한데 데이터 제공을 하는 것이 Service

    Service는 Dao를 쓰고 있다.

     

    SQL의 내용들을 Service가 사용

    SQL명령을 통해 쓰는 것이 아닌 Dao가 제공하는 함수를 통해서 쓰겠다는 것이다.

     

    Dao는 SQL이 가지고 있는 기능을 자바 객체의 형태로 제공하는 것

     

    Dao를 사용했을 경우 장점으로

    Service 구현하는 사람이 SQL을 몰라도 되며 어떠한 저장소를 쓰던지 상관하지 않아도 된다.

    데이터 소스에 대한 것을 숨길뿐만 아니라 자바만 알면 업무를 다룰 수 있다. -> 협업능력 향상

     

    Controller -> ui전문가

    Dao -> SQL 전문가

    Service -> 업무 전문가

     

    출처 : https://www.youtube.com/watch?v=Dkygu8Lclno&list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T&index=74

     

    NoticeService를 구현한 사람은 Notice 시스템을 구현한 사람이다.


    Controller(ui전문가)는 NoticeService(업무 전문가)에서 Notice를 만드는 서비스를 받아와서 페이지를 바인딩해서 화면이 보여준다.

    여기서 NoticeService(업무 전문가) Controller(ui전문가)에서 요청한 정보를 Dao(SQL 전문가 관리)를 통해 가져와 Controller(ui전문가)에 전달한다.

     

    Dao에서는 테이블과 1:1관계이다.

    Dao는 단조롭고 반복적이며 코드량이 많다. -> 라이브러리 존재 (JDBC 라이브러리. mybatise, spring jpa hibernate)

     

     

     

     

    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기
    loading