Чтобы Spring мог сканировать и настраивать аннотированные классы @Controller, вам необходимо настроить сканирование компонентов в пакетах, в которых хранятся контроллеры.
т.е.: /src/main/java/guru/webservices/spring/config/AppConfig.java
AppConfig.java:
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
@Configuration
@EnableWebMvc //THIS
@ComponentScan(basePackages = "guru.services") //THIS
public class AppConfig {
}
Также:
@Autowired
private CustomerService customerService;
А затем:
@GetMapping("/{id}")
public ResponseEntity getCustomerById(@PathVariable("id") Long id) {
Customer customer = customerDAO.get(id);
if (customer == null) {
return new ResponseEntity("No Customer found for ID " + id, HttpStatus.NOT_FOUND);
}
return new ResponseEntity(customer, HttpStatus.OK);
}