Model: controller, Service, Mapper/Repository 와의 상호 작용
RestController : Service와 상호작용
Service: Mapper, Reopstiory와 상호작용
Mapper/Reopstiory: SqlSesion 및 DB와 상호작용
구성요소 | 설명 |
@Mapper | Mapper 클래스의 정의, 자동 빈 등록 |
@Repository("value") | mybatis.xml에서 사용하고 있는 맵핑xml 중 namespace가 value로 지정된 xml을 자동으로 찾음 Ex) -Animal.interface = @Repository("a") -animal.xml = <mapper namespace="a"> *서로 매칭 |
@Param("value") | 본인이 원하는 명으로 mapper에서 사용하기 위해 Ex) -Animal.interface public void test(@Param("name") String value) -animal.xml #{name} 으로 value값 받을 수 있음 * Param 사용 안할시 #{value} |
AnimalMapper.interface
1
2
3
4
5
6
7
8
9
10
11
|
@Mapper
@Repository("animal")
public interface AnimalMapper
{
//동물 전체 조회
public List<animal> getAnimals();
//동물 신규 등록
public int createAnimals(@Param("a")Animal animal);
//동물 선택 수정
public int updateAnimal(@Param("a")Animal animal);
}
|
cs |
Animal.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <mapper namespace="animal"> <select id="getAnimals" resultType="패키지명.Animal"> select * from Animal // Animal 테이블의 전체 컬럼을 Model타입으로 리턴 </select> <insert id="createAnimal" parameterType="패키지명.Animal"> insert into Animal values ( a.animal_id a.animal_name ~~~~~~~~~ //@Param을 통해 원하는 이름으로 사용 ) </insert> <update id="updateAnimal" parameterType="패키지명.Animal"> ... </update </mapper> | cs |
본 글은 다소 주관적인 생각들을 포함하고 있어, 잘못된 정보를 제공할 수도 있습니다. 부족한 점이 있으면 댓글 남겨주세요. 추가 및 수정 하도록 하겠습니다. 감사합니다.
[SI에서 살아남기] 내맘대로 Service 역할 및 간단한 예시 (0) | 2020.05.07 |
---|---|
[SI에서 살아남기] 내맘대로 RestController의 역할 및 간단한 예시 (0) | 2020.05.07 |
[SI에서 살아남기] 내맘대로 Model의 역할 및 간단한 예시 (0) | 2020.05.07 |
댓글 영역