본문 바로가기
카테고리 없음

a_mvc_controller : list2

by 쿡후 2023. 6. 8.
  • SampleController에서 list2 만들기
    1. 롬복 추가
    2. SampleVO 
    3. SampleDao
    4. SampleController에서 list2
    5. WEB-INF/views/sample01/sampleList2

 

  • Project Lombok 추가
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.28</version>
    <scope>provided</scope>
</dependency>

 

  • SampleVO 생성
package com.jafa.domain;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SampleVO {
	private Long id;
	private String title;
	private String content;

}

 

  • SampleDao 생성
    1. 패키지: com.jafa.dao
    2. 클래스 : SampleDao
package com.jafa.dao;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Repository;

import com.jafa.domain.SampleVO;

@Repository // dao : 데이터를 다루는 곳에서 @Component보다 @Repository 사용
public class SampleDao {
	
	public List<SampleVO> list(){
		List<SampleVO> list = new ArrayList<SampleVO>();
		list.add(SampleVO.builder().id(1L).title("샘플제목01").content("샘플내용01").build());
		list.add(SampleVO.builder().id(2L).title("샘플제목02").content("샘플내용03").build());
		list.add(SampleVO.builder().id(3L).title("샘플제목02").content("샘플내용03").build());
		return list;
	}
}

 

  • SampleController에 list2생성
package com.jafa.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.jafa.dao.SampleDao;

@Controller
public class SampleController {
	
	//자동 주입. SampleController에서 SampleDao사용 가능하다
	@Autowired
	SampleDao sampleDao;

	@RequestMapping("/sample01/list") //요청 URL, method속성을 설정 하지 않으면 GET방식으로 요청
	public String list1() {
		return "sampleList";
		// /WEB-INF/views/sampleList.jsp
	}
	
	@RequestMapping("/sample01/list2")
	public String list2(Model model) {
		model.addAttribute("list", sampleDao.list());
		return "sample01/sampleList2";
	}
}

 

 

  • sample01/list2요청 하면 sample01/sampleList2반환

 

  • sampleList2.jsp생성
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
${list}
</body>
</html>