Velocity前言

     Velocity是一个非常常用的前端模版框架,已经有十多年历史了。目前并没有一套比较完善的资料来详细的介绍Velocity,这个博客系列就来谈谈吧。

    

       其实,还有另一个缘由,在项目中有一次使用Velocity的#include 语法嵌入另一个VM文件的时间,发现无论怎样合理填写文件资源路径,就是无法正确引用该文件。后来终于发现velocityConfig的resourceLoaderPath属性被设置成了另一个目录,#include标签所引用的资源必须位于此目录下。深感在没有全面了解一个工具的前提下会遇到各种各样的坑。

 

     这个博客的目录如下:

    (一) velocity语法与配置项

    (二)自定义velocity 标签

    (三)velocity在web项目中的使用

    (四)VelocityTool介绍

    (五)Velocity架构以及实现原理

    (六)Velocity源码分析

    (七)antlr词法分析

    (八)Jakarta-ORO文本处理工具包

 

    ....希望可以一直写下去

 

Velocity基于模板的代码/配置自动生成实例 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、Velocity是什么?二、Velocity使用例子1.加入maven依赖2.编写模板文件3.编写测试程序3.生成的测试结果3.其它语法说明总结 前言 当前JAVA主流的技术还是使用MVC三层模型来进行开发,特别是基于SpringBoot来开发一些微服务,各个微服务代码结构基本相同,很多代码也能基本雷同。所以,为减少编码的工作量,代码生成工具应运而生。比如原生的Mybatis-plus, 其它的代码生成工具比如有,懒猴子 阅读详情

相关推荐

不到200块!手把手教你用ZYNQ7010和AD9363攒一台自己的开源SDR硬件(附BOM清单)

本文详细介绍了如何用不到200元的预算,基于ZYNQ7010 FPGA和AD9363射频芯片打造一台功能完备的开源SDR硬件平台。从核心组件选型、PCB设计到焊接调试,提供全流程实战指南,特别适合预算有限的硬件爱好者和创客群体探索无线通信世界。

weixin_26854829的博客 479

velocity 模板语法

velocity 模板语法前言1. 访问1.1 变量1.2 属性1.3 方法2. 指令2.1 #set 创建变量2.2 #if/#elseif/#else 分支控制2.3 #foreach 循环控制2.4 #include - 引入本地文件,文本展示2.5 #parse - 引入本地文件,velocity 解析后展示2.6 #stop - 停止模板解析2.7 #break - 停止当前指令2.8 #evaluate - 动态解析字符串或引用2.9 #define - 定义一个“块”引用2.10 #mac

qq_22783587的博客 3576

避坑指南:MTK平台Widevine L1密钥安装全流程详解(含SP META工具使用与Log分析)

本文详细解析了MTK平台实现Widevine L1认证的全流程,涵盖密钥申请、格式转换、安全烧录等关键步骤,特别针对Trustonic TEE环境下的SP META工具使用与日志分析提供实用指南。帮助开发者规避常见错误,确保DRM密钥安全部署,满足高端内容保护需求。

weixin_27219587的博客 476

Velocity模板引擎

velocity介绍Velocity是一个基于Java的模板引擎,可以通过特定的语法获取在java对象的数据,填充到模板中,从而实现界面和java代码的分离应用场景Web应用程序:作为为应用程序的视图,展示数据。源代码生成 :velocity可用于基于模板生成Java源代码自动电子邮件:网站注册,认证等的电子邮件模板网页静态化:基于velocity模板,生成静态网页velocity结构Velocity主要分为app、context、runtime和一些辅助util几个部分。

qq_43842093的博客 1098

STM32L452与FPGA通信翻车?手把手教你关闭I2C时钟延展避坑(附OVR错误解决方案)

本文深入解析STM32L452与FPGA在I2C通信中因时钟延展功能导致的常见问题,提供关闭I2C时钟延展的详细配置方法(NOSTRETCH模式),并针对可能出现的OVR错误给出Combined模式解决方案。通过实战案例和波形分析,帮助工程师快速排查和解决嵌入式系统中的I2C兼容性问题。

e3f4g5的博客 214

MFC工具栏增加EditBox和Button

