더북(TheBook)

3. BookController 클래스에 다음 내용을 추가합니다.

코드13-14 BookController.java

package com.springmvc.controller;
...
import com.springmvc.validator.UnitsInStockValidator;

@Controller
@RequestMapping("/books")
public class BookController {

    @Autowired
    private BookService bookService;

    @Autowired
    // UnitsInStockValidator의 인스턴스 선언 
    private UnitsInStockValidator unitsInStockValidator; 
    ...
    @InitBinder
    public void initBinder(WebDataBinder binder) {
        binder.setValidator(unitsInStockValidator); // 생성한 unitsInStockValidator 설정 
        binder.setAllowedFields("bookId", "name", "unitPrice", "author", "description",
                               "publisher", "category", "unitsInStock", "totalPages", 
                               "releaseDate", "condition", "bookImage");
    }
    ...
}

생성한 UnitsInStockValidator의 인스턴스를 선언합니다.

initBinder() 메서드의 매개변수 binder 객체에 setValidator() 메서드를 사용하여 생성한 Validator 인터페이스의 구현체 unitsInStockValidator를 설정합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.