velcoity使用说明:velocity宏定义#SLITERAL

华为OD新系统机试真题-8位LED控制器(C/C++/Py/Java/Js/Go) 华为OD新系统机试真题【8位LED控制器】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD新系统4月19号机试真题【8位LED控制器】 阅读详情

#SLITERAL主要是用来在源代码中按原来的内容显示出来,比如我们要对SEO优化,必须要编辑title元素和Description的content内容。就需要把一些特殊字符显示在源代码中,如:≥,&,"等特殊符号,这就是SLITERAL的应用场景,按原意显示文本内容。这些内容都不直接显示在页面,主要通过源代码查看具体内容,供搜索引擎使用的。在使用SLITERAL等内容时要保证不出现特殊命令和符号,如果String中包含浏览能解析的元素如javascript脚本,特殊字符,我们在输出时一定要小心。

举例:#set($str="<script type='text/javascript'>window.alert();</script>"),如果我们采用#SLITERAL($str)这样就会弹出提示框。如果直接$str就会正常显示代码。因为vm中会默认把代码进行html encode编码。

先看一下一张简单页面到底包含了那些基本元素

html页面几个元素:

html

|---head

| |---title

| |---meta

|---body

我们知道head中的内容不直接显示在页面上,这就意味着浏览器不会解析这里面的内容。

Body中主要是页面展示内容,浏览器会对这块内容进行解析,包括html解析,javascript解析等。这样我们可以看一下这么一个例子:

<!--testHtml.html->

用浏览器打开,很正常的显示一个提示框,内容是4。我们发现title中的内容正常文本,没有被解析。打开源代码,发现description、keywords的内容也没乱码。

Exodus2网站搭建在vm模板上,vm模板默认会对代码进行html encode编码,这意味着如果有一张vm模板页面解析以后要和上面这张html页面内容一致,必须如下编写:

## testHtml.vm

$rundata.getModuleInfo().setLayoutTemplate(null)

<html>

<head>

<title><scripttype='text/javascript'>window.alert(1);</script></title>

<metaname="description"content="<scripttype='text/javascript'>window.alert(2);</script>"/>

<metaname="keywords"content="<scripttype='text/javascript'>window.alert(3);</script>"/>

</head>

<body>

<scripttype='text/javascript'>window.alert(4);</script>

</body>

</html>

有人会说和html编写一样,的确一样。但是exodus2应用中页面的description,keywords等内容主要是通过变量传入的,所以真正实用的代码应该如下:

## testHtml.vm

$rundata.getModuleInfo().setLayoutTemplate(null)

<html>

<head>

#set($title="<scripttype='text/javascript'>window.alert(1);</script>")

#set($description="<scripttype='text/javascript'>window.alert(2);</script>")

#set($keywords="<scripttype='text/javascript'>window.alert(3);</script>")

<title>#SLITERAL($title)</title>

<metaname="description"content="#SLITERAL($description)"/>

<metaname="keywords"content="#SLITERAL($keywords)"/>

</head>

<body>

<scripttype='text/javascript'>window.alert(4);</script>

</body>

</html>

这个页面的内容解析后与原html内容一致。如果去掉#SLITERAL()解析,内容会被velocity引擎按html编码解析后再转化为html页面,内容如下:

<html>

<head>

<title><script type='text/javascript'>window.alert(1);</script></title>

<metaname="description"content=<scripttype='text/javascript'>window.alert(2);</script>/>

<metaname="keywords"content=<scripttype='text/javascript'>window.alert(3);</script>/>

</head>

<body>

<scripttype='text/javascript'>window.alert(4);</script>

</body>

</html>


31、Labview如何搭建程序框架?--状态机到数据采集等常用框架 本文废话不多,直接列举几种框架搭建方式,为了尽量向大家提供干货,本文直接从简介和手把手教搭建框架两方面来讲解,本文提到五种经典框架模式,学会这五种就很够了,分别是:状态机框架(State Machine)、生产者-消费者框架(Producer-Consumer)、主-从框架(Master-Slave)、事件驱动框架(Event-Driven)、分层架构(Layered Architecturep)。这个框架是基于状态机结构的。顾名思义“状态机”就是个“切换程序状态的机器”。本质是一个。 阅读详情

相关推荐

从零开始:使用Remix和MetaMask在测试网部署智能合约的完整指南

本文提供了一份完整的指南,教你如何使用Remix和MetaMask在测试网上部署智能合约。从环境搭建、获取测试网代币到编写和部署合约,再到与合约交互和连接Python后端,涵盖了智能合约开发的各个环节。特别适合初学者快速上手区块链开发,同时介绍了安全注意事项和调试技巧。

