Spring Boot + Websocket + Thymeleaf + Lombok

简介: https://github.com/guillermoherrero/websocket 验证错误消息文件名字:是默认名ValidationMessages.properties,编译后存放在classes目录下则:消息key名可以自定义,消息内容可以包含参数(如上面代码中的“{min}”)   验证错误消息文件名字:是自定义名ErrorMessages.

https://github.com/guillermoherrero/websocket

验证错误消息文件名字:是默认名ValidationMessages.properties,编译后存放在classes目录下则:消息key名可以自定义,消息内容可以包含参数(如上面代码中的“{min}”)

 

验证错误消息文件名字:是自定义名ErrorMessages.properties,编译后存放在classes目录下则:消息key名不可自定义,需用hibernate validation的消息key格式(下面会讲解),消息内容不可包含参数(如上面代码中的“{min}”)

 

验证错误消息文件名字:是默认名ValidationMessages.properties,编译后不放在classes目录下则:消息key名不可自定义,需用hibernate validation的消息key格式(下面会讲解),消息内容不可包含参数(如上面代码中的“{min}”)

 

如果消息内容中包含参数则会报:java.lang.IllegalArgumentException: can't parse argument number: xxx 异常。(xxx是参数名)

 

 

以下是对hibernate validation默认的错误消息文件及默认错误消息键值说明:

默认的提供的错误消息文件名如下:

ValidationMessages.properties

ValidationMessages_de.properties

ValidationMessages_en.properties

ValidationMessages_es.properties

ValidationMessages_fr.properties

ValidationMessages_hu.properties

ValidationMessages_mn_MN.properties

ValidationMessages_pt_BR.properties

ValidationMessages_tr.properties

ValidationMessages_zh_CN.properties

 

 

默认的错误消息Key:验证约束注解的全限定类名.message,默认将为验证的对象自动生成如下错误消息键:

验证错误注解简单类名.验证对象名.字段名

验证错误注解简单类名.字段名

验证错误注解简单类名.字段类型全限定类名

验证错误注解简单类名

 

使用的优先级是:从高到低,即最前边的具有最高的优先级,而且以上所有默认的错误消息键优先级高于自定义的错误消息键。

 

总结:一般来说消息key是要自定义的,而且消息内容可以传参数,所以我们使用默认文件名且存放在classes目录下。

 http://hualong.iteye.com/blog/2038092

 

css手势状态定义:cursor和自定义鼠标手势详解,示例演示cursor手势状态如下:
auto : 默认值。浏览器根据当前情况自动确定鼠标光标类型。

all-scroll : 有上下左右四个箭头,中间有一个圆点的光标。用于标示页面可以向上下左右任何方向滚动。

col-resize : 有左右两个箭头,中间由竖线分隔开的光标。用于标示项目或标题栏可以被水平改变尺寸。

crosshair : 简单的十字线光标。

default : 客户端平台的默认光标。通常是一个箭头。

hand : 竖起一只手指的手形光标。就像通常用户将光标移到超链接上时那样。

move : 十字箭头光标。用于标示对象可被移动。

help : 带有问号标记的箭头。用于标示有帮助信息存在。

no-drop : 带有一个被斜线贯穿的圆圈的手形光标。用于标示被拖起的对象不允许在光标的当前位置被放下。

not-allowed : 禁止标记(一个被斜线贯穿的圆圈)光标。用于标示请求的操作不允许被执行。

pointer : 和 hand 一样。竖起一只手指的手形光标。就像通常用户将光标移到超链接上时那样。

progress : 带有沙漏标记的箭头光标。用于标示一个进程正在后台运行。

row-resize : 有上下两个箭头,中间由横线分隔开的光标。用于标示项目或标题栏可以被垂直改变尺寸。

text : 用于标示可编辑的水平文本的光标。通常是大写字母 I 的形状。

vertical-text : 用于标示可编辑的垂直文本的光标。通常是大写字母 I 旋转90度的形状。

wait : 用于标示程序忙用户需要等待的光标。通常是沙漏或手表的形状。

*-resize : 用于标示对象可被改变尺寸方向的箭头光标。w-resize | s-resize | n-resize | e-resize | ne-resize | sw-resize | se-resize | nw-resize

url ( url ) : 用户自定义光标。使用绝对或相对 url 地址指定光标文件(后缀为 .cur 或者 .ani )。

