Java 在名为';dispatcherServlet';
我对应用程序进行了配置,并将“DispatcherServlet”编码为viewResolver,如下所示:Java 在名为';dispatcherServlet';,java,spring,spring-mvc,requestdispatcher,Java,Spring,Spring Mvc,Requestdispatcher,我对应用程序进行了配置,并将“DispatcherServlet”编码为viewResolver,如下所示: @Configuration @EnableWebMvc @ComponentScan ({"controllers"}) @EnableAutoConfiguration @SpringBootApplication public class Application { @Bean public InternalResourceViewResolver viewResolver()
@Configuration
@EnableWebMvc
@ComponentScan ({"controllers"})
@EnableAutoConfiguration
@SpringBootApplication
public class Application {
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setViewClass(JstlView.class);
viewResolver.setPrefix("/WEB-INF/views/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
public static void main(String[] args){
SpringApplication.run(Application.class, args);
}
}
处理请求的控制器类如下所示:
@Controller
public class HelloControllerImpl {
@RequestMapping(value= "/welcome", method= RequestMethod.GET)
public String getWelcomePage(ModelMap model) {
model.addAttribute("message", "Spring 3 MVC - Hello World");
model.addAttribute("name", "vzateychuk");
return "welcome";
}
}
视图文件:\WEB-INF\views\welcome.jsp
<html>
<body>
<h1>Hello, : ${name}</h1>
<h2>Message : ${message}</h2>
</body>
</html>
。。。。
有人能猜出什么地方不对吗?(可能是因为anotation@EnableAutoConfiguration不允许定义viewResolver的前缀?configure resolver configuration application.properties
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
spring boot将自动配置内部视图解析器
您需要在中添加jstl JAR
spring boot为您提供了一个配置解析器配置应用程序。属性
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
spring boot将自动配置内部视图解析器
您需要在中添加jstl JAR
spring boot为您准备了一个我做了一个与您类似的简单项目。您可以查看我的 你要做的是:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<scope>provided</scope>
</dependency>
org.apache.tomcat.embed
mvn spring-boot:run
mvn spring启动:运行
您也可以将您的想法配置为运行该命令。转到运行->编辑配置,单击左侧的绿色加号并选择Maven。然后在“命令行”字段中写入“spring boot:run”,按ok。
并运行此配置
- @配置,因为@SpringBootApplication已经有了它
- @启用webmvc,因为SpringBoot在类路径上看到SpringWebMVC时会自动添加它
- @EnableAutoConfiguration,因为@SpringBootApplication已经有了它
请注意,您需要@ComponentScan({“controllers”}),因为您的包结构-您的应用程序类位于与控制器不同的包中。我做了一个与您类似的简单项目。您可以查看我的 你要做的是:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<scope>provided</scope>
</dependency>
org.apache.tomcat.embed
mvn spring-boot:run
mvn spring启动:运行
您也可以将您的想法配置为运行该命令。转到运行->编辑配置,单击左侧的绿色加号并选择Maven。然后在“命令行”字段中写入“spring boot:run”,按ok。
并运行此配置
- @配置,因为@SpringBootApplication已经有了它
- @启用webmvc,因为SpringBoot在类路径上看到SpringWebMVC时会自动添加它
- @EnableAutoConfiguration,因为@SpringBootApplication已经有了它
注意,您需要@ComponentScan({“controllers”}),因为您的包结构-您的应用程序类位于与控制器不同的包中。您是否向
/WEB-INF/views/welcome.tmpl
端点发送了请求?您应该将请求发送到/welcome
端点阿里,我正在尝试请求端点:检查您是否在@ComponentScan中扫描了正确的包罐头包装是控制器,因此没有实际的CLUE您的项目结构是什么?您能提供welcome.jsp文件的位置吗?您是否向/WEB-INF/views/welcome.tmpl
端点发送了请求?您应该向/welcome
端点发送请求。阿里,我正在尝试请求端点:检查您是否扫描了@ComponentScan中的正确软件包扫描软件包是控制器,因此没有实际的CLUE您的项目结构是什么?您能提供welcome.jsp文件的位置吗?谢谢,终于可以工作了。问题与IDEA社区版本有关。谢谢,伙计们。工作了。谢谢。谢谢,终于可以工作了。问题与IDEA社区版本有关y版本。谢谢你们,伙计们。工作了。谢谢。谢谢你们,kuhajeyan,它终于工作了!但有一件事我没料到:只有*.jsp可能(不是*.html或其他)用于视图。谢谢你们,kuhajeyan,它终于工作了!但有一件事我没料到:只有*.jsp可能(不是*.html或其他)用于视图。