小工具      在线工具  汉语词典  dos游戏  css  js  c++  java

spring boot整合thymeleaf接口返回接口返回html数据浏览器不显示

# Spring Boot,spring boot,java,spring 额外说明

收录于:15天前

spring boot项目集成了thymeleaf:

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-thymeleaf</artifactId>

 </dependency>

配置文件释放静态资源

#释放静态资源
spring.mvc.static-path-pattern=/static/**

接口返回thymeleaf引擎构建的页面

@Controller
public class UserController {
    

    @Autowired
    private UserService userService;


    @GetMapping(value = "/")
    String loginMEthod(){
    
        return "index.html";
    }


    @PostMapping(value = "/login")
    String loginIdentify(@RequestParam("user") String user,@RequestParam("password") String password){
    
        User user1 = new User();
        user1.setUserName(user);
        user1.setPassWord(password);
        if (userService.selectUser(user1)){
    
            return "home.html";
        }else {
    
            return "index.html";
        }

    }

在这里插入图片描述
在这里插入图片描述
如上图所示接口返回html的文件,但浏览器却不显示。造成这个结果的原因是:Thymeleaf 模板默认使用 templates 作为视图文件夹,以 /templates 为前缀,.html 为后缀。

在这里插入图片描述

我在写界面的时候又写了HTML,导致错误。这将返回名为 xxx.html 的文件的内容。也可以通过以下配置进行更改:

在这里插入图片描述

这样配置后,页面就不会返回了,但是找不到路径、找不到后缀的问题就消除了。最后,跳转到其他页面是控制器的功能项,需要在控制器中更改。这就是使用受控请求和转发。 。

spring mvc请求与转发https://blog.csdn.net/xwh3165037789/article/details/123254513

在这里插入图片描述

修改控制器,将请求转发到对应的连接。也可以通过以下方法直接返回视图:

@GetMapping(value = "/login")
public ModelAndView method4(){
    
    ModelAndView view =new ModelAndView();
    view.setViewName("home");
    return view;
}

Error resolving template [login], template might not exist or might not be accessible by any of the configured Template Resolvers

该错误的意思是view.setViewName("home")视图解析器的名称没有找到。

. . .

相关推荐

额外说明

Experience Design(XD)软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 Experience Design(XD)是Adobe公司开发的一款用户体验设计工具,广泛应用于网页设计、移动应用设计、交互设计等领域。以下是XD软件的主要特点和功能: 界面设计:XD提供了丰富的界面元素和

额外说明

SQL Server 2012还原数据库时找不到.bak

    很奇怪,从别的机构上备份过来的bak找不到,后面换了个路径就找到了, 没事先创建数据库前提下。      

额外说明

Java 多线程学习

文章目录 1、线程简介 1.1 多任务理解 1.2 多线程理解 1.3 线程与进程 核心概念; 2、线程实现 2.1 第一种:继承 Thread 类,重写 run 方法 2.2 第二种: 继承 Thread 类 实现 Runnable 接口 2.3 第三

额外说明

24.Django中常用的查询数据的方法以及查询对象的条件

Django中对数据的查询: (1)常用的查询方法: 获取所有记录: s = User.objects.all() 获取第一条数据: s = User.objects.first() 获取最后一条数据: s = User.objects.

额外说明

Java-扑克牌的创建以及发放

Java-扑克牌的创建以及发放 题目:创建一个扑克牌(不需要包含大小王),分别分发给3个人,一个人发5张牌,输出结果要求包含全套牌(52张牌),以及3个人各自的牌的花色以及数字。 1.扑克牌的源代码 2.扑克牌运行结果 3.扑克牌代码创建原理讲解 3.1

额外说明

使用Netty编写异步非阻塞Socket tcp通信,和TCP粘包、拆包问题解决

使用Netty编写异步非阻塞Socket tcp通信,和TCP粘包、拆包问题解决 一、Netty应用场景 分布式开源框架中dubbo、Zookeeper,RocketMQ底层rpc通讯使用就是netty。 游戏开发中,底层使用netty通讯。 二、net

额外说明

[Ext JS] 组件浮动一篇通(floating、alignTo)

文章目录 标准的CSS浮动的概念 无浮动效果 有浮动的效果 Ext JS中的浮动 浮动组件定义方式 对其位置(position) 其他配置 对其代码示例 实战的问题: 标准的CSS浮动的概念 浮动是CSS就有的特性,通过float属性进行设置。在HTML

额外说明

Activiti7进阶

Activiti进阶 一、流程实例 什么是流程实例 流程实例(ProcessInstance)代表流程定义的执行实例。 一个流程实例包括了所有的运行节点。我们可以利用这个对象来了解当前流程实例的进度等信息。 例如:用户或程序按照流程定义内容发起一个流程,

额外说明

面向Java开发者的ChatGPT提示词工程(7)

在如今信息爆炸的时代,我们面临着海量的文字信息,很难抽出足够的时间去阅读所有感兴趣的内容。然而,大语言模型为我们提供了一种有效的解决方案:通过自动文本摘要,帮助我们快速获取文章的核心内容。这种技术已经被广泛应用于各种软件应用程序中。 以 ChatGPT

额外说明

十三、Pod的资源控制器类型

Pod 的资源控制器类型 一、Pod 的资源控制器类型 什么是控制器呢?简单来说,控制器就好比是影视剧里面的剧本,演员会根据剧本所写的内容来针对不同的角色进行演绎,而我们的控制器就好比是剧本,Kubernetes 会根据我们所定义的规则,或者是按照我们写

ads via 小工具