【发布时间】:2018-02-04 05:20:51
【问题描述】:
【问题讨论】:
标签: spring jsp spring-mvc
【问题讨论】:
标签: spring jsp spring-mvc
你不能直接访问WEB-INF文件夹内的jsp页面。要访问它,您需要创建 InternalResourceViewResolver bean 来解析您的 jsp 页面的路径:
@EnableWebMvc
@Configuration
public class AppConfig extends WebMvcConfigurerAdapter {
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
internalResourceViewResolver.setPrefix("/WEB-INF/views/");
internalResourceViewResolver.setSuffix(".jsp");
return internalResourceViewResolver;
}
并且在您的控制器中只返回该 jsp 页面的名称:
@Controller
public class EmployeeController {
@RequestMapping(value = "/add/employee", method = RequestMethod.GET)
public String addEmployee(Model model) {
return "addEmployee";
}
}
【讨论】:
WEB-INF 中的内容不会暴露给公共 URL 空间。您只能从其他文件中包含/访问它。这对于模板等很有用(当然,您的编译代码也驻留在其中)。
将您的公共 JSP 移到 WEB-INF 之外。
【讨论】: