我是春季框架工作和Spring启动的新手。我正在尝试使用CSS,javascript,js添加静态html文件。文件结构是
我的html文件头看起来像这样
<html xmlns:th="http://www.thymeleaf.org"> <head> <title>HeavyIndustry by HTML5Templates.com</title> <Meta http-equiv="content-type" content="text/html; charset=utf-8" /> <Meta name="description" content="" /> <Meta name="keywords" content="" /> <link rel="stylesheet" type="text/css" media="all" href="css/5grid/core.css" th:href="@{css/5grid/core}" /> <link rel="stylesheet" type="text/css" href="css/5grid/core-desktop.css" /> <link rel="stylesheet" type="text/css" href="css/5grid/core-1200px.css" /> <link rel="stylesheet" type="text/css" href="css/5grid/core-noscript.css" /> <link rel="stylesheet" type="text/css" href="css/style.css" /> <link rel="stylesheet" type="text/css" href="css/style-desktop.css" /> <script src="css/5grid/jquery.js" type="text/javascript"></script> <script src="css/5grid/init.js?use=mobile,desktop,1000px&mobileUI=1&mobileUI.theme=none" type="text/javascript"></script> <!--[if IE 9]><link rel="stylesheet" href="css/style-ie9.css" /><![endif]--> </head>
当我运行spring项目时,只显示内容,CSS不被应用。浏览器在控制台中显示以下错误
404找不到错误的.css,.js文件
有些身体帮我解决这个问题。谢谢。
解决方法
你需要把你的css放在/ resources / static / css中。这个变化解决了我的问题。这是我当前的目录结构。
src main java controller WebAppMain.java resources views index.html static css index.css bootstrap.min.css
这是我的模板解析器:
public class WebAppMain { public static void main(String[] args) { SpringApplication app = new SpringApplication(WebAppMain.class); System.out.print("Starting app with System Args: [" ); for (String s : args) { System.out.print(s + " "); } System.out.println("]"); app.run(args); } @Bean public ViewResolver viewResolver() { ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setTemplateMode("XHTML"); templateResolver.setPrefix("views/"); templateResolver.setSuffix(".html"); SpringTemplateEngine engine = new SpringTemplateEngine(); engine.setTemplateResolver(templateResolver); ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); viewResolver.setTemplateEngine(engine); return viewResolver; } }
以下是我的index.html:
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring3-3.dtd"> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"> <head> <title>Subscribe</title> <Meta charset="utf-8" /> <Meta http-equiv="X-UA-Compatible" content="IE=edge" /> <Meta name="viewport" content="width=device-width,initial-scale=1" /> <!-- Bootstrap --> <link type="text/css" href="css/bootstrap.min.css" rel="stylesheet" /> <link type="text/css" href="css/index.css" rel="stylesheet" /> </head> <body> <h1> Hello</h1> <p> Hello World!</p> <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <!-- Include all compiled plugins (below),or include individual files as needed --> <script src="js/bootstrap.min.js"></script> </body> </html>