diff --git a/spring-5-mvc/src/main/java/com/baeldung/html/HtmlApplication.java b/spring-5-mvc/src/main/java/com/baeldung/html/HtmlApplication.java
new file mode 100644
index 0000000000..ad660559c7
--- /dev/null
+++ b/spring-5-mvc/src/main/java/com/baeldung/html/HtmlApplication.java
@@ -0,0 +1,12 @@
+package com.baeldung.html;
+
+import org.springframework.boot.*;
+import org.springframework.boot.autoconfigure.*;
+
+@SpringBootApplication
+public class HtmlApplication
+{
+ public static void main(String[] args) {
+ SpringApplication.run(HtmlApplication.class, args);
+ }
+}
diff --git a/spring-5-mvc/src/main/java/com/baeldung/html/HtmlController.java b/spring-5-mvc/src/main/java/com/baeldung/html/HtmlController.java
new file mode 100644
index 0000000000..23674d165e
--- /dev/null
+++ b/spring-5-mvc/src/main/java/com/baeldung/html/HtmlController.java
@@ -0,0 +1,17 @@
+package com.baeldung.html;
+
+import org.springframework.http.*;
+import org.springframework.stereotype.*;
+import org.springframework.web.bind.annotation.*;
+
+@Controller
+public class HtmlController
+{
+ @GetMapping(value = "/welcome", produces = MediaType.TEXT_HTML_VALUE)
+ @ResponseBody
+ public String welcomeAsHTML()
+ {
+ return "\n" + "\n" +
+ "
\n" + "Hello world\n" + "\n" + "";
+ }
+}
diff --git a/spring-5-mvc/src/test/java/com/baeldung/html/HtmlControllerTest.java b/spring-5-mvc/src/test/java/com/baeldung/html/HtmlControllerTest.java
new file mode 100644
index 0000000000..8eba4e8cf9
--- /dev/null
+++ b/spring-5-mvc/src/test/java/com/baeldung/html/HtmlControllerTest.java
@@ -0,0 +1,30 @@
+package com.baeldung.html;
+
+import org.junit.jupiter.api.*;
+import org.springframework.beans.factory.annotation.*;
+import org.springframework.boot.test.autoconfigure.web.servlet.*;
+import org.springframework.test.web.servlet.*;
+import org.springframework.test.web.servlet.request.*;
+import static org.junit.jupiter.api.Assertions.*;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
+
+@WebMvcTest(HtmlController.class)
+class HtmlControllerUnitTest {
+
+ @Autowired
+ private MockMvc mockMvc;
+
+ private final String expectedHtmlResponse =
+ "\n" + "\n" +
+ "\n" + "Hello world\n" + "\n" + "";
+
+ @Test
+ void whenGETRequestToCorrectURL_thenReturnCorrectWelcomeMessage() throws Exception {
+ MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/welcome"))
+ .andExpect(status().isOk())
+ .andReturn();
+
+ String resultDOW = result.getResponse().getContentAsString();
+ assertEquals(expectedHtmlResponse, resultDOW);
+ }
+}