weixin_29019241的博客 474

IDA Pro插件VulFi实战:轻量级污点分析与漏洞模式匹配

静态污点分析是一种重要的软件安全分析技术,它通过追踪用户可控数据在程序中的传播路径,来识别潜在的安全风险。其核心原理是标记输入源,模拟数据流经指令和函数调用的过程,并检测其是否到达危险操作点。这项技术的价值在于能够自动化地发现诸如缓冲区溢出、命令注入等内存安全漏洞,极大地提升了在二进制代码审计和漏洞挖掘中的效率。在逆向工程与二进制安全研究领域,结合反汇编工具进行轻量级、交互式的污点分析,已成为挖掘闭源软件漏洞的常见实践。本文聚焦的VulFi插件,正是深度集成于IDA Pro的杰出代表,它通过轻量级静态污点分

z466459262的专栏 447

命令行执行YOLO训练命令报错:1.PermissionError: [WinError 5] 拒绝访问 2.OMP: Error#15: Initializing libiomp5md.dll...

(已解决!)报错:1.PermissionError: [WinError 5] 拒绝访问 2.OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.

Gpengyuyan的博客 1124

velocity模板渲染页面性能优化

Velocity模板渲染页面性能优化 对于页面性能优化这块,尤其是velocity宏的使用,如何使用宏,怎么样将宏的使用发挥到极致,达到更大的性能的提示,我的建议如下:1:一般我们不推荐使用宏,因为宏每次都要要JJT解析,然后才能再执行;2:使用宏能达到最好的性能情况下,非常安全的,一般在页面有些信息是用户输入的情况使用会比较好。下面我针对他的一些意见和我们项目的一些情况,整理了一些关于宏使用的...

andyjames 767

【RS】哨兵系列数据下载(哨兵2号Sentinel-2波段介绍、下载)

以哨兵二号为示例,分享如何下载欧空局的哨兵系列数据

Remote Sensing迷途小书童 1万+

mac搭建ios自动化环境之WebDriverAgent配置

一、WebDriverAgent 1、简单介绍: WebDriverAgent是facebook为苹果公司开发的一款自动化测试工具,github上有下载资源;另外appium安装后也会自动安装自带的WebDriverAgent;可以用自带的,也可以从github下载并替换自带的; 2、不同appium版本自带WebDriverAgent默认路径不同 1)appium 1.10.1之前版本: npm方式安装: /usr/local/lib/node_modules/appium/node_modules/a

qq_30237715的博客 2761

Velocity宏定义的坑与解决办法

Velocity宏定义的坑与解决办法 使用Velocity,当然就免不了要使用宏,或者说使用Velocity而不使用其宏,就相当于废了Velocity一半以上的武功,非常可惜的。 怎么使用Velocity的宏呢,才最大程度的发挥其作用但是又避免掉入其中的坑呢?且听悠然乱弹乱弹: 官方文档中,关于Macro是这么说的: #macro - Allows user

u014727618的专栏 1620

NVIDIA Omniverse 技术浅析(三):NVIDIA RTX 技术

NVIDIA RTX 技术是 NVIDIA 推出的革命性图形渲染技术,旨在通过硬件加速和软件优化,实现高质量的实时图形渲染。RTX 技术在 NVIDIA Omniverse 平台中扮演着至关重要的角色,为其提供了强大的渲染能力。

m0_75253143的博客 351

Velocity JAVA引擎模板 (八)宏

