版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Wyx_wx/article/details/88595770
跳转 JSP 所需要的 jar 包:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
由于最近写的都是纯后台项目,与前端用 JSON 进行数据交互,所以所有的 Controller 都是直接用 @RestController 进行注解,但是该注解是无法完成从 Controller 到 JSP 的映射的(踩坑 * 1),必须要用 @Controller 注解
WebSocketController:
package com.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
//@RestController
@Controller
public class WebSocketController {
@GetMapping(value = "/transform")
public String webSocket(){
return "index";
}
}
index.jsp:
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>
准备好要跳转的页面之后,开始编写映射配置文件:
MyConfigurer:
package com.demo.conf;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
import org.springframework.web.servlet.view.JstlView;
@Configuration
public class MyConfigurer extends WebMvcConfigurerAdapter {
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/");
viewResolver.setSuffix(".jsp");
viewResolver.setViewClass(JstlView.class);
return viewResolver;
}
}