문득
회사 컴퓨터에서 mapper가 보이는데, 이게 repository 의 역할인 것 같은데...........!......?.....
검색을 해도 비슷한 역할이라 함.
그래도 왜 repository를 안쓰고 mapper를 쓰는지? 검색해봄.
( + PM님께 여쭤본 결과,
mybatis(ORM(Object-relational mapping)역할)를 사용하면서 >> @mapper 어노테이션 사용했을 때, db검색해서 해당 객체와 sql문 작성하고, 연결
아? 그럼 mybatis 사용안하면 @mapper도 사용안하겠네여? ㅇㅇ/
@repository는 db조회 중점)이라고 답주심! )
그래도 검색검색!!🔍
마이바티스란?
마이바티스는 개발자가 지정한 SQL, 저장프로시저 그리고 몇가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크(Java Persistence Framework)이다. 마이바티스는 JDBC로 처리하는 상당부분의 코드와 파라미터 설정 및 결과 매핑을 대신해준다. 마이바티스는 데이터베이스 레코드에 원시타입과 Map 인터페이스 그리고 자바 POJO 를 설정해서 매핑하기 위해 XML과 애노테이션을 사용할 수 있다. (MyBatis 3 | Introduction)
리포지터리란?
리포지터리는 엔티티에 의해 생성된 데이터베이스 테이블에 접근하는 메서드들(예: findAll, save 등)을 사용하기 위한 인터페이스이다. 데이터 처리를 위해서는 테이블에 어떤 값을 넣거나 값을 조회하는 등의 CRUD(Create, Read, Update, Delete)가 필요하다. 이 때 이러한 CRUD를 어떻게 처리할지 정의하는 계층이 바로 리포지터리이다. (https://wikidocs.net/160890), (https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/stereotype/Repository.html)
참고 사이트 :
https://pamyferret.tistory.com/69
Mapper와 Repository의 차이
DB에 연결해서 데이터를 가져오는 것에 아무 생각 없이 @Repository 어노테이션을 붙여서 개발을 하고 있었다. 그러던 중 지인이 @Mapper와 @Repository의 차이에 물어왔고 생각해보니 그 둘의 차이점을
pamyferret.tistory.com
'STUDY > 다스리는 개발병아리🐥' 카테고리의 다른 글
vscode 저장시 자동정렬 (0) | 2023.04.18 |
---|---|
Parsing error: No Babel config file detected for (0) | 2023.04.13 |
vscode 언어설정 (0) | 2023.03.12 |
eclipse mustache 한글깨짐 (0) | 2023.03.05 |
eclipse에서 .mustache 파일생성 (0) | 2023.03.05 |