我试图在spring boot中使用自动配置的服务静态内容。
我认为将内容放到/static/
或/resources/
并在@Controller
上进行配置就可以了。
在我的项目中,它看起来根本不起作用。
我将它与spring-boot-sample-web-ui
进行了比较,唯一不同的是包装。有jar
我有war
包装。
请您确认一下,在war
打包的春季启动中,这个自动配置的静态内容服务不起作用?
答案 0 :(得分:1)
首先在static
中创建一个名为src/main/resources
的文件夹。
现在,如果您希望默认显示某些内容,可以将index.html添加到该文件夹,然后将其显示为您的目标网页(例如:http://localhost:8080/my-app-name
)
然后,如果您有其他内容,则可以按类型创建文件夹,将其放入内部。
前:
images -> src/main/resources/static/images
js -> src/main/resources/static/js
如果您将login.js
文件放在js
文件夹上方,则可以从网址http://localhost:8080/my-app-name/js/login.js
答案 1 :(得分:-1)
而不是main
方法,您需要定义一个servletInitializer(这个是创建web.xml的替代方法)
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;
public class MyServletInitializerextends extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
}
编辑:不要忘记将其添加到componentScan