Spring에서 DB값 조회하기
Spring에서 DB값 조회하기
Spring - CRUD - SELECT
DB의 값을 조회하기
- Mapper[Interface]
쿼리문을 이용해 DB에 저장된 값을 리스트 형태로 반환
1
2
@Select("SELECT * FROM member")
public List<MemberDTO> getMemberList();
- Service
사용할 메소드들을 인터페이스에서 작성
1
public List<MemberDTO> getMemberList();
- Service구현체[Class]
Service인터페이스 메소드들을 구현한다.
1
2
3
4
5
6
7
8
@Autowired
MemberMapper mapper;
@Override
public List<MemberDTO> getMemberList() {
List<MemberDTO> list = mapper.getMemberList();
return list;
}
- Controller[Class]
요청에 응답하기위한 클래스. 서블릿의 역할을 한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Autowired
MemberService service;
@RequestMapping("/memberList")
public void memberList(Model model) {
log.info("momber List");
//db에서 자료 가져오기
//서비스에게 자료를 달라고 요청
//서비스는 맵퍼한테 요청
List<MemberDTO> mlist = service.getMemberList();
//view에 데이터 전달
model.addAttribute("memberList", mlist);
}
- DTO
DTO클래스
1
2
3
4
5
6
7
8
@Component
@Data
public class MemberDTO {
private String id;
private String pw;
private String name;
private String tel;
}
- Test 클래스
DB를 통해 반환된 리스트를 출력한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Autowired
MemberMapper mapper;
@Test
public void testGetList() {
List<MemberDTO> list = mapper.getMemberList();
for(int i = 0; i < list.size(); i++) {
log.info("-----Member List " + list.get(i) + "-----");
log.info("name : " + list.get(i).getName());
log.info("ID : " + list.get(i).getId());
log.info("Password : " + list.get(i).getPw());
log.info("tel : " + list.get(i).getTel());
}
}
Spring - CRUD - INSERT
DB의 값을 조회하기
- Mapper
쿼리문을 이용해 DB에 값 저장
1
2
@Insert("INSERT into member VALUES ( #{id}, #{pw}, #{name}, #{tel})")
public void insertMember(MemberDTO dto);
- Service
사용할 메소드들을 인터페이스에서 작성
1
public List<MemberDTO> getMemberList();
- Service구현체
Service인터페이스 메소드들을 구현한다.
1
2
3
4
@Override
public void insertMember(MemberDTO dto) {
mapper.insertMember(dto);
}
- Controller
요청에 응답하기위한 클래스. 서블릿의 역할을 한다.
1
2
3
4
@RequestMapping("/memberInsert")
public void insertMember(MemberDTO dto) {
service.insertMember(dto);
}
- DTO
DTO클래스
1
2
3
4
5
6
7
8
@Component
@Data
public class MemberDTO {
private String id;
private String pw;
private String name;
private String tel;
}
- Test 클래스
DB에 값을 저장한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Autowired
MemberMapper mapper;
@Autowired
MemberService service;
@Test
public void testInsert() {
MemberDTO dto = new MemberDTO();
dto.setId("testId1");
dto.setPw("112233");
dto.setName("testname");
dto.setTel("4321-4321");
service.insertMember(dto);
log.info(dto);
}
This post is licensed under CC BY 4.0 by the author.