Java 访问静态资源SpringMVC4
我已将Spring MVC设置为如下,但未显示logo.png图像。我使用的是Spring4.2.0.RELEASE Image logo.png位于src/main/resources/images/logo.png下 AppWebConfiguration.javaJava 访问静态资源SpringMVC4,java,spring-mvc,jakarta-ee,Java,Spring Mvc,Jakarta Ee,我已将Spring MVC设置为如下,但未显示logo.png图像。我使用的是Spring4.2.0.RELEASE Image logo.png位于src/main/resources/images/logo.png下 AppWebConfiguration.java @Configuration @EnableWebMvc @ComponentScan(basePackages="br.com.casadocodigo.loja") public class AppWebConfigurat
@Configuration
@EnableWebMvc
@ComponentScan(basePackages="br.com.casadocodigo.loja")
public class AppWebConfiguration extends WebMvcConfigurerAdapter {
@Bean
public InternalResourceViewResolver internalResourceViewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views");
resolver.setSuffix(".jsp");
return resolver;
}
@Bean(name="messageSource")
public MessageSource messageResource() {
ReloadableResourceBundleMessageSource bundle =
new ReloadableResourceBundleMessageSource();
bundle.setBasename("WEB-INF/messages");
bundle.setDefaultEncoding("UTF-8");
bundle.setCacheSeconds(1);
return bundle;
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry
.addResourceHandler("/resources/**")
.addResourceLocations("/resources/images")
.setCachePeriod(3600)
.resourceChain(true)
.addResolver(new PathResourceResolver());
}
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
}
ServletSpringMVC.java
public class ServletSpringMVC extends
AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return null;
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class[] {AppWebConfiguration.class, JPAConfiguration.class};
}
@Override
protected String[] getServletMappings() {
return new String[] {"/"};
}
}
公共类ServletSpringMVC扩展
AbstractAnnotationConfigDispatchersServletInitializer{
@凌驾
受保护类[]getRootConfigClasses(){
返回null;
}
@凌驾
受保护类[]getServletConfigClasses(){
返回新类[]{AppWebConfiguration.Class,JPAConfiguration.Class};
}
@凌驾
受保护的字符串[]getServletMappings(){
返回新字符串[]{”/“};
}
}
JSP页面:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<div>
<img src="${pageContext.request.contextPath}/resources/images/logo.png"
alt=""/>
</div>
试试这个代码
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/").setCachePeriod(31556926);
}
/src/main/resources
是当前配置查看的类路径的根。您还配置了一个资源链,但配置了一个路径解析器
,它将始终返回null
。您建议如何设置@戴纳姆