요르딩딩

[Spring 분석] Mapper.(java, xml) 작성 본문

[Web]/[Spring]

[Spring 분석] Mapper.(java, xml) 작성

요르딩딩 2021. 3. 23. 00:04
728x90
반응형

DB를 사용하기 위해서는 dispatcher-servlet.xml에서 설정했던 명칭 방식을 따라합니다.

저는 "com.company.RuRu"를 기반으로 만들었습니다. (아래소스는 mapper와 더불어 전반적인 설정입니다.) 

 <context:component-scan base-package="com.company.RuRu">
     <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
     <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
     <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
 </context:component-scan>

 

1. DAO 설정 (mapper.java)

Data Access Object의 약자입니다.
데이터를 조작하는 기능을 전담하는 객체라고 생각하면 됩니다.
mapper.java

@Repository("")는 해당 클래스의 호출명칭 같은 것으로, 다른클래스에서 해당 클래스를 접근하고자 할때, 사용합니다.

datasource-mapper.xml에서 등록한 sqlSession클래스에 접근하기 위해서는 @Autowired를 사용합니다.

 

mapper.xml에 <mapper namespace = "">를 적어두어, mapper.java(DAO 클래스)에서 Namespace를 사용하여 쿼리문을 호출할 수 있도록 하고 있습니다.

 

2. VO설정 (HashMap으로 대체가능)

Value Object의 약자입니다.
단순 값을 저장하는 객체라고 생각하면 됩니다.

 

사용할 데이터를 정의하고, getter,setter를 만들어 주었습니다.

[DataVO.java]

package com.company.RuRu;
 
public class DataVO {
     
    private String id;

    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
}

Mapper.xml에 <select id="" resultType = "DataVO">를 명시했는데, 여기서 DataVO는 mapper.config.xml에서

<typeAlias alias="DataVO" type="com.company.RuRu.DataVO" />를 줄여말하기로 했던 DataVO.java파일입니다.

 

3. Service 설정

일반적으로 service.java (Interface파일)과 이를 구현하는 serviceImpl.java (java파일)을 만들어 사용합니다.

 

service.java (interface)
serviceImpl.java

해당 클래스의 호출명칭을 @Service("")로 정하고, 우리가 참조하려는 자원의 이름을 @Resource(name="DAO") (mapper.java)로 적어주면 됩니다.

 

4. Controller 설정

뷰를 제어해주는 역합을 합니다.

 

 @RequestMapping을 통해 어떤 컨트롤러가 요청을 처리할지 알게 됩니다.

Controller

 

5. JSP파일 설정

jsp파일은 view폴더에 만들어주어야합니다.

저는 실무에서 직접사용하지 않았습니다. 공부하시는 분들은 검색을 통해 공부하시는것이 좋을거 같습니다.  

728x90
반응형
Comments