@RequestParam : 주소줄에 있는 이름(key)을 가진 값(value)을 가져오는 동작(1:1 관계)
@ModelAttribute : 주소줄에 있는 이름(key)을 가진 데이터 값(value, bean, Collection)을 가져오는 동작
(1:N 관계) => Model 객체에 담아서 정보를 뷰페이지로 전달
Model : view 페이지로 정보를 전달하는 객체, 데이터를 이름과 값(value, bean, Collection)을 가져오는 동작
(1:N 관계)
Model.addAttribute() | ModelAttribute |
메서드 단위 | 컨트롤러 단위 |
Key,value를 Model저장 | Key, value 전달된 정보를 객체 생성 |
Model 객체에 전달(덮어쓰기) | |
뷰페이지 전달 | 뷰페이지 전달 |
RedirectAttributes
pom.xml 수정
<!-- Servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
변경
//@RunWith(SpringJUnit4ClassRunner.class)
//@ContextConfiguration(
// locations = {"file:src/main/webapp/WEB-INF/spring/*.xml"}
// )
//=> 스프링으로 controller 외 나머지 테스트 하겠다
//@RunWith(SpringJUnit4ClassRunner.class)
//@WebAppConfiguration
//@ContextConfiguration(
// locations = {"file:src/main/webapp/WEB-INF/spring/*.xml"}
// )
// => 스프링웹(MVC)으로 Controller 테스트 하겠다
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(locations = { "file:src/main/webapp/WEB-INF/spring/*.xml" })
public class SampleControllerTest {
}
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(locations = { "file:src/main/webapp/WEB-INF/spring/*.xml" })
public class SampleControllerTest {
private static final Logger logger = LoggerFactory.getLogger(SampleControllerTest.class);
@Inject
private WebApplicationContext wac;
// MockMvc: 요청, 응답을 처리하는 테스트용 객체
private MockMvc mockMvc;
// @Before: @Test 실행 전에 반드시 처리해야 하는 메서드
@Before
public void setUp() {
// MockMvc 객체를 생성(준비)
this.mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
logger.debug("MockMvc 객체를 생성 완료!(테스트 준비)");
}
@Test
public void controllerTest() {
// 서버 없이 컨트롤러를 테스트
try {
mockMvc.perform(MockMvcRequestBuilders.get("/doA"));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
'⛏️ > Spring' 카테고리의 다른 글
[Spring] member login ver. (0) | 2023.12.08 |
---|---|
[Spring] member join ver. (0) | 2023.12.07 |
[Spring] Controller로 페이지 연결하기(주소 매핑) (0) | 2023.12.04 |
[Spring] 회원정보 조회, 수정, 삭제, 리스트 조회 ver (0) | 2023.12.01 |
[Spring] 로그인 ver (0) | 2023.12.01 |