自定义手势详解:
一、路径。如果路径写成 url(bg/zoom.cur) 的话,只有最新主流浏览器(IE9等)可以识别,而IE8及以下浏览器不能识别,所以,为了兼容起见,路径统一用最完整的的为好,如 url(http://localhost/www/page/bg/zoom.cur);

二、后缀。虽然CSS2.0上说可以用 gif、jpg等格式图片,但是,又是IE8及以下浏览器不能识别除.cur图标以外的图片格式,所以为了兼容所有浏览器,最好做一张正规的.cur光标图片。


三,逗号。这回相反了,如果不加 ,ponter 最新主流浏览器(IE9等)反而无法识别,IE8及以下低版本浏览器不加 ,ponter 反而可以识别,所以,还是加上 ,ponter 为好。

综上,就是鼠标自定义背景手势的正确用法,使用绝对路径+使用cur光标文件+,ponter,当然这也要工具你的实际兼容情况。

 

 

@RequestMapping("/showContentPart")
public String showContentPart() {
    ...
    return "content-part";//返回上面定义的bean名称。
}

c:selectorExpression="content":需要在content节点加上th:fragment。
c:selectorExpression="#content" :完全基于html dom selector,无需th:fragment。
在controller中指定片段:
@RequestMapping("/showContentPart")
public String showContentPart() {
    ...
    return "index :: content";
}
"index :: content"和"index ::#content"区别一样。
还可以返回带参数的片段:
@RequestMapping("/showContentPart")
public String showContentPart() {
    ...
    return "index :: #content ('myvalue')";
}

http://www.blogjava.net/bjwulin/archive/2014/02/11/409734.html

 

目录
打赏
0
0
0
0
95
分享
相关文章
Spring Boot结合Netty和WebSocket,实现后台向前端实时推送信息
【10月更文挑战第18天】 在现代互联网应用中,实时通信变得越来越重要。WebSocket作为一种在单个TCP连接上进行全双工通信的协议,为客户端和服务器之间的实时数据传输提供了一种高效的解决方案。Netty作为一个高性能、事件驱动的NIO框架,它基于Java NIO实现了异步和事件驱动的网络应用程序。Spring Boot是一个基于Spring框架的微服务开发框架,它提供了许多开箱即用的功能和简化配置的机制。本文将详细介绍如何使用Spring Boot集成Netty和WebSocket,实现后台向前端推送信息的功能。
1132 1
springBoot集成websocket实时消息推送
本文介绍了如何在Spring Boot项目中集成WebSocket实现实时消息推送。首先,通过引入`spring-boot-starter-websocket`依赖,配置`WebSocketConfig`类来启用WebSocket支持。接着,创建`WebSocketTest`服务器类,处理连接、消息收发及错误等事件,并使用`ConcurrentHashMap`管理用户连接。最后,前端通过JavaScript建立WebSocket连接,监听消息并进行相应处理。此方案适用于需要实时通信的应用场景,如聊天室、通知系统等。
【Spring工具插件】lombok使用和EditStarter插件
本文第一个板块主要介绍了SpringMVC中lombok依赖的引入,和相应的使用方法,以及浅显的原理解释,第二个板块主要介绍EditStarter插件的安装与使用
RSocket vs WebSocket:Spring Boot 3.3 中的两大实时通信利器
本文介绍了在 Spring Boot 3.3 中使用 RSocket 和 WebSocket 实现实时通信的方法。RSocket 是一种高效的网络通信协议,支持多种通信模式,适用于微服务和流式数据传输。WebSocket 则是一种标准协议,支持全双工通信,适合实时数据更新场景。文章通过一个完整的示例,展示了如何配置项目、实现前后端交互和消息传递,并提供了详细的代码示例。通过这些技术,可以大幅提升系统的响应速度和处理效率。
|
5月前
|
springboot 学习十一:Spring Boot 优雅的集成 Lombok
这篇文章是关于如何在Spring Boot项目中集成Lombok,以简化JavaBean的编写,避免冗余代码,并提供了相关的配置步骤和常用注解的介绍。
213 0
SpringBoot WebSocket大揭秘:实时通信、高效协作,一文让你彻底解锁!
【8月更文挑战第25天】本文介绍如何在SpringBoot项目中集成WebSocket以实现客户端与服务端的实时通信。首先概述了WebSocket的基本原理及其优势,接着详细阐述了集成步骤:添加依赖、配置WebSocket、定义WebSocket接口及进行测试。通过示例代码展示了整个过程,旨在帮助开发者更好地理解和应用这一技术。
522 1
Spring boot +Thymeleaf 本地图片加载失败(图片路径)的问题及解决方法
这篇文章详细讲解了在Spring Boot应用程序中本地图片无法加载的问题原因,并提供了两个示例来说明如何通过使用正确的相对路径或Thymeleaf语法来解决图片路径问题。
【颠覆传统】Spring框架如何用WebSocket技术重塑实时通信格局?揭秘背后的故事与技术细节!
【9月更文挑战第4天】随着Web应用对实时交互需求的增长,传统的HTTP模型已无法满足现代应用的要求,特别是在需要持续、双向通信的场景下。WebSocket协议由此诞生,提供全双工通信渠道,使服务器与客户端能实时互发消息。作为Java开发中最受欢迎的框架之一,Spring通过其WebSocket模块支持这一协议,简化了WebSocket在Spring应用中的集成。
79 0
Spring Boot与模板引擎:整合Thymeleaf和FreeMarker,打造现代化Web应用
【8月更文挑战第29天】这段内容介绍了在分布式系统中起到异步通信与解耦作用的消息队列,并详细探讨了三种流行的消息队列产品:RabbitMQ、RocketMQ 和 Kafka。RabbitMQ 是一个基于 AMQP 协议的开源消息队列系统,支持多种消息模型,具有高可靠性及稳定性;RocketMQ 则是由阿里巴巴开源的高性能分布式消息队列,支持事务消息等多种特性;而 Kafka 是 LinkedIn 开源的分布式流处理平台,以其高吞吐量和良好的可扩展性著称。文中还提供了使用这三种消息队列产品的示例代码。
51 0