使用spring框架把jsp放在web-inf文件夹,运行jsp文件报404错误
时间: 2024-03-24 13:37:28 浏览: 182
将JSP文件放在web-inf文件夹中,是为了保证JSP文件不会被直接访问,只能在服务器端通过转发或包含的方式进行访问。因此,如果您直接访问JSP文件,则会收到404错误。
解决该问题的方法是将JSP文件移动到web应用程序的根目录或放在web-inf文件夹的子文件夹中,并将JSP文件与Web应用程序的其他部分一起访问。
另外,如果您使用的是Spring MVC框架,则应该将JSP文件放在src/main/webapp/WEB-INF/views目录下,并在Controller中配置视图解析器来解析JSP文件。例如:
```java
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.example")
public class AppConfig implements WebMvcConfigurer {
@Autowired
private ApplicationContext applicationContext;
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/views/");
viewResolver.setSuffix(".jsp");
viewResolver.setApplicationContext(applicationContext);
registry.viewResolver(viewResolver);
}
}
```
请注意,这里使用的是InternalResourceViewResolver视图解析器,它将会自动查找/WEB-INF/views/目录下的JSP文件。您也可以使用其他视图解析器,例如ThymeleafViewResolver或FreeMarkerViewResolver。
阅读全文