我有以下结构
我使用的依赖项:
@EnableWebMvc
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/icon/**").addResourceLocations("classpath:/static/img/icon/");
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
}
}
我在index.html试过这些
<img src="icon/signin.svg">
<img src="/icon/signin.svg">
<img src="./icon/signin.svg">
<img src="../static/img/icon/signin.svg">
没有成功。此外,我试图将资源目录移动到主目录,但什么也没有。知道吗?
从Spring Boot 2.0开始,如果您使用@EnableWebSecurity,您必须手动定义哪些目录和文件可以访问,以及由谁访问
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception{
http.authorizeRequests()
.antMatchers("/**").permitAll()
...
}
...
}
在这种情况下,我让每个人都可以访问静态文件夹中的所有内容。在这之后我可以得到签名。svg有两种方式:
<img src="icon/signin.svg"> <!--Because of registry.addResourceHandler("/icon/**").addResourceLocations("classpath:/static/img/icon/"); mapping -->
<img src="img/icon/signin.svg">
您可以尝试如何在springboot2.2.6?中提供静态内容,以获得相同重新措辞问题的答案和其他答案的链接。由于您使用的是Spring Security,您可能需要查看您的安全配置,因为从Spring Boot2.0开始,静态资源默认是安全的https://spring.io/blog/2017/09/15/security-changes-in-spring-boot-2-0-m4
当您添加@EnableWebMvc
时,您将覆盖SpringBoot的所有自动配置。这应该是有效的:
@Configuration
@AutoConfigureAfter(WebMvcAutoConfiguration.class)
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/icon/**").addResourceLocations("classpath:/static/img/icon/");
}
}
另外,我刚刚看了一下您的目录结构的图片,我确信除非我的眼睛掉了,否则您的“资源”文件夹不在src/main
下。它应该就在java
文件夹旁边:
src
|_ main
|_ java
|_ resources
问题内容: 我有两节课:和。后者声明为: 我需要的只是类中的方法(仅在其中,因为会有很多继承的类,而且我不想在所有这些类中都实现此方法),它将从静态调用返回类名。这是我在说的: 当我称它为: 但是父类中的每个声明只能访问父类变量,该变量的值为“ Action”。 有什么可行的方法吗? 问题答案: 总是返回使用该类的类的名称,因此使用静态方法并没有太大帮助。如果该方法不是静态的,则可以简单地使用ge
cmf_get_file_extension($filename) 功能 获取文件扩展名 参数 $filename: string 文件名 返回 string 文件扩展名
X2.2.0新增 sp_get_file_extension($filename) 功能: 获取文件扩展名 参数: $filename: 文件名 返回: 类型string,文件扩展名 使用: $suffix = sp_get_file_extension('23232.png');
问题内容: 我想从 MimeType* 获取 扩展名 。 * 例如: 要将文件保存在Windows或Linux上,我可以使用这种方法从URL下载文件。因此,我只能保存它而没有扩展名(我不想要那样)。 这种方法只允许我获取 MimeType 而不是 扩展名 。 如何使用MimeType编写带有扩展名的文件? 问题答案: 通常有两种方法: 具有MimeTypes到扩展名的映射; 使用某种逻辑进行计算;
我想从一个mimetype中得到扩展。 例如: 为了在Windows或Linux上保存我的文件,我有一个方法,让我从URL下载文件。所以,我只能在没有扩展的情况下保存它(我不想那样)。 这个方法只允许我获取MimeType,而不是扩展。 如何使用MimeType编写扩展名的文件?
问题内容: 我正在尝试: 但是它继续提供我static_path中拥有的服务(如上所述,我在两个单独的路径中有两个不同的,但是我希望能够覆盖)。 问题答案: 从应用程序设置中删除。 然后将您的处理程序设置为: