Springboot如何使用Map将错误提示输出到页面

主要思路:在controller层我们将错误信息put进map中,然后通过视图解析器跳转到目标页面,在目标页面中在通过指定标签内的th:text将错误消息取出。

例:

1.编写controller代码

@PostMapping("/user/login")
  public String login(@RequestParam("username") String username,
            @RequestParam("password") String password,
            Map<String,Object> map
  ){
    if (!StringUtils.isEmpty(username) && "123456".equals(password)){
      return "dashboard";
    }else {
      map.put("msg","用户名或密码错误");
      return "login";
    }
  }

代码解读:

@PostMapping("/user/login")等价于@RequestMapping(value ="/user/login" ,method = RequestMethod.POST)

2.到目标html页面取出错误提示信息

<p style="color: red" th:text="${msg}" th:if="${not #strings.isEmpty(msg)}"></p>

代码解读:

1.th:if 的优先级比 th:text高,所以会先执行th:if中的判断逻辑,只有th:if中的逻辑为true时才会显示th:text中的内容。

2.strings是thymeleaf的内置对象,可以对字符串内容进行操作。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 解决SpringBoot整合Mybatis扫描不到Mapper的问题

    闲来无事,想学学springboot,开始搭建一个项目,但是一直显示mapper扫描不到的错误: "Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userController': Unsa

  • springboot整合通用Mapper简化单表操作详解

    前言 数据库访问是web应用必不可少的部分.现今最常用的数据库ORM框架有Hibernate与Mybatis,Hibernate貌似在传统IT企业用的较多,而Mybatis则在互联网企业应用较多.通用Mapper是一个基于Mybatis,将单表的增删改查通过通用方法实现,来减少SQL编写的开源框架,且也有对应开源的mapper-spring-boot-starter提供.我们在此基础上加了一些定制化的内容,以便达到更大程度的复用. 框架源码地址 Demo源码地址 在开源mapper-spring

  • Springboot整合通用mapper过程解析

    这篇文章主要介绍了springboot整合通用mapper过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 找到springboot工程下的pom.xml文件,导入如下的依赖jar包 <!--配置通用Mapper start--> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starte

  • springboot~ObjectMapper~dto到entity的自动赋值

    实体与Dto自动赋值 在开发的过程中,实体之间相互赋值是很正常的事,但是我们一般的方法都通过set和get方法来进行的,如果要赋值的字段少那还行,但是需要赋值的字段超过10个,那就是个灾难,你会看到整屏代码中全是set和get方法. 两个实体属性字段几乎完全相同 两个字体有部分字段相同 源实体只有部分字段赋值,目标实体有完整的值 第一种情况 对于第1点来说,我们用到最多的就是entity和dto之间的转换了,这个我们可以使用Spring的工具类BeanUtils来解决,这里要注意的一点是,==第

  • 详解springboot设置默认参数Springboot.setDefaultProperties(map)不生效解决

    我们都知道springboot 由于内置tomcat(中间件)直接用启动类就可以启动了. 而且我们有时想代码给程序设置一些默认参数,所以使用方法Springboot.setDefaultProperties(map) SpringApplication application = new SpringApplication(startClass); // Map<String, Object> params = new HashMap<>(); params.put("l

  • SpringBoot整合MyBatis逆向工程及 MyBatis通用Mapper实例详解

    一.添加所需依赖,当前完整的pom文件如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&q

  • Spring Boot整合mybatis并自动生成mapper和实体实例解析

    最近一直都在学习Java,发现目前Java招聘中,mybatis出现的频率挺高的,可能是目前Java开发中使用比较多的数据库ORM框架.于是我准备研究下Spring Boot和mybatis的整合. 1.在pom.xml文件中添加下面的配置 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-

  • Spring Boot集成MyBatis实现通用Mapper的配置及使用

    什么是通用Mapper 通用Mapper就是为了解决单表增删改查,基于Mybatis的插件.开发人员不需要编写SQL,不需要在DAO中增加方法,只要写好实体类,就能支持相应的增删改查方法. 关于MyBatis,大部分人都很熟悉.MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Pla

  • Springboot如何使用Map将错误提示输出到页面

    主要思路:在controller层我们将错误信息put进map中,然后通过视图解析器跳转到目标页面,在目标页面中在通过指定标签内的th:text将错误消息取出. 例: 1.编写controller代码 @PostMapping("/user/login") public String login(@RequestParam("username") String username, @RequestParam("password") String

  • springboot 自定义404、500错误提示页面的实现

    目录 springboot 默认的异常处理机制 使用模板引擎 使用示例 没有使用模板引擎 springboot 默认的异常处理机制 springboot 默认已经提供了一套处理异常的机制.一旦程序中出现了异常 springboot 会向 /error 的 url 发送请求.在 springboot 中提供了一个名为 BasicErrorController 的类来处理 /error 请求,然后跳转到默认显示异常的页面来展示异常信息 使用模板引擎 在使用 thymeleaf 等模板引擎时,spri

  • BootstrapValidator实现注册校验和登录错误提示效果

    使用BootstrapValidator进行注册校验和登录错误提示,具体内容如下 1.介绍 在AdminEAP框架中,使用了BootstrapValidator校验框架,本文以注册校验的用户名.登录名.密码.确认密码的校验(后面还有时间区间.服务器校验)为例,讲述BootstrapValidator的使用.同时以登录错误提示为例,说明如何在动态改变组件的错误提示信息. 先看下面的注册与登录的校验效果图: 注册校验: 登录错误提示:根据不同的错误类型,动态改变组件的样式和错误提示内容 2.注册校验

  • Codeigniter中禁止A Database Error Occurred错误提示的方法

    在默认的情况下,CodeIgniter会显示所有的PHP错误.但是当你开发程序结束时,你可能想要改变这个情况.你会发现在index.php文件顶端有这个函数error_reporting(),通过它可以进行对错误的设置. 即使你关闭了错误报告,当有错误发生时,错误记录也不会停止.所以,修改php.ini不能达到我们想要的效果. 下面是解决办法: 1. Codeigniter中禁止A Database Error Occurred错误提示 在CodeIgniter 用户指南中说到,设置 ENVIR

  • JavaScript DOM学习第八章 表单错误提示

    在我看来,警告框只用在浏览器不支持其他显示错误信息的办法的时候.W3C建议我们在表单项的附近显示错误信息.这是一种很好的办法,所以我们只在浏览器不支持这种高级的办法的时候才使用警告对话框. 例子 试试下面的例子.每一项都是必须的.另外我会坚持email项是否有@符号.如果没有也会提示错误信息. 复制代码 代码如下: var W3CDOM = (document.getElementsByTagName && document.createElement); window.onload =

  • PHP常见的6个错误提示及解决方法

    在php开发过程中,由于不知道向谁求助而心慌意乱地判断以为自己不适合学php.其实错误在每个人学习过程中都会碰到的,千万不要妄自菲薄.很多错误在报错的代码提示中已经告诉我们了,仔细看,不会就百度.现总结一些常见的php错误,以共享php新人. Php常见错误提示 一.Fatal error: Call to undefined function-- 函数不存在,可能的原因: 1.系统不存在这个函数且你也没自定义 2.有人会问,我在别的机器上就不报错.那是因为环境不同,这个函数在本机没开,怎么开?

  • MyBatis绑定错误提示BindingException:Invalid bound statement (not found)的解决方法

    如果出现: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 一般的原因是Mapper interface和xml文件的定义对应不上,需要检查包名,namespace,函数名称等能否对应上. 按以下步骤一一执行: 1.检查xml文件所在的package名称是否和interface对应的package名称一一对应 2.检查xml文件的namespace是否和xml文件的package名称一

  • Mabatis错误提示Parameter index out of range的处理方法

    这个问题把小编急毁了,捣腾了好几天还没有结果出来,今天终于捣腾出来了,下面小编把经过分享给大家,大家多多提出宝贵意见. 错误信息如下 08:34:43,302 DEBUG getTeachers:139 - ==> Preparing: SELECT a.*,b.classId,b.className FROM TeacherInfo a INNER JOIN ClassInfo b ON a.teacherId=b.teacherId 08:34:43,316 DEBUG NewPooledC

  • springboot使用logback文件查看错误日志过程详解

    这篇文章主要介绍了springboot使用logback文件查看错误日志过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 <?xml version="1.0" encoding="UTF-8"?> <!-- 从高到地低 OFF . FATAL . ERROR . WARN . INFO . DEBUG . TRACE . ALL --> <!-- 日志输出规则 根据当前ROOT

  • 解决vue axios的封装 请求状态的错误提示问题

    如下所示: /** * axios配置,输出为vue组建 * */ import axios from 'axios'; import qs from 'qs' import CookiesJS from 'js-cookie' import router from '../router' // http request 拦截器 axios.interceptors.request.use( config => { config.headers = { 'Content-Type': 'appl

随机推荐