Stereotypes are part of Spring annotations config, used with @ComponentScan. Annotations: @Components – is a generic stereotype for any Spring managed components. @Service – annotates classes at the service layer, code that holds business layer. @Repository – annotation used for classes from the persistence layer. Catches specific exceptions and re-throws them as Spring unified unchecked…
Category: Spring
Proxies
Type of proxies available in Spring: JDK Proxy CGLib proxy also called dynamic proxiescomes with JDKonly for Interfacesall interfaces are proxies extra lib included in Springcan intercept protected and public methodsused when interfaces are not availablecannot be applied to final classes or methodsused by Spring Boot Key JDK dynamic proxy CGLIB proxy Basic It can…
Bean Scopes
Bean Scopes
Spring MVC Tests
MVC Test framework Provide support for Spring MVC code, having requests processed through DispatcherServlet without container. It uses MockMvcRequestBuilders and MockMvcResultMatchers. Web environment types: DEFINED_PORT, MOCK, NONE, RANDOM_PORT. Default is Mock @LocalServerPort or @Value(“${local.server.port}”) to get test local port. TestRestTemplate Alternative to RestTemplate for integration tests. Slice testing Performs isolated testing within a slice of an application,…
Spring Exception Handler
Error Handling for REST with Spring Before Spring 3.2 the two main approaches to handle exceptions where HandleExceptionResolver or @ExceptionHandler annotation. The it was added @ControllerAdvice and ResponseStatusException. Controller level (MVC) This strategy only works for active controllers is not global to the entire application. HandleExceptionResolver This is enabled by default in DispatchServlet. DefaultHandlerExceptionResolver Used…