Merge pull request #10286 from dkapil/task/JAVA-2416_2
JAVA-2416 Move/rename module spring-dispatcher-servlet
This commit is contained in:
commit
4ef0fab13a
2
pom.xml
2
pom.xml
|
@ -640,7 +640,6 @@
|
||||||
<module>spring-data-rest-querydsl</module>
|
<module>spring-data-rest-querydsl</module>
|
||||||
<module>spring-di</module>
|
<module>spring-di</module>
|
||||||
<module>spring-di-2</module>
|
<module>spring-di-2</module>
|
||||||
<module>spring-dispatcher-servlet</module>
|
|
||||||
<module>spring-drools</module>
|
<module>spring-drools</module>
|
||||||
|
|
||||||
<module>spring-ejb</module>
|
<module>spring-ejb</module>
|
||||||
|
@ -1128,7 +1127,6 @@
|
||||||
<module>spring-data-rest</module>
|
<module>spring-data-rest</module>
|
||||||
<module>spring-data-rest-querydsl</module>
|
<module>spring-data-rest-querydsl</module>
|
||||||
<module>spring-di</module>
|
<module>spring-di</module>
|
||||||
<module>spring-dispatcher-servlet</module>
|
|
||||||
<module>spring-drools</module>
|
<module>spring-drools</module>
|
||||||
|
|
||||||
<module>spring-ejb</module>
|
<module>spring-ejb</module>
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
## Spring DispatcherServlet
|
|
||||||
|
|
||||||
This module contains articles about Spring DispatcherServlet
|
|
||||||
|
|
||||||
## Relevant articles:
|
|
||||||
|
|
||||||
- [An Intro to the Spring DispatcherServlet](https://www.baeldung.com/spring-dispatcherservlet)
|
|
|
@ -1,95 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<artifactId>spring-dispatcher-servlet</artifactId>
|
|
||||||
<version>1.0.0</version>
|
|
||||||
<name>spring-dispatcher-servlet</name>
|
|
||||||
<packaging>war</packaging>
|
|
||||||
|
|
||||||
<parent>
|
|
||||||
<groupId>com.baeldung</groupId>
|
|
||||||
<artifactId>parent-spring-5</artifactId>
|
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
|
||||||
<relativePath>../parent-spring-5</relativePath>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework</groupId>
|
|
||||||
<artifactId>spring-web</artifactId>
|
|
||||||
<version>${spring.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework</groupId>
|
|
||||||
<artifactId>spring-webmvc</artifactId>
|
|
||||||
<version>${spring.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>javax.servlet</groupId>
|
|
||||||
<artifactId>javax.servlet-api</artifactId>
|
|
||||||
<version>${javax.servlet-api.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>javax.servlet.jsp.jstl</groupId>
|
|
||||||
<artifactId>jstl-api</artifactId>
|
|
||||||
<version>${jstl-api.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>javax.servlet.jsp</groupId>
|
|
||||||
<artifactId>javax.servlet.jsp-api</artifactId>
|
|
||||||
<version>${javax.servlet.jsp-api.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>javax.servlet</groupId>
|
|
||||||
<artifactId>jstl</artifactId>
|
|
||||||
<version>${jstl.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
|
||||||
<artifactId>jackson-databind</artifactId>
|
|
||||||
<version>${jackson.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>commons-fileupload</groupId>
|
|
||||||
<artifactId>commons-fileupload</artifactId>
|
|
||||||
<version>${commons-fileupload.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
|
||||||
<version>${spring-boot-starter-test.version}</version>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
<build>
|
|
||||||
<finalName>spring-dispatcher-servlet</finalName>
|
|
||||||
<pluginManagement>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.tomcat.maven</groupId>
|
|
||||||
<artifactId>tomcat8-maven-plugin</artifactId>
|
|
||||||
<version>${tomcat8-maven-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<path>/springdispatcherservlet</path>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-war-plugin</artifactId>
|
|
||||||
<version>${maven-war-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<warSourceDirectory>src/main/webapp</warSourceDirectory>
|
|
||||||
<failOnMissingWebXml>false</failOnMissingWebXml>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</pluginManagement>
|
|
||||||
</build>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<tomcat8-maven-plugin.version>3.0-r1655215</tomcat8-maven-plugin.version>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
</project>
|
|
|
@ -1,83 +0,0 @@
|
||||||
package com.baeldung.springdispatcherservlet.configuration;
|
|
||||||
|
|
||||||
import org.springframework.context.annotation.Bean;
|
|
||||||
import org.springframework.context.annotation.ComponentScan;
|
|
||||||
import org.springframework.context.annotation.Configuration;
|
|
||||||
import org.springframework.ui.context.support.ResourceBundleThemeSource;
|
|
||||||
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
|
|
||||||
import org.springframework.web.servlet.config.annotation.*;
|
|
||||||
import org.springframework.web.servlet.resource.PathResourceResolver;
|
|
||||||
import org.springframework.web.servlet.theme.CookieThemeResolver;
|
|
||||||
import org.springframework.web.servlet.theme.ThemeChangeInterceptor;
|
|
||||||
import org.springframework.web.servlet.view.JstlView;
|
|
||||||
import org.springframework.web.servlet.view.UrlBasedViewResolver;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
@Configuration
|
|
||||||
@EnableWebMvc
|
|
||||||
@ComponentScan("com.baeldung.springdispatcherservlet")
|
|
||||||
public class AppConfig implements WebMvcConfigurer {
|
|
||||||
|
|
||||||
public void addViewControllers(ViewControllerRegistry registry) {
|
|
||||||
registry.addViewController("/").setViewName("index");
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Multipart file uploading configuratioin */
|
|
||||||
@Bean
|
|
||||||
public CommonsMultipartResolver multipartResolver() throws IOException {
|
|
||||||
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
|
|
||||||
resolver.setMaxUploadSize(10000000);
|
|
||||||
return resolver;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** View resolver for JSP */
|
|
||||||
@Bean
|
|
||||||
public UrlBasedViewResolver viewResolver() {
|
|
||||||
UrlBasedViewResolver resolver = new UrlBasedViewResolver();
|
|
||||||
resolver.setPrefix("/WEB-INF/jsp/");
|
|
||||||
resolver.setSuffix(".jsp");
|
|
||||||
resolver.setViewClass(JstlView.class);
|
|
||||||
return resolver;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Static resource locations including themes*/
|
|
||||||
@Override
|
|
||||||
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
|
||||||
registry.addResourceHandler("/resources/**/*")
|
|
||||||
.addResourceLocations("/", "/resources/")
|
|
||||||
.setCachePeriod(3600)
|
|
||||||
.resourceChain(true)
|
|
||||||
.addResolver(new PathResourceResolver());
|
|
||||||
}
|
|
||||||
|
|
||||||
/** BEGIN theme configuration */
|
|
||||||
@Bean
|
|
||||||
public ResourceBundleThemeSource themeSource(){
|
|
||||||
ResourceBundleThemeSource themeSource = new ResourceBundleThemeSource();
|
|
||||||
themeSource.setDefaultEncoding("UTF-8");
|
|
||||||
themeSource.setBasenamePrefix("themes.");
|
|
||||||
return themeSource;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
public CookieThemeResolver themeResolver(){
|
|
||||||
CookieThemeResolver resolver = new CookieThemeResolver();
|
|
||||||
resolver.setDefaultThemeName("default");
|
|
||||||
resolver.setCookieName("example-theme-cookie");
|
|
||||||
return resolver;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
public ThemeChangeInterceptor themeChangeInterceptor(){
|
|
||||||
ThemeChangeInterceptor interceptor = new ThemeChangeInterceptor();
|
|
||||||
interceptor.setParamName("theme");
|
|
||||||
return interceptor;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addInterceptors(InterceptorRegistry registry) {
|
|
||||||
registry.addInterceptor(themeChangeInterceptor());
|
|
||||||
}
|
|
||||||
/** END theme configuration */
|
|
||||||
}
|
|
|
@ -1,23 +0,0 @@
|
||||||
package com.baeldung.springdispatcherservlet.configuration;
|
|
||||||
|
|
||||||
import javax.servlet.ServletContext;
|
|
||||||
import javax.servlet.ServletException;
|
|
||||||
import javax.servlet.ServletRegistration;
|
|
||||||
|
|
||||||
import org.springframework.web.WebApplicationInitializer;
|
|
||||||
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
|
|
||||||
import org.springframework.web.servlet.DispatcherServlet;
|
|
||||||
|
|
||||||
public class WebAppInitializer implements WebApplicationInitializer {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onStartup(ServletContext container) throws ServletException {
|
|
||||||
AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
|
|
||||||
context.register(AppConfig.class);
|
|
||||||
context.setServletContext(container);
|
|
||||||
|
|
||||||
ServletRegistration.Dynamic servlet = container.addServlet("dispatcher", new DispatcherServlet(context));
|
|
||||||
servlet.setLoadOnStartup(1);
|
|
||||||
servlet.addMapping("/");
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<configuration>
|
|
||||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
|
||||||
<encoder>
|
|
||||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
|
|
||||||
</pattern>
|
|
||||||
</encoder>
|
|
||||||
</appender>
|
|
||||||
|
|
||||||
<root level="INFO">
|
|
||||||
<appender-ref ref="STDOUT" />
|
|
||||||
</root>
|
|
||||||
</configuration>
|
|
|
@ -1,30 +0,0 @@
|
||||||
<%@taglib uri="http://www.springframework.org/tags" prefix="spring"%>
|
|
||||||
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
|
|
||||||
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
|
|
||||||
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1" %>
|
|
||||||
|
|
||||||
<c:set var="ctx" value="${pageContext.request.contextPath}" />
|
|
||||||
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<title>Spring Dispatcher</title>
|
|
||||||
<link rel="stylesheet" href="${ctx}/<spring:theme code='styleSheet'/>" type="text/css"/>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h2>Hello World!</h2>
|
|
||||||
<br/>
|
|
||||||
<a href="${ctx}/?theme=example">Switch Theme!</a>
|
|
||||||
<a href="${ctx}/?theme=default">Switch Theme!</a>
|
|
||||||
<br/>
|
|
||||||
<br/>
|
|
||||||
<br/>
|
|
||||||
<form action="${ctx}/upload" method="post" enctype="multipart/form-data">
|
|
||||||
<label>Upload a file! </label><input type="file" name="file"/>
|
|
||||||
<input type="submit" value="Upload File"/>
|
|
||||||
</form>
|
|
||||||
<br/>
|
|
||||||
<br/>
|
|
||||||
${message}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,4 +0,0 @@
|
||||||
h2 {
|
|
||||||
color: green;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
h2 {
|
|
||||||
color: red;
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
package com.baeldung;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
|
||||||
import org.springframework.test.context.web.WebAppConfiguration;
|
|
||||||
|
|
||||||
import com.baeldung.springdispatcherservlet.configuration.AppConfig;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
|
||||||
@ContextConfiguration(classes = AppConfig.class)
|
|
||||||
@WebAppConfiguration
|
|
||||||
public class SpringContextTest {
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void whenSpringContextIsBootstrapped_thenNoExceptions() {
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -8,6 +8,7 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring
|
||||||
|
|
||||||
### Relevant Articles:
|
### Relevant Articles:
|
||||||
- [Spring MVC Tutorial](https://www.baeldung.com/spring-mvc-tutorial)
|
- [Spring MVC Tutorial](https://www.baeldung.com/spring-mvc-tutorial)
|
||||||
|
- [An Intro to the Spring DispatcherServlet] (https://www.baeldung.com/spring-dispatcherservlet)
|
||||||
- [The Spring @Controller and @RestController Annotations](https://www.baeldung.com/spring-controller-vs-restcontroller)
|
- [The Spring @Controller and @RestController Annotations](https://www.baeldung.com/spring-controller-vs-restcontroller)
|
||||||
- [A Guide to the ViewResolver in Spring MVC](https://www.baeldung.com/spring-mvc-view-resolver-tutorial)
|
- [A Guide to the ViewResolver in Spring MVC](https://www.baeldung.com/spring-mvc-view-resolver-tutorial)
|
||||||
- [Guide to Spring Handler Mappings](https://www.baeldung.com/spring-handler-mappings)
|
- [Guide to Spring Handler Mappings](https://www.baeldung.com/spring-handler-mappings)
|
||||||
|
|
|
@ -24,6 +24,11 @@
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-validation</artifactId>
|
<artifactId>spring-boot-starter-validation</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-fileupload</groupId>
|
||||||
|
<artifactId>commons-fileupload</artifactId>
|
||||||
|
<version>${commons-fileupload.version}</version>
|
||||||
|
</dependency>
|
||||||
<!-- to enable JSP -->
|
<!-- to enable JSP -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.tomcat.embed</groupId>
|
<groupId>org.apache.tomcat.embed</groupId>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package com.baeldung.springdispatcherservlet.domain;
|
package com.baeldung.model;
|
||||||
|
|
||||||
|
|
||||||
public class User {
|
public class User {
|
|
@ -1,8 +1,8 @@
|
||||||
package com.baeldung.springdispatcherservlet.services;
|
package com.baeldung.services;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.baeldung.springdispatcherservlet.domain.User;
|
import com.baeldung.model.User;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class UserService {
|
public class UserService {
|
|
@ -1,13 +1,22 @@
|
||||||
package com.baeldung.spring.web.config;
|
package com.baeldung.spring.web.config;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.core.io.ClassPathResource;
|
import org.springframework.core.io.ClassPathResource;
|
||||||
import org.springframework.http.MediaType;
|
import org.springframework.http.MediaType;
|
||||||
|
import org.springframework.ui.context.support.ResourceBundleThemeSource;
|
||||||
|
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
|
||||||
import org.springframework.web.servlet.ViewResolver;
|
import org.springframework.web.servlet.ViewResolver;
|
||||||
import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
|
import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
|
||||||
|
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
|
||||||
|
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
||||||
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
|
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
|
||||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||||
|
import org.springframework.web.servlet.resource.PathResourceResolver;
|
||||||
|
import org.springframework.web.servlet.theme.CookieThemeResolver;
|
||||||
|
import org.springframework.web.servlet.theme.ThemeChangeInterceptor;
|
||||||
import org.springframework.web.servlet.view.InternalResourceViewResolver;
|
import org.springframework.web.servlet.view.InternalResourceViewResolver;
|
||||||
import org.springframework.web.servlet.view.JstlView;
|
import org.springframework.web.servlet.view.JstlView;
|
||||||
import org.springframework.web.servlet.view.ResourceBundleViewResolver;
|
import org.springframework.web.servlet.view.ResourceBundleViewResolver;
|
||||||
|
@ -24,6 +33,14 @@ public class WebConfig implements WebMvcConfigurer {
|
||||||
.setViewName("index");
|
.setViewName("index");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Multipart file uploading configuratioin */
|
||||||
|
@Bean
|
||||||
|
public CommonsMultipartResolver multipartResolver() throws IOException {
|
||||||
|
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
|
||||||
|
resolver.setMaxUploadSize(10000000);
|
||||||
|
return resolver;
|
||||||
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public ViewResolver viewResolver() {
|
public ViewResolver viewResolver() {
|
||||||
final InternalResourceViewResolver bean = new InternalResourceViewResolver();
|
final InternalResourceViewResolver bean = new InternalResourceViewResolver();
|
||||||
|
@ -34,6 +51,47 @@ public class WebConfig implements WebMvcConfigurer {
|
||||||
return bean;
|
return bean;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Static resource locations including themes*/
|
||||||
|
@Override
|
||||||
|
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
||||||
|
registry.addResourceHandler("/resources/**/*")
|
||||||
|
.addResourceLocations("/", "/resources/")
|
||||||
|
.setCachePeriod(3600)
|
||||||
|
.resourceChain(true)
|
||||||
|
.addResolver(new PathResourceResolver());
|
||||||
|
}
|
||||||
|
|
||||||
|
/** BEGIN theme configuration */
|
||||||
|
@Bean
|
||||||
|
public ResourceBundleThemeSource themeSource() {
|
||||||
|
ResourceBundleThemeSource themeSource = new ResourceBundleThemeSource();
|
||||||
|
themeSource.setDefaultEncoding("UTF-8");
|
||||||
|
themeSource.setBasenamePrefix("themes.");
|
||||||
|
return themeSource;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public CookieThemeResolver themeResolver() {
|
||||||
|
CookieThemeResolver resolver = new CookieThemeResolver();
|
||||||
|
resolver.setDefaultThemeName("default");
|
||||||
|
resolver.setCookieName("example-theme-cookie");
|
||||||
|
return resolver;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ThemeChangeInterceptor themeChangeInterceptor() {
|
||||||
|
ThemeChangeInterceptor interceptor = new ThemeChangeInterceptor();
|
||||||
|
interceptor.setParamName("theme");
|
||||||
|
return interceptor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addInterceptors(InterceptorRegistry registry) {
|
||||||
|
registry.addInterceptor(themeChangeInterceptor());
|
||||||
|
}
|
||||||
|
|
||||||
|
/** END theme configuration */
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public ViewResolver resourceBundleViewResolver() {
|
public ViewResolver resourceBundleViewResolver() {
|
||||||
final ResourceBundleViewResolver bean = new ResourceBundleViewResolver();
|
final ResourceBundleViewResolver bean = new ResourceBundleViewResolver();
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package com.baeldung.springdispatcherservlet.controller;
|
package com.baeldung.web.controller;
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
|
@ -1,7 +1,8 @@
|
||||||
package com.baeldung.springdispatcherservlet.controller;
|
package com.baeldung.web.controller;
|
||||||
|
|
||||||
|
import com.baeldung.model.User;
|
||||||
|
import com.baeldung.services.UserService;
|
||||||
|
|
||||||
import com.baeldung.springdispatcherservlet.domain.User;
|
|
||||||
import com.baeldung.springdispatcherservlet.services.UserService;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
@ -1,7 +1,8 @@
|
||||||
package com.baeldung.springdispatcherservlet.controller;
|
package com.baeldung.web.controller;
|
||||||
|
|
||||||
|
import com.baeldung.model.User;
|
||||||
|
import com.baeldung.services.UserService;
|
||||||
|
|
||||||
import com.baeldung.springdispatcherservlet.domain.User;
|
|
||||||
import com.baeldung.springdispatcherservlet.services.UserService;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
Loading…
Reference in New Issue