Velocity JAVA引擎模板 (八)宏 本文是【宏语句】demo java /** * 宏 */ @Test public void test8() throws IOException { //1 加载配置 Properties properties = new Properties(); prop...

赵先森 450

Arduino IDE 开发ESP32-S3编译报错 Sketch too big?一步步解决!

解决方法很简单,只需要一步步来修改 Arduino IDE 的配置即可。确保你已经打开 Arduino IDE 并加载了你的 ESP32 代码。如果你也遇到了这个问题,按这个方法试试,应该就能顺利搞定!,如果你需要 OTA,就不能选这个方案,需要换成。,但我回头一想,我这块 ESP32-S3 可是。,按理说存储空间应该足够啊,那这到底是咋回事?,默认方案就装不下了,这时就需要选择更大的。按钮,这次应该不会报错了!,然后在下拉菜单中找到。,可以支持更大的固件。如果你的固件体积超过。,就能正常编译上传。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2135

Coze智能体开发:开始使用扣子

扣子全新升级!它不仅能帮你办公、做视频、写代码,更具备自主任务执行、探索进化等能力,真正从“陪你聊”走向“帮你干活”。

王国平的博客 122

velcoity使用说明:velocity基础

概述:velocity是一个典型的model和view分离设计思想的体现,因此其概念定义的几个主要元素和mvc中的概念也有一定的隐射关系。比较重要的几个概念:1.VelocityContext:velocity上下文,用来保存数据用的,主要是工程师书写代码是放数据用的,提供给模板使用2.Template:模板,设计师设计的页面的加载器,具体的数据则由Velo

madding 3345

用R来做一个临床研究亚组分析的森林图

在编程语言里R语言最强大的功能是做图功能,我们知道在做Meta分析的时候会需要做森林图,实际上我们在很多临床研究中也经常看到森林图,主要是亚组分析的森林图,比如下面这篇文章里的一个森林图: 今天就教教大家怎么用R语言来做上面这种亚组分析的森林图 1. 在Excel里编辑好数据,按照下面的格式整理,保存为csv格式 2. 下载安装R跟Rstudio R软件的下载地址: https://mirrors.tuna.tsinghua.edu.cn/CRAN/ Rstudio下

Mrrunsen的博客 5340

Velocity安全输出帮助

<br />Velocity安全输出帮助 <br /><br />    * html输出 什么都不执行, 按原始格式输出。 他并不是真正的不执行任何变化, 因为他会执行xss的过滤动作。一个非常复杂的安全处理过程, 如果不是输出HTML, 请勿使用。 这个表示将会消耗大量的CPU处理。 <br /><br />          #SHTML($html) <br /><br />    * xml编码输出, 将会执行 xml encode输出 <br /><br />          #SXML($x

我的JAVA快乐生活 2565

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Spring MVC中VM页面使用自定义宏

在使用vm做为视图展示时,Spring框架本身提供了一些定义好的宏让开发者重用.如在spring.vm文件中,如页面表单绑定常用的宏: [code="java"]#macro( springBind $path ) #if("$!springHtmlEscape" != "") #set( $status = $springMacroRequestCo...

yfzzky的专栏 515

OV9734 DATASHEET,完整规格书

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

java宏_java Velocity 的宏定义实例详解

一个简单的例子用来演示 Velocity 的宏定义VMDemo.javaimport java.io.StringWriter;import java.io.Writer;import org.apache.velocity.Template;import org.apache.velocity.VelocityContext;import org.apache.velocity.app.Velo...

weixin_42524945的博客 358

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

memcached原理应用及问题

背景:在做服务器端应用开发,我们常常要考虑很多东西。从单台机器到集群,从混乱的结构到分层结构,接着是系统优化,中间作cache处理,后端优化缓存。今天就讨论一下服务器端缓存:)举例:先来看一下这么一个应用场景:当应用A要获取应用B的一批数据,这个数据一开始为一个定值10,而这些数据有个特点,一般几天内不会作变化,而且对业务的影响比较小。应用B由于是网络提供服务,获取数据需要一定时间。我们把上面的场景抽取一下:应用B提供的获取数据方法:getData()按照一般编程方法是这样:会直接调用这个函数进行使用但是是

madding 4125

Velocity(9)——宏

Velocity(9)——宏 定义宏和使用宏 #macro指令用于定义一个VTL模板的重复代码块——宏。下面是一个简单的定义宏的例子: #macro( d )<tr><td></td><tr>#end 这段代码定义了一个宏,名字为d,没有参数。下面是使用这个宏的代码: #d()...

weixin_30848775的博客 279

Velocity模板引擎入门

类似于PHP中的Smarty,Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。从而实现界面和Java代码的分离,使得界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点。另外,Velocity的能力远不止web站点开发这个领域,例如,它可以...

ly364434006的博客 425

Velocity

导读:   Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。   当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关

jieyulu的专栏 3043

常用的宏定义

#ifndef MacroDefinition_h #define MacroDefinition_h   //-------------------获取设备大小------------------------- //NavBar高度 #define NavigationBar_HEIGHT 44   //获取屏幕 宽度、高度 #define SCREEN_WIDTH ([UISc

上孟的专栏 742

happyCode(2) SpringBoot2.0 集成Freemarker 。。Beetl

1.pom.xml  &lt;!-- Freemarker模板引擎 SpringBoot整合依赖 --&gt;     &lt;dependency&gt;         &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;         &lt;artifactId&gt;spring-boot-starter-freemarker...

phone13144830339的博客 332
上一篇: mq&napoli
下一篇: dom4j简单使用
「已注销」
博客等级 码龄20年 47粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值