All posts by 龙生
关于thymeleaf中th:if的使用
运用于判断表达式中时,关系判断使用 gt / ge / eq / lt / le / ne (即:使用缩写)
1 2 3 4 5 6 |
gt: great than(大于)> ge: great equal(大于等于)>= eq: equal(等于)== lt: less than(小于)< le: less equal(小于等于)<= ne: not equal(不等于)!= |
以th:if为例
1 2 3 4 5 |
<td th:if="${prj.DOC_DESC} ne null"> <!--此处ne若是换成not equal或者!=,则会js判断错误,无法正常执行--> <a th:href="#">下载</a> <a th:href="#">预览</a> </td> |
from:https://www.cnblogs.com/dream-by-dream/p/11728693.html
View DetailsThymeleaf教程(10分钟入门)
Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直接在浏览器中打开并正确显示模板页面 。 1. Thymeleaf 简介 Thymeleaf 是新一代 Java 模板引擎,与 Velocity、FreeMarker 等传统 Java 模板引擎不同,Thymeleaf 支持 HTML 原型,其文件后缀为“.html”,因此它可以直接被浏览器打开,此时浏览器会忽略未定义的 Thymeleaf 标签属性,展示 thymeleaf 模板的静态页面效果;当通过 Web 应用程序访问时,Thymeleaf 会动态地替换掉静态内容,使页面动态显示。 Thymeleaf 通过在 html 标签中,增加额外属性来达到“模板+数据”的展示方式,示例代码如下。
1 2 3 4 5 6 7 8 9 10 11 |
<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!--th:text 为 Thymeleaf 属性,用于在展示文本--> <h1 th:text="迎您来到Thymeleaf">欢迎您访问静态页面 HTML</h1> </body> </html> |
当直接使用浏览器打开时,浏览器展示结果如下。
1 |
欢迎您访问静态页面HTML |
当通过 Web 应用程序访问时,浏览器展示结果如下。
1 |
迎您来到Thymeleaf |
Thymeleaf 的特点 Thymeleaf 模板引擎具有以下特点: 动静结合:Thymeleaf 既可以直接使用浏览器打开,查看页面的静态效果,也可以通过 Web 应用程序进行访问,查看动态页面效果。 开箱即用:Thymeleaf 提供了 Spring 标准方言以及一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。 多方言支持:它提供了 Thymeleaf 标准和 Spring 标准两种方言,可以直接套用模板实现 JSTL、 OGNL 表达式;必要时,开发人员也可以扩展和创建自定义的方言。 与 SpringBoot 完美整合:SpringBoot 为 Thymeleaf 提供了的默认配置,并且还为 Thymeleaf 设置了视图解析器,因此 Thymeleaf 可以与 Spring Boot 完美整合。 2. Thymeleaf 语法规则 在使用 Thymeleaf 之前,首先要在页面的 html 标签中声明名称空间,示例代码如下。
1 |
xmlns:th="http://www.thymeleaf.org" |
[…]
View DetailsHTTP协议的四种传参方式
1.path info传参 /articles/12 (查询id为12的文章,12是参数)
2.URL Query String传参 /articles?id=12
3.1.Body 传参 Content-Type: multipart/form-data
3.2.Body 传参 Content-Type: application/json,或其他自定义格式
4.Headers 传参 @RequestHeader
JSAPI支付返回: JSAPI缺少参数total_fee
请根据以下几点排查问题: 1)package参数格式错误,package参数格式应该是这样: package:"prepay_id=wx201410272009395522657a690389285100" 2)package参数没有获取,返回null。 3)请检查预支付会话标识prepay_id是否已失效 4)请求的appid与下单接口的appid是否一致 5)微信支付金额为“分”,不能有小数点 6)预支付ID为空(1、金额为空 2、订单编号重复 3、订单编号为空) from:https://developers.weixin.qq.com/community/develop/doc/000eca8d8143a080bacbecfd351009?_at=1592533462553
View DetailsVS2022 安装 .NET Framework 4.0 和 .NET Framework 4.5 的方法
2022年5月27日,刚刚把VS2019升级到了VS2022,安装时已经不提供.NET Framework 4.0和.NET Framework 4.5的目标框架了,打开VS也提示不支持目标框架。
View DetailsSpringBoot 配置文件中 @profileActive@
@profileActive@ 是配合 maven profile 进行选择不同配置文件进行开发 application.properties 中配置
1 |
spring.profiles.active=@profileActive@ |
pom 中配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<profiles> <profile> <id>dev</id> <properties> <profileActive>dev</profileActive> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>prod</id> <properties> <profileActive>prod</profileActive> </properties> </profile> </profiles> |
打包命令
1 2 |
mvn package -P dev -DskipTests mvn package -P prod -DskipTests |
from:https://blog.csdn.net/thebigdipperbdx/article/details/106761805
View DetailsCentos安装openjdk
转载自:https://blog.csdn.net/youzhouliu/article/details/51183115 openjdk在linux各个平台下安装源中可以找到。 命令查找安装源中有什么版本:
1 |
yum search java | grep -i --color JDK |
此处只需要安装jdk1.8,所以安装包命令如下
1 |
yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel #安装openjdk |
默认安装位置:/usr/lib/jvm/
1 2 3 4 5 |
vim ~/.bashrc export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el7_6.x86_64 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=.:$JAVA_HOME/bin:$PATH source ~/.bashrc |
from:https://www.cnblogs.com/javalinux/p/15883849.html
View DetailsLinux下"无法执行SCP开始传输"解决方法
无法执行SCP开始传输。请确认SCP安装在服务器并且它的路径包括在PATH中。你也可以尝试SFTP代替SCP。
命令失败并返回127
用root账户安装openssh-clients即可解决该问题
View Detailsjava lambda anyMatch 表达式判断list中是否存在某个字段数据
如题:list中存放的beans,想知道这些beans中的某个字段是否存在于里面,按照原来的操作是需要遍历list拿出逐个bean进行字段的equals,现在使用lamda表达式的话可以简化代码,如下:
1 |
boolean isExsists = list.stream().anyMatch(a -> a.getName().equals("aaa")); |
代码示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
package com.owl.demo.tests; import java.util.ArrayList; import java.util.List; public class LamdaTest { public static void main(String[] args) { //示例数据 People p1 = new People(); p1.setName("aaa"); p1.setAge(23); People p2 = new People(); p2.setName("bbb"); p2.setAge(23); People p3 = new People(); p3.setName("ccc"); p3.setAge(23); List<People> list = new ArrayList<People>(); list.add(p1); list.add(p2); list.add(p3); //lamda判断list中是否存在name=aaa的对象 boolean isExsists = list.stream().anyMatch(a -> a.getName().equals("aaa")); System.out.println(isExsists); } } |
from:https://blog.csdn.net/csdn_avatar_2019/article/details/123704052
View Detailsstream获取list中的某个元素集合_简洁又快速地处理集合——java8 Stream(上)
Java 8 发布至今也已经好几年过去,如今 Java 也已经向 11 迈去,但是 Java 8 作出的改变可以说是革命性的,影响足够深远,学习 Java 8 应该是 Java 开发者的必修课。
今天给大家带来 Java 8 Stream 讲解,为什么直接讲这个,是因为只要你学完,立刻就能上手,并能让它在你的代码中大展身手。
值得注意的是:学习 Stream 之前必须先学习 lambda 的相关知识。本文也假设读者已经掌握 lambda 的相关知识。