Skip to content

Commit ad79c92

Browse files
authored
[JAVA-40665] Moving some article links on Github - spring-mvc-basics (#18124)
1 parent 2f962dc commit ad79c92

File tree

81 files changed

+496
-292
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+496
-292
lines changed

spring-web-modules/spring-mvc-basics-2/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ This module contains articles about Spring MVC
77
- [Template Engines for Spring](https://www.baeldung.com/spring-template-engines)
88
- [Spring and Servlet 4 – The PushBuilder](https://www.baeldung.com/spring-5-push)
99
- [Servlet Redirect vs Forward](https://www.baeldung.com/servlet-redirect-forward)
10-
- [Guide to Spring Email](https://www.baeldung.com/spring-email)
1110
- [Using ThymeLeaf and FreeMarker Emails Templates with Spring](https://www.baeldung.com/spring-email-templates)
1211
- [Request Method Not Supported (405) in Spring](https://www.baeldung.com/spring-request-method-not-supported-405)
12+
- [Using Enums as Request Parameters in Spring](https://www.baeldung.com/spring-enum-request-param)
13+
- [How to Set JSON Content Type in Spring MVC](https://www.baeldung.com/spring-mvc-set-json-content-type)
1314
- More articles: [[<-- prev]](../spring-mvc-basics)[[more -->]](../spring-mvc-basics-3)

spring-web-modules/spring-mvc-basics-2/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.springframework.context.annotation.Bean;
77
import org.springframework.context.annotation.ComponentScan;
88
import org.springframework.context.annotation.Configuration;
9+
import org.springframework.format.FormatterRegistry;
910
import org.springframework.http.converter.HttpMessageConverter;
1011
import org.springframework.http.converter.StringHttpMessageConverter;
1112
import org.springframework.http.converter.feed.RssChannelHttpMessageConverter;
@@ -19,6 +20,7 @@
1920
import org.springframework.web.servlet.view.ContentNegotiatingViewResolver;
2021
import org.springframework.web.servlet.view.InternalResourceViewResolver;
2122

23+
import com.baeldung.spring.configuration.converter.StringToEnumConverter;
2224
import com.baeldung.spring.controller.rss.ArticleRssFeedViewResolver;
2325
import com.baeldung.spring.controller.rss.JsonChannelHttpMessageConverter;
2426

@@ -61,4 +63,9 @@ public void configureMessageConverters(List<HttpMessageConverter<?>> converters)
6163
converters.add(new JsonChannelHttpMessageConverter());
6264
}
6365

66+
@Override
67+
public void addFormatters(FormatterRegistry registry) {
68+
registry.addConverter(new StringToEnumConverter());
69+
}
70+
6471
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.spring.config.converter;
1+
package com.baeldung.spring.configuration.converter;
22

33
import org.springframework.core.convert.converter.Converter;
44
import org.springframework.stereotype.Component;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.controller.controller;
1+
package com.baeldung.spring.controller;
22

33
import java.util.HashMap;
44
import java.util.Map;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.spring.exceptions;
1+
package com.baeldung.spring.exception;
22

33
import org.springframework.core.convert.ConversionFailedException;
44
import org.springframework.http.HttpStatus;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
package com.baeldung.controller.contenttype;
2+
3+
import static org.junit.jupiter.api.Assertions.assertEquals;
4+
5+
import org.junit.jupiter.api.BeforeEach;
6+
7+
import org.junit.jupiter.api.Test;
8+
import org.springframework.test.web.servlet.MockMvc;
9+
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
10+
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
11+
12+
import com.baeldung.spring.controller.GreetingsController;
13+
14+
public class GreetingsControllerUnitTest {
15+
16+
private MockMvc mockMvc;
17+
18+
@BeforeEach
19+
void setUp() {
20+
mockMvc = MockMvcBuilders.standaloneSetup(new GreetingsController())
21+
.build();
22+
}
23+
24+
@Test
25+
public void givenReturnTypeIsString_whenJacksonOnClasspath_thenDefaultContentTypeIsJSON() throws Exception {
26+
27+
// Given
28+
String expectedMimeType = "application/json";
29+
30+
// Then
31+
String actualMimeType = this.mockMvc.perform(MockMvcRequestBuilders.get("/greetings-with-response-body", 1))
32+
.andReturn()
33+
.getResponse()
34+
.getContentType();
35+
36+
assertEquals(expectedMimeType, actualMimeType);
37+
38+
}
39+
40+
@Test
41+
public void givenReturnTypeIsResponseEntity_thenDefaultContentTypeIsJSON() throws Exception {
42+
43+
// Given
44+
String expectedMimeType = "application/json";
45+
46+
// Then
47+
String actualMimeType = this.mockMvc.perform(MockMvcRequestBuilders.get("/greetings-with-response-entity", 1))
48+
.andReturn()
49+
.getResponse()
50+
.getContentType();
51+
52+
assertEquals(expectedMimeType, actualMimeType);
53+
}
54+
}

spring-web-modules/spring-mvc-basics-3/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
This module contains articles about Spring MVC
44

55
## Relevant articles:
6-
- [How to Read HTTP Headers in Spring REST Controllers](https://www.baeldung.com/spring-rest-http-headers)
76
- [A Custom Data Binder in Spring MVC](https://www.baeldung.com/spring-mvc-custom-data-binder)
87
- [Spring Validation Message Interpolation](https://www.baeldung.com/spring-validation-message-interpolation)
9-
- [Spring MVC Custom Validation](https://www.baeldung.com/spring-mvc-custom-validator)
10-
- [Using Enums as Request Parameters in Spring](https://www.baeldung.com/spring-enum-request-param)
118
- [Guide to Flash Attributes in a Spring Web Application](https://www.baeldung.com/spring-web-flash-attributes)
129
- [Reading HttpServletRequest Multiple Times in Spring](https://www.baeldung.com/spring-reading-httpservletrequest-multiple-times)
10+
- [Spring @RequestMapping New Shortcut Annotations](https://www.baeldung.com/spring-new-requestmapping-shortcuts)
11+
- [Spring MVC Tutorial](https://www.baeldung.com/spring-mvc-tutorial)
12+
- [An Intro to the Spring DispatcherServlet](https://www.baeldung.com/spring-dispatcherservlet)
1313
- More articles: [[<-- prev]](../spring-mvc-basics-2)[[more -->]](../spring-mvc-basics-4)

spring-web-modules/spring-mvc-basics-3/pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,6 @@
1919
<groupId>org.springframework.boot</groupId>
2020
<artifactId>spring-boot-starter-web</artifactId>
2121
</dependency>
22-
<dependency>
23-
<groupId>org.springframework.boot</groupId>
24-
<artifactId>spring-boot-starter-validation</artifactId>
25-
</dependency>
2622
<dependency>
2723
<groupId>org.springframework.boot</groupId>
2824
<artifactId>spring-boot-starter-test</artifactId>
@@ -66,6 +62,10 @@
6662
<artifactId>httpclient</artifactId>
6763
<version>${httpclient.version}</version>
6864
</dependency>
65+
<dependency>
66+
<groupId>jakarta.validation</groupId>
67+
<artifactId>jakarta.validation-api</artifactId>
68+
</dependency>
6969
</dependencies>
7070

7171
<build>

0 commit comments

Comments
 (0)