问题是:
使用Spring 4,我在访问网页时收到了这个消息
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Fri Aug 15 16:41:29 BST 2014
There was an unexpected error (type=Not Found, status=404).
我所拥有的:
我有这个主类:
// src/main/java/abc/Main.java
package abc;
import abc.web.WebAppConfig;
import org.springframework.boot.SpringApplication;
public class Main {
public static void main(String[] args) {
SpringApplication.run(WebAppConfig.class);
}
}
然后我有这个WebAppConfig.class(目前只有一些配置注释):
// src/main/java/abc/web/WebAppConfig.java
package abc.web;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
@ComponentScan
@EnableAutoConfiguration
public class WebAppConfig {
}
而这个控制器HomeController.java:
// src/main/java/abc/web/HomeController.java
package abc.web;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import static org.springframework.web.bind.annotation.RequestMethod.GET;
@Controller
@RequestMapping("/")
public class HomeController {
@RequestMapping(method = GET)
public String home() {
System.out.println("HELLO !!");
return "home";
}
}
你好!!显示在日志中。
最后,我在src/main/java/abc/webapp/home.html
上有一个html文件,其中只有一些html标签,包括一个p
标签,带有Hello, world!
。
问题是:
我知道我错过了渲染视图的方式,但我搜索了几个关于stackoverflow的问题,还没有找到解决方案。
有人能解释一下我如何让Spring渲染一个网页吗?我错过了什么?
提前感谢:)
您可能没有配置模板引擎和视图解析器。请参阅此处的thymeleaf示例http://www.thymeleaf.org/doc/thymeleafspring.html因为thymeleaf模板是有效的超文本标记语言代码,反之,您可以使用它。
"如何让Spring Boot渲染网页?"问题的最简单答案是:将您的home.html文件放在src/main/资源/静态/
文件夹中。该页面将在/home.html
URL下可用。
更多细节留档。
Spring Boot将自动使用并配置Thymeleaf作为视图渲染引擎,只要它位于类路径上。要将其放在类路径上,请使用
compile("org.springframework.boot:spring-boot-starter-thymeleaf")
在gradle构建文件中。
如果您使用的是maven,请添加依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
在您的情况下,为了显示home.html
视图(根据您使用的控制器),您需要将其放在/资源/模板
下。
有关完整示例,请参阅本指南。
我正在使用spring boot尝试建立自己的迷你网站。 我有控制器 还有一个html文件resources/templates/index,我正试图呈现它,但我只呈现了文本“index”。如何返回html文件而不是文本?
web-frame 模块可自定义渲染当前网页 进程: 渲染进程 例如放大当前页至 200%. 1 const {webFrame} = require('electron') 2 webFrame.setZoomFactor(2) Copied! 方法 webFrame.setZoomFactor(factor) 用途:设置页面的缩放系数 factor Number - 缩放系数 注意:缩放系数
问题内容: 我想使用Express 3 呈现原始页面,如下所示: 这是我配置服务器以呈现原始HTML页面的方式(此过时的问题启发了这一点): 不幸的是,使用此配置,页面将挂起并且永远无法正确呈现。我做错了什么?如何在没有精美的渲染引擎(如Jade和EJS)的情况下使用Express3渲染原始HTLM? 问题答案: 如果您实际上不需要将数据注入模板,则express中最简单的解决方案是使用静态文件服
在React中你可以封装任意内容的用户界面Component,只要你有需要的话!然后,你可以在渲染这些组件到dom中的时候,根据需要,选择其中的一部分进行渲染,这个取决你的组件state。 在react中,使用条件渲染跟你在javascript中使用条件语句是一样的,你可以使用操作符if或者条件语句等语法有条件地根据当前的state渲染Elements,最后再更新dom以显示符合当前element
问题内容: 我正在尝试使用angular js将css动态添加到我的html头中。这是示例代码 此代码可以正常工作,但是当浏览器加载页面时,它尝试使用原始的angularjs模板获取CSS资源,并且在Firebug的网络标签中看到“ 404 not found error”。 页面完全加载后,它将替换模板值并加载适当的CSS。 有没有一种方法可以避免404错误并在angularjs处理后使其加载C
渲染过程 1.最初的最初,我们要知道 ./build/webpack.base.conf.js 这个文件,是webpack打包的主要配置文件 其中 module.exports = { entry : { app: './src/main.js' // 这里就定义了vue的入口文件 } } 知道了这个打包文件,我们就可以知道接下来的事儿了。 2.找到index.html ,可