1. 在资源视图中增加EditBox, Button控件,ID分别为ID_EDIT_SEED, ID_BTN_SEED 2. 在CMainFrame中增加成员变量 CMFCToolBarEditBoxButton *m_editSeed; CMFCToolBarButton *m_btnSeed; 3. 在CMainFrame::OnCreate中创建控件 m_editSeed = new CMFCToolBarEditBoxButton(ID_EDIT_SEED, GetCmdMgr()-&.

学习是为了探索这个世界的本质 802

使用velocity完成模板引擎配置和读取并实现后端代码自动生成

项目中对于基础的crud代码实现和实体类等通用文件的构建,我们除了可以使用mabtis逆向工程,也可以使用模板引擎去完成。 根据实体类中的属性我们可以个性化配置自己的代码生成文件格式 在postman中(后续会追加网页端代码生成)根据自己的需求填写配置信息,一般必填的如下,分别有dsName:数据库名称,tableName:表名称,moduleName:模块名称,以及projectPath:代码生成的路径。可以根据需求追加实体类中的属性作为请求参数 当提示代码生成结束后则可以找到对应路径下,

qq_42077566的博客 3093

小米路由器安装Misstar tools 和MIXBOX

1.该教程适用于如下路由器: 小米路由器1代硬盘版(R1D) 小米路由器mini(R1CM) 全新小米路由器硬盘版(R2D) 小米路由器3(R3) 小米路由器3G(R3G) 小米路由器Pro(R3P) 小米路由器HD(R3D) 2.Misstar2.0在线安装 方法如下: 1.根据路由器对应文件解压文件,把解压目录(比如小米3路由器为R3)和offline_install.sh到U盘根目录,并插入路由器 2.ssh登录后,cd到U盘的目录,比如小米3路...

wybarcelona的博客 2万+

SpringBoot-Velocity模板引擎

它允许任何人仅仅使用简单的模板语言来引用由java代码定义的对象。本案例使用动态生成文件。

孟孟的博客 2964

基于STM32的嵌入式平台实现EtherCAT主站

本文将介绍如何在基于STM32的嵌入式平台上构建EtherCAT主站,并提供相应的源代码。使用SOEM库提供的API函数,我们可以实现与EtherCAT从站设备的实时通信和数据交换。在STM32的代码中,使用SOEM库提供的API函数初始化EtherCAT主站。在SOEM库中,我们可以找到EtherCAT主站的实现代码和相关的API函数。使用SOEM库提供的API函数实现EtherCAT主站的功能,包括发送和接收EtherCAT数据帧、处理从站设备的状态等。确保连接正常并且设备能够相互通信。

CodeSageX的博客 2832

keil工程After Build/Rebuild添加带参.exe实现全流程(2):带参调用.exe的几种方法

keil工程After Build/Rebuild添加带参.exe实现全流程(2):带参调用.exe的几种方法。

kevin1499的博客 1617

JAVA安全之Velocity模板注入刨析

随后进行模板渲染操作,如果nodeTree为null,则返回false,表示评估失败,如果nodeTree不为null,则调用render方法,使用提供的上下文、写入器和日志标签来渲染模板,将render方法的结果(布尔值)作为返回值,如果渲染成功则返回 true,否则返回false。在Apache Velocity模板引擎中$符号用于表示变量的引用,通过$您可以访问在模板中定义的变量、对象属性和方法,这是Velocity的核心特性之一,使得模板能够动态地插入数据。

2401_83799022的博客 2091

电源防反接保护电路全攻略实战A04

本文深入剖析了硬件设计中电源保护电路的关键技术与实战经验。文章指出,保护电路虽小但至关重要,通过对比分析二极管与MOSFET防反接方案,揭示了MOSFET在效率、温控方面的优势。针对过压保护,重点讲解了TVS二极管选型要点,强调钳位电压而非击穿电压才是保护核心。文章结合工业案例(如48V通信模块烧毁、5V系统MOSFET过热等),详细阐述了PCB布局规范、热设计路径等工程细节,并提供了USB接口ESD防护的完整选型方案。最后强调硬件设计必须考虑最坏工况,在成本与性能间找到平衡点,避免因小失大。

启芯硬件的博客 776

Velocity基本内容、语法、规则介绍

Velocity基本内容、语法、规则介绍

m0_46748682的博客 3960

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【实习之velocity】

Velocity

weixin_45554007的博客 665

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Velocity-2 样例

Velocity-2 样例前言一、需求解读二、实现1.准备模板文件第一步第二步第三步第四步2.组装数据3.目标文件生成 前言 在这篇文章中,你将看生成一个 Word格式的目标文件 的所有代码。当然,本例只是一个很小的实现。如果你有更好的实现方法,欢迎在评论区留言分享。 一、需求解读 现在需要生成一个IT部信息文档(数据纯属编造,如有雷同,纯属巧合) 二、实现 1.准备模板文件 第一步 编辑需求所给出的Word文件,去除掉多余的部分,只保留最基础的内容,并将数据部分使用其他字符替代(任意字符,只要你自己

Mister_F的博客 679

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

FreeMarker、Velocity之前端模板特性比较

前言: 最近在写几个基于websocket的监控页面,改来改去(无产品参与,无PRD)到现在,产品希望用原来的模板(基于velocity),而我本身倾向于thymeleaf,(Velocity此前压根没用过啊而且1.5版本之后的spring boot是不支持的)。而刚刚又收到上级通知,出一份前端框架的比较的文档。 PS: 由于本人是后台出身,对前端研究甚浅,以下分析内容均为认真拜读他人

Richard_vi的博客 1万+

第二十五章 : Springboot使用velocity模板引擎

Velocity 是什么、Velocity引擎是如何进行模板加载、适用场景有哪些、资源加载器的类型、以及Velocity 在代码生成场景中的应用。

RodJohnsonDoctor的专栏 2092

Java模板引擎 Velocity

在Java开发中,模板引擎是一种非常实用的工具,它通过模板与数据的结合,生成所需的内容,帮助开发者实现代码与界面的分离。Apache Velocity 是一种轻量级且功能强大的Java模板引擎,它因其简单的语法和灵活的扩展性而备受欢迎。本文将详细介绍Velocity模板引擎的特点、工作原理、使用方法以及其在实际开发中的应用场景。

cooldream2009的博客 2373

使用Velocity导出Word文档

基于上一篇的velocity的简单介绍,本篇博客主要是利用velocity进行word文档的导出。针对在开发过程中会遇到一些根据指定的模板来导出,而且这个模板里面有各种各样的样式限制,如何使用Velocity进行模板导出提供了方法。

Frankenstein的博客 3920

java velocity 使用_Java模版引擎velocity的使用

前言关于velocity与SpringMVC的配置请参考前一篇文章,此处不再介绍。velocity作为Java模版引擎的主要目的是为了允许任何人使用简单而强大的模板语言来引用定义在Java代码中的对象。在velocity文件中可以给该页面指定模版布局,从而节省了大量的时间去写通用的模版布局。可以定义变量,与Java方法进行交互。定义一个layout模版在上一篇文章中提到了配置默认模版,当然也可以不...

weixin_30312037的博客 482

SpringMVC 集成velocity

前言 没有美工的时代自然少不了对应的模板视图开发,jsp时代我们用起来也很爽,物极必反,项目大了,数据模型复杂了jsp则无法胜任。 开发环境 idea2016、jdk1.8、tomcat8.0.35 spring 4.3.6、velocity1.6、velocity-tools 2.0 SpringMVC集成velocity 1、VelocityViewResolver。 <!--VelocityViewResolver视图配置--&g...

qinglin1107的博客 388

Velocity技术入门及常用语句

前言Velocity是一种Java模版引擎技术,该项目由Apache提出,由另外一种引擎技术Webmacro引深而来。那什么是官方的Velocity定义呢?Apache对它的定义是:一种基于Java的模板引擎,但允许任何人使用简单而强大的模板语言来引用定义在Java代码中的对象。其实Velocity就是MVC架构的一种实现,但它更多的是关注在Model和View之间,作为它们的桥梁。相比传统的JSP

Megustas_JJC的博客 1055

使用Velocity模板引擎编写自研代码生成器

本篇文章主要讲解通过Velocity模板引擎自研开发一个代码生成器框架,可根据数据库已有的表结构生成基于MVC架构的Java代码,也可个人需求随时添加或修改要生成的代码内容,非常方便,并提供了一些设计模式使用的范例,希望对读者有所帮助。Velocity模版引擎的具体使用可以参考这篇文章。Velocity模版引擎介绍,本篇文章只简单介绍一下最基础的使用。

chang_mao的博客 2960

Velocity提取模板变量

摘要 本文介绍了通过解析Velocity模板语法树提取变量的方法。作者通过调试发现Velocity模板变量存储在Node数组中,利用反射获取ASTprocess节点数据,遍历解析ASTReference和ASTIdentifier节点来提取变量名。实现代码基于Hutool工具包的VelocityEngine,通过反射访问原始模板数据,递归解析节点结构,最终返回变量名集合。该方法支持提取简单变量(如${name})和嵌套变量(如${java.lang.String.XTEST}),并提供了完整的示例代码和Ma

愤怒的苹果ext的博客 427
上一篇: linux shell 之重定向
下一篇: (一) velocity语法与配置项
liyebing
博客等级 码龄20年 32粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值