Spring Boot中的模板引擎选择与配置
Spring Boot中的模板引擎选择与配置
大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来聊聊Spring Boot中的模板引擎选择与配置。模板引擎是生成动态网页的关键组件,在Spring Boot中,我们有多种模板引擎可以选择,如Thymeleaf、FreeMarker和Mustache。本文将介绍这些模板引擎的基本特点,并提供配置示例,帮助你快速上手。
一、模板引擎概述
模板引擎用于将数据与模板结合,生成动态的HTML内容。在Spring Boot中,常用的模板引擎包括:
- Thymeleaf:功能强大,语法简洁,支持Spring EL(表达式语言),与Spring Boot集成良好。
- FreeMarker:高度可定制,支持复杂的数据处理,适合生成复杂的动态内容。
- Mustache:轻量级,语法简单,逻辑与视图分离,适合需要简单模板的应用。
二、Thymeleaf的配置与使用
Thymeleaf是Spring Boot默认推荐的模板引擎,配置简单,功能强大。以下是Thymeleaf的配置与使用示例:
- 添加依赖
在pom.xml
中添加Thymeleaf依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
- 配置模板路径
在application.properties
中配置模板路径:
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
- 创建Controller
创建一个简单的Controller,返回视图:
package cn.juwatech.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;@Controller
public class HomeController {@GetMapping("/home")public String home(Model model) {model.addAttribute("message", "欢迎使用Thymeleaf模板引擎!");return "home";}
}
- 创建模板
在src/main/resources/templates
目录下创建home.html
:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head><title>Home</title>
</head>
<body><h1 th:text="${message}">Thymeleaf 模板引擎</h1>
</body>
</html>
访问/home
路径即可看到动态生成的内容。
三、FreeMarker的配置与使用
FreeMarker是另一款流行的模板引擎,适合处理复杂的模板需求。以下是FreeMarker的配置与使用示例:
- 添加依赖
在pom.xml
中添加FreeMarker依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
- 配置模板路径
在application.properties
中配置模板路径:
spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.suffix=.ftl
- 创建Controller
创建一个简单的Controller,返回视图:
package cn.juwatech.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;@Controller
public class FreeMarkerController {@GetMapping("/freemarker")public String freemarker(Model model) {model.addAttribute("message", "欢迎使用FreeMarker模板引擎!");return "freemarker";}
}
- 创建模板
在src/main/resources/templates
目录下创建freemarker.ftl
:
<!DOCTYPE html>
<html>
<head><title>FreeMarker</title>
</head>
<body><h1>${message}</h1>
</body>
</html>
访问/freemarker
路径即可看到动态生成的内容。
四、Mustache的配置与使用
Mustache是一款轻量级的模板引擎,适合需要简单模板的应用。以下是Mustache的配置与使用示例:
- 添加依赖
在pom.xml
中添加Mustache依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mustache</artifactId>
</dependency>
- 配置模板路径
在application.properties
中配置模板路径:
spring.mustache.prefix=classpath:/templates/
spring.mustache.suffix=.mustache
- 创建Controller
创建一个简单的Controller,返回视图:
package cn.juwatech.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;@Controller
public class MustacheController {@GetMapping("/mustache")public String mustache(Model model) {model.addAttribute("message", "欢迎使用Mustache模板引擎!");return "mustache";}
}
- 创建模板
在src/main/resources/templates
目录下创建mustache.mustache
:
<!DOCTYPE html>
<html>
<head><title>Mustache</title>
</head>
<body><h1>{{message}}</h1>
</body>
</html>
访问/mustache
路径即可看到动态生成的内容。
五、模板引擎的选择
选择合适的模板引擎取决于具体的项目需求:
- 如果需要与Spring Boot紧密集成,推荐使用Thymeleaf。
- 如果需要高度定制和复杂的数据处理,推荐使用FreeMarker。
- 如果需要轻量级、简单的模板,推荐使用Mustache。
每种模板引擎都有其优点和适用场景,根据项目的具体需求进行选择和配置,才能更好地发挥它们的优势。
六、总结
本文介绍了Spring Boot中常用的三种模板引擎:Thymeleaf、FreeMarker和Mustache,并提供了详细的配置和使用示例。通过这些示例,大家可以快速上手并在项目中灵活使用不同的模板引擎。希望本文能帮助你在Spring Boot项目中更好地进行模板引擎的选择与配置。
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
Spring Boot中的模板引擎选择与配置
Spring Boot中的模板引擎选择与配置 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来聊聊Spring Boot中的模板引擎选择与配置。模板引擎是生成动态网页…...
![](https://img-blog.csdnimg.cn/direct/85c837ef3078462d8aa505c515280392.png)
4、音视频封装格式---FLV
FLV FLV是一种容器封装格式,是由Adobe公司发布和维护的,用于将视频编码流与音频编码流进行封装。对于任意一种封装格式,都有其头部区域与数据区域,在FLV中,称之为FLV Header与Body。 对于FLV Header,一个FL…...
![](https://www.ngui.cc/images/no-images.jpg)
vscode 前行复制到下一行
目录 Ctrl d 会把当前行复制到下一行 步骤1:打开键绑定设置 目录 Ctrl d 会把当前行复制到下一行 步骤1:打开键绑定设置 使用VS Code设置换行 Ctrl d 会把当前行复制到下一行 步骤1:打开键绑定设置 打开 VS Code。按 CtrlShiftP 打开命…...
![](https://img-blog.csdnimg.cn/direct/c2d73c230f1745808be64503b9c67a46.png)
什么是文档透明加密|好用的文档透明加密软件有哪些?
在当今日益数字化和信息化的时代,数据安全问题愈发受到企业和个人的关注。文档作为信息的重要载体,其安全性不言而喻。为了保障文档的机密性和完整性,文档透明加密技术应运而生。本文将对文档透明加密进行详细介绍,并探讨一些好用…...
![](https://img-blog.csdnimg.cn/direct/3e354f46073c4a8fb187093a57838d4d.png)
XTDrone-固定翼无人机编队跟踪无人车-配置教程
配置使用ROS版本为Neotic 1 配置 1.1 加载固定翼无人机编队跟踪控制工程文件 cp -r ~/XTDrone/coordination/fixed_wing_formation_control ~/catkin_ws/src 1.2 加载一些用到的功能包 sudo apt-get install ros-noetic-serial #根据自己的ROS版本修改 sudo apt-get insta…...
![](https://www.ngui.cc/images/no-images.jpg)
实现高性能、可扩展的实时数据采集系统:go-zero的应用与实践
随着互联网技术的高速发展,数据采集也越来越受到重视,成为企业获取商业价值的重要手段。在实际应用中,我们往往面临着数据量大、并发高、系统响应速度要求高、压力测试等挑战。如何实现高性能、可扩展的实时数据采集系统?本文将介…...
![](https://www.ngui.cc/images/no-images.jpg)
AUTOSAR NvM模块(五)
NvMRbCallbackSignatureAR45 改变回调函数的参数类型。 TRUE:根据AR44及之后版本,回调函数使用NvM_<Multi;Init>BlockRequestType参数类型。详细的函数调用参数请参考回调参数。 FALSE:根据AR43及之前版本,回调函数使用S…...
![](https://www.ngui.cc/images/no-images.jpg)
输出feign调用详细日志
开发新增一个feign调用类,调用另一个微服务的接口,总是报调用失败,想输出下调用的详细日志看看怎么回事。 第一步:查看feign的输出级别。 这个在qlm_config包里: /*** feign 日志记录级别* NONE:无日志记录…...
![](https://www.ngui.cc/images/no-images.jpg)
mac编译r2frida问题解决
在编译 https://github.com/nowsecure/r2frida 时报错: {"category": "error","code": 7006,"file": {"path": "/Users/xxx/Documents/Library/r2frida/src/agent/lib/info/index.ts","line": 494,&qu…...
![](https://www.ngui.cc/images/no-images.jpg)
中介者模式在金融业务中的应用及其框架实现
引言 中介者模式(Mediator Pattern)是一种行为设计模式,它通过引入一个中介对象来封装对象之间的交互,从而使对象不需要显式地相互引用,从而降低了对象之间的耦合性。在金融业务中,中介者模式常用于实现复…...
![](https://img-blog.csdnimg.cn/direct/119a9f85d5bd4da09c898f44724e30ee.png)
javaSE期末练习题
文章目录 前言一、程序控制1.顺序结构问题描述解题思路题解 2.选择结构2.1 题1问题描述解题思路题解 2.1 题2问题描述解题思路题解 3.循环结构3.1 阶乘的求取问题描述解题思路题解 3.2 水仙花数问题描述解题思路题解 二、数组三、类与对象1.类与对象1.1圆类问题描述解题思路题解…...
![](https://www.ngui.cc/images/no-images.jpg)
Linux文件数据写入
结构体 fd fd也就是文件描述符,用于标识已经打开的文件、管道、socket等。是进程和内核的桥梁,允许进程执行各种文件操作 struct fd {struct file *file;unsigned int flags; };file Linux内核中表示打开文件的结构体,包含了文件操作所需…...
![](https://www.ngui.cc/images/no-images.jpg)
vue2 中如何使用 vuedraggable 库实现拖拽功能
1.通过 npm 或 yarn 安装 vuedraggable 库 npm install vuedraggableyarn add vuedraggable 2. 引入组件内部使用,以下代码是一个Demo,可直接复制粘贴演示 注意:因项目使用了 vant,需要安装 vant 才能正常运行 <template&g…...
![](https://www.ngui.cc/images/no-images.jpg)
0基础学C++ | 第13天 | 基础知识 | 类 | 对象
目录 前言 封装 封装的意义 struct 和 class 的区别 成员属性设置为私有 前言 众所周知, C是一个面向对象的编程语言(面向对象的C语言的特点就是:封装、继、 多态),它与面向过程的C语言不通,对面向…...
![](https://img-blog.csdnimg.cn/direct/e4053862a4bf469fb830850d02a4597c.png)
Java | Leetcode Java题解之第212题单词搜索II
题目: 题解: class Solution {int[][] dirs {{1, 0}, {-1, 0}, {0, 1}, {0, -1}};public List<String> findWords(char[][] board, String[] words) {Trie trie new Trie();for (String word : words) {trie.insert(word);}Set<String> a…...
![](https://www.ngui.cc/images/no-images.jpg)
Flink面试题总结
一、简单介绍一下 Flink Apache Flink 是一个实时计算框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算 二、Flink集群有哪些角色?各自有什么作用?(flink架构) --JobManager: JobManag…...
![](https://www.ngui.cc/images/no-images.jpg)
人工智能与云计算
项目要求 一个简单的集群。您需要在此项目中创建计算机集群。这些机器是 docker 容器。集群管理器是一个 Python 程序。群集的状态将写入文件。 希望通过这个 Python 文件,首先它能够通过获取输入来得到要创建的集群中包含的容器数量,并与用户进行交互(用户可以执行此集群…...
![](https://img-blog.csdnimg.cn/direct/787dc40b8055491f817ead012b104b4c.png#pic_center)
9.(vue3.x+vite)修改el-input,el-data-picker样式
效果预览 二:相关代码 <template><div style="padding: 50px"><el-input placeholder="请输入模型名称" style="width: 260px" /><br /...
![](https://img-blog.csdnimg.cn/direct/297c52a11437458780e7d07a79fb25d3.png)
java反射和注解
反射 获取class对象的三种方法 ①:Class.forName("全类名"); ②:类名.class ③:对象.getclass(); 代码样例 package com.ithema;public class Main {public static void main(String[] args) throws ClassNotFoundException {//第…...
![](https://img-blog.csdnimg.cn/direct/a81e914f8e9f438fa8bbf2037b324adb.gif)
react_后台管理_项目
目录 1.运行项目 2. 项目结构 ①项目顶部导航栏 ②项目左侧导航栏 ③主页面-路由切换区 本项目使用的是 reacttsscss 技术栈。 1.运行项目 在当前页面顶部下载本项目,解压后使用编辑器打开,然后再终端输入命令: npm i 下载依赖后&am…...
![](https://www.ngui.cc/images/no-images.jpg)
【C语言】使用C语言编写并使用gcc编译动态链接库
【C语言】使用C 语言编写并使用 gcc 编译动态链接库 1.背景2.使用C编写代码3.使用gcc编译代码1.背景 在windows下开发很多程序接口被封装到动态链接库供其它开发者使用。 本博客使用C语言编写并使用gcc 编译 一个动态链接库文件FpdSys.dll; 然后使用C/C++/C#/Python去调用动态…...
![](https://img-blog.csdnimg.cn/direct/e38ca75c7a694b049366ef05da984ef6.jpeg)
使用supportFragmentManager管理多个fragment切换
android studio创建的项目就没有一个简单点的框架,生成的代码都是繁琐而复杂,并且不实用。 国内的页面一般都是TAB页面的比较多,老外更喜欢侧边菜单。 如果我们使用一个activity来创建程序,来用占位符管理多个fragment切换&…...
![](https://img-blog.csdnimg.cn/direct/eb33aa23b1c0470e88e4d502cf410b93.png)
开源模型应用落地-FastAPI-助力模型交互-WebSocket篇(六)
一、前言 使用 FastAPI 可以帮助我们更简单高效地部署 AI 交互业务。FastAPI 提供了快速构建 API 的能力,开发者可以轻松地定义模型需要的输入和输出格式,并编写好相应的业务逻辑。 FastAPI 的异步高性能架构,可以有效支持大量并发的预测请求,为用户提供流畅的交互体验。此外,F…...
![](https://img-blog.csdnimg.cn/direct/87d85fcda99f4b3b8b6c09ef30fa1950.png)
独立开发者系列(17)——MYSQL的常见异常整理
虽然安装MYSQL到本地很简单,但是数据库报错还是经常出现,这个时候,需要我们进行逐步检查与修复。作为我们最常用的开发软件,无论切换php/go/python/node/java,数据库的身影都少不了,对于我们储存数据而言&a…...
![](https://img-blog.csdnimg.cn/direct/f9126d9779724d1aadf5db0bf0de726e.png#pic_center)
【ajax实战02】数据管理网站—验证码登录
一:数据提交(提交手机验证码) 核心思路整理 利用form-serialize插件,收集对象形式的表单数据后,一并提交给服务器。后得到返回值,进一步操作 基地址: axios.defaults.baseURL http://geek.…...
![](https://www.ngui.cc/images/no-images.jpg)
人工智能在反无人机中的应用介绍
人工智能技术在无人机的发展中扮演着至关重要的角色,这一作用在反无人机技术领域同样显著。随着无人机技术的发展,飞行器具备了微小尺寸、高速机动性,以及可能采用的隐蔽或低空飞行轨迹等特性。这些特性使得传统的人工监视和控制手段面临着重…...
![](https://img-blog.csdnimg.cn/direct/ae886e277d38482b9999d7fae926b948.png)
【力扣 - 每日一题】3115. 质数的最大距离(一次遍历、头尾遍历、空间换时间、埃式筛、欧拉筛、打表)Golang实现
原题链接 题目描述 给你一个整数数组 nums。 返回两个(不一定不同的)质数在 nums 中 下标 的 最大距离。 示例 1: 输入: nums [4,2,9,5,3] 输出: 3 解释: nums[1]、nums[3] 和 nums[4] 是质数。因此答…...
![](https://img-blog.csdnimg.cn/direct/0471cf95c22f46f5aefb7a77eb9cd627.png)
【Gin】项目搭建 一
环境准备 首先确保自己电脑安装了Golang 开始项目 1、初始化项目 mkdir gin-hello; # 创建文件夹 cd gin-hello; # 需要到刚创建的文件夹里操作 go mod init goserver; # 初始化项目,项目名称:goserver go get -u github.com/gin-gonic/gin; # 下载…...
![](https://img-blog.csdnimg.cn/direct/ed8e5b33509d4281b20f2602bc93e0be.png)
C++ 和C#的差别
首先把眼睛瞪大,然后憋住一口气,读下去: 1、CPP 就是C plus plus的缩写,中国大陆的程序员圈子中通常被读做"C加加",而西方的程序员通常读做"C plus plus",它是一种使用非常广泛的计算…...
![](https://img-blog.csdnimg.cn/direct/c9b92225857b4b4facd067c115a6c410.png)
Vue2组件传值(通信)的方式
目录 1.父传后代 ( 后代拿到了父的数据 )1. 父组件引入子组件,绑定数据2. 子组件直接使用父组件的数据3. 依赖注入(使用 provide/inject API)1.在祖先组件中使用 provide2.在后代组件中使用 inject 2.后代传父 (父拿到了后代的数据)1. 子组件…...
![](https://www.ngui.cc/images/no-images.jpg)
【数据结构 - 时间复杂度和空间复杂度】
文章目录 <center>时间复杂度和空间复杂度算法的复杂度时间复杂度大O的渐进表示法常见时间复杂度计算举例 空间复杂度实例 时间复杂度和空间复杂度 算法的复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏&…...
![](https://www.ngui.cc/images/no-images.jpg)
telegram支付
今天开始接入telegram支付,参考教程这个是telegram的官方说明,详细介绍了机器人支付API。 文章公开地址 新建机器人 因为支付是一个单独的系统,所以在做支付的时候单独创建了一个bot,没有用之前的bot了,特意这样将其分开。创建bot的方法和之前不变,这里不过多介绍。 获…...
![](https://www.ngui.cc/images/no-images.jpg)
elasticsearch-6.8.23的集群搭建过程
三个节点的 ElasticSearch 集群搭建步骤 准备三台机器:28.104.87.98、28.104.87.100、28.104.87.101 和 ElasticSearch 的安装包 elasticsearch-6.8.23.tar.gz ----------------------------- 28.104.87.98,使用 root 用户操作 ----------------------…...
![](https://www.ngui.cc/images/no-images.jpg)
javascript输出语法
javascript输出有三种方式 一种是弹窗输出,就是网页弹出一个对话框,弹出输出内容 语法是aler(内容) 示例代码如下 <body> <script> alert(你好); </script> </body> 这段代码运行后网页会出现一个对话框,弹出你…...
![](https://img-blog.csdnimg.cn/direct/2dbf420fa76f48a5820d4f1b8dfebdac.png)
仓库管理系统26--权限设置
原创不易,打字不易,截图不易,多多点赞,送人玫瑰,留有余香,财务自由明日实现 1、权限概述 在应用软件中,通常将软件的功能分为若干个子程序,通过主程序调用。那么,通过…...
![](https://img-blog.csdnimg.cn/img_convert/98244730ae6f23caa6b81f83e4e91003.webp?x-oss-process=image/format,png)
d3dx9_43.dll丢失怎么解决?d3dx9_43.dll怎么安装详细教程
在使用计算机中,如果遇到d3dx9_43.dll丢失或许找不到d3dx9_43.dll无法运行打开软件怎么办?这个是非常常见问题,下面我详细介绍一下d3dx9_43.dll是什么文件与d3dx9_43.dll的各种问题以及d3dx9_43.dll丢失的多个解决方法! 一、d3dx9…...
![](https://www.ngui.cc/images/no-images.jpg)
[C++] 退出清理函数解读(exit、_exit、abort、atexit)
说明:在C中,exit、_exit(或_Exit)、abort和atexit是用于控制程序退出和清理的标准库函数。下面是对这些函数的详细解读: exit 函数原型:void exit(int status);作用:exit函数用于正常退出程序…...
![](https://www.ngui.cc/images/no-images.jpg)
代码随想录(回溯)
组合(Leetcode77) 思路 用递归每次遍历从1-n得数,然后list来记录是不是组合到k个了,然后这个每次for循环的开始不能和上一个值的开始重复,所以设置个遍历开始索引startindex class Solution {static List<List<…...
![](https://img-blog.csdnimg.cn/direct/e90eacdd30854cb0beb46f0183330d4c.jpeg)
编译原理1
NFA&DFA 在正规式的等价证明可以借助正规集,也可以通过有限自动机DFA来证明等价,以下例题是针对DFA证明正规式的等价,主要步骤是①NFA;②状态转换表; ③状态转换矩阵; ④化简DFA; 文法和语…...
![](https://www.ngui.cc/images/no-images.jpg)
【信息系统项目管理师知识点速记】组织通用管理:流程管理
23.2 流程管理 通过流程视角能够真正看清楚组织系统的本质与内在联系,理顺流程能够理顺整个组织系统。流程是组织运行体系的框架基础,流程框架的质量影响和决定了整个组织运行体系的质量。把流程作为组织运行体系的主线,配备满足流程运作需要的资源,并构建与流程框架相匹配…...
![](https://www.ngui.cc/images/no-images.jpg)
前端 JS 经典:箭头函数的意义
箭头函数是为了消除函数的二义性。 1. 二义性 函数的二义性指函数有不同的两种用法,就造成了二义性,函数的两种用法:1. 指令序列。2. 构造器 1.1 指令序列 就是调用函数,相当于将函数内部的代码再从头执行一次。 1.2 构造器 …...
![](https://www.ngui.cc/images/no-images.jpg)
Java List操作详解及常用方法
Java List操作详解及常用方法 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 什么是Java List? Java中的List是一种动态数组,它允许存…...
![](https://img-blog.csdnimg.cn/direct/8f267f7ca0ec4bfe89f1c11a78c4360e.png)
《mysql篇》--查询(进阶)
目录 将查询结果作为插入数据 聚合查询 聚合函数 count sum group by子句 having 联合查询 笛卡尔积 多表查询 join..on实现多表查询 内连接 外连接 自连接 子查询 合并查询 将查询结果作为插入数据 Insert into 表2 select * from 表1//将表1的查询数据插入…...
![](https://img-blog.csdnimg.cn/direct/f5f4ad3756e249e4843b2f5fb9349980.png)
数据库-MySQL 实战项目——书店图书进销存管理系统数据库设计与实现(附源码)
一、前言 该项目非常适合MySQL入门学习的小伙伴,博主提供了源码、数据和一些查询语句,供大家学习和参考,代码和表设计有什么不恰当还请各位大佬多多指点。 所需环境 MySQL可视化工具:navicat; 数据库:MySq…...
![](https://img-blog.csdnimg.cn/direct/bb1684768326438c9054daca092e1761.png)
eNSP中WLAN的配置和使用
一、基础配置 1.拓扑图 2.VLAN和IP配置 a.R1 <Huawei>system-view [Huawei]sysname R1 GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0]ip address 200.200.200.200 24 b.S1 <Huawei>system-view [Huawei]sysname S1 [S1]vlan 100 [S1-vlan100]vlan 1…...
![](https://img-blog.csdnimg.cn/direct/79ff15de1ff74dc1ad1e10bdda3bcc4a.png)
<sa8650>QCX ID16_UsecaseRawLiteAuto 使用详解
<sa8650>QCX ID16_UsecaseRawLiteAuto 使用详解 一、前言二、ID16_UsecaseRawLiteAuto拓扑图三、UsecaseRawLiteAuto拓扑图 解析3.1 camxUsecaseRawLiteAuto.xml3.2 camxRawLiteAuto.xml四、测试一、前言 我们在使用QCX时,如果由于使用的摄像头自带了ISP,那么可能不需要使…...
![](https://img-blog.csdnimg.cn/img_convert/53161c8355c0dde95ad1a6518f25f819.png)
为什么3d重制变换模型会变形?---模大狮模型网
在当今数字技术飞速发展的时代,3D建模和动画制作已经成为影视、游戏和虚拟现实中不可或缺的一部分。然而,即使在高级的3D软件中,重制(rigging)和变换(transformation)过程中仍然会面临一个普遍的问题——模型变形。这种变形可能导致动画效果不…...
![](https://img-blog.csdnimg.cn/img_convert/40fd37d237b66925bc6e34e44497579d.png)
ElasticSearch中的BM25算法实现原理及应用分析
文章目录 一、引言二、BM25算法实现原理BM25算法的实现原理1. 词频(TF):2. 逆文档频率(IDF):3. 长度归一化:4. BM25评分公式: BM25算法示例 三、BM25算法在ElasticSearch中的应用分析…...
![](https://img-blog.csdnimg.cn/direct/e9c804443e954d1199ba7debb3cf868e.png)
web权限到系统权限 内网学习第一天 权限提升 使用手工还是cs???msf可以不??
现在开始学习内网的相关的知识了,我们在拿下web权限过后,我们要看自己拿下的是什么权限,可能是普通的用户权限,这个连添加用户都不可以,这个时候我们就要进行权限提升操作了。 权限提升这点与我们后门进行内网渗透是乘…...
![](https://img-blog.csdnimg.cn/direct/86489b43e4c54220bca37663ac7c2a47.png)
ros1仿真导航机器人 hector_mapping gmapping
仅为学习记录和一些自己的思考,不具有参考意义。 1 hector_mapping 建图过程 (1)gazebo仿真 roslaunch why_simulation why_slam.launch <launch><!-- We resume the logic in empty_world.launch, changing only the name of t…...
![](https://img-blog.csdnimg.cn/direct/4b91639e535948a8b62ea5842445970e.png)
ANSYS新能源汽车动力电池仿真应用案例
燃料电池是一种非燃烧过程的电化学能转换装置,将氢气(等燃料)和氧气的化学能连续不断地转换为电能,是发电设备而非储能设备。 根据电解质的不同,分为碱性燃料电池AFC、磷酸燃料电池PAFC、熔融碳酸盐燃料电池MCFC、固体…...
![](https://i-blog.csdnimg.cn/direct/84c2c6aab0ac48d9912b02877dc0b5d2.png)
ES6模块化学习
1. 回顾:node.js 中如何实现模块化 node.js 遵循了 CommonJS 的模块化规范。其中: 导入其它模块使用 require() 方法 模块对外共享成员使用 module.exports 对象 模块化的好处: 大家都遵守同样的模块化规范写代码ÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
C++利用常量来防止形参误修改 函数被定义两次是不允许的
#include<iostream> using namespace std;void displayInfo(const int& num) {// 函数体内不能修改num的值cout << "num " << num << endl; }int main() {int myNumber 5;displayInfo(myNumber);// 传递myNumber的引用,但不…...
![](https://i-blog.csdnimg.cn/direct/e697d5cbd885436bbdee44dc8e7cdfb1.png)
jmeter-beanshell学习2-beanshell断言
继续写,之前写了获取变量,设置变量,今天先写个简单点的断言。 一般情况用响应断言,就挺好使,但是自动化还要生成报告,如果断言失败了,要保存结果,只能用beanshell处理,顺…...
![](https://img-blog.csdnimg.cn/direct/38e29ffab00944d5b129cf2e3198f42b.png)
Linux配置固定ip地址
虚拟机的Linux操作系统,其IP地址是通过DHCP服务获取的 DHCP:动态获取IP地址,即每次重启设备后都会获取一次,可能导致IP地址频繁变更。 一般系统默认的ip地址设置都是自动获取,故每次系统重启后ip地址都可能会不一样&a…...
![](https://i-blog.csdnimg.cn/direct/9bdc3acadc544a48b03359dd9a8977b1.png)
【C++】认识使用string类
【C】STL中的string类 C语言中的字符串标准库中的string类string类成员变量string类的常用接口说明成员函数string(constructor构造函数)~string(destructor析构函数)默认赋值运算符重载函数 遍历string下标[ ]迭代器范围for反向迭代器 capacitysizelengthmax_sizeresizecapaci…...
![](https://www.ngui.cc/images/no-images.jpg)
最新入门版车型,吉利星瑞龙腾版正式上市,售价9.97万元
近日,吉利官方宣布,旗下吉利星瑞龙腾版正式上市,新车共推出1款车型,官方指导价为9.97万元。新车依旧定位紧凑型车,将可选专属车身颜色,动力上采用1.5T发动机。新车作为星瑞系列最新的入门版车型推出,相比此前的入门版车型扶摇版10.87万元,售价下探了9000元,提升了新车…...
![](https://www.ngui.cc/images/no-images.jpg)
年轻化的新一代迈腾,颜值并不丑,三大屏高通8155
年轻化的新一代迈腾,颜值并不丑,三大屏高通8155,像新势力中国汽车市场的竞争是越来越激烈,要想脱颖而出,即便是合资品牌旗下的主力常青树车型,现在也要拥抱变化了。就拿大众迈腾这款车来说,长期以来已经形成了一套固定的印象标签,无非就是中规中矩的沉稳商务风格。但全…...
![](https://www.ngui.cc/images/no-images.jpg)
比亚迪又放大招,e平台3.0Evo及首款车型发布
在去年的早些时候,比亚迪发布了e平台3.0,相较于e平台的前两代,e平台3.0针对安全性、强度、空间利用率、电池利用率都有了很大的提升,可以说比亚迪终于在电驱平台上达到了完全体,几乎弥补了之前平台的短板,目前已经应用于品牌旗下的多款车型上面,实际的体验也的确有了明显…...
![](https://www.ngui.cc/images/no-images.jpg)
Day27
Day27 反射案例 案例一:万能数组扩容 注意:copyOf、toString public class Test01 {/*** 知识点:反射案例 之 万能数组扩容* * 注意:copyOf、toString*/public static void main(String[] args) {String[] ss {"aaa"…...
![](https://www.ngui.cc/images/no-images.jpg)
Java实现AES,DES,RSA加密
Java的Cipher类 Cipher类提供了加密和解密的功能。 Cipher类可以完成aes,des,des3和rsa等加密方式 AES加密算法 介绍 这个标准用来替代原先的DES,AES加密过程涉及到4种操作,分别是字节替代、行移位、列混淆和轮密钥加。解密过程分别为对…...
![](https://www.ngui.cc/images/no-images.jpg)
Spring Boot集成rss快速入门demo
1.什么是rss? RSS 的全称是「简易内容聚合」(Really Simple Syndication),是一个能让你在一个地方订阅各种感兴趣网站的工具。 一个网站支持 RSS,就意味着每当它新发布一篇新文章,就会往一个位于特定网址的…...