- 浏览: 2663398 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
1. 数字范围循环:
#foreach( $index in [$pageRang.begin..$pageRang.end] ) $index #end
2. 获取foreach index
#foreach() $velocityCount #end
从1开始
3.Velocity里的加减法
#set ($n3= $n - 1) #set ($n2= $n3 *30)
要设置一个变量,而且相减之间要有空格,然后才能减
1、变量输出要带上静止修饰符,避免模板直接空指针报错
举例 :$var错误,$!var正确
如果变量referce与html代码连在一起,需要加上{}
举例 :$! {var}gadsgaggaggas
|
2、Macro的使用
由于宏存在着安全和性能问题,并且会影响模板的可读性,在模板中不推荐使用宏。
3、变量引用不要加引号,避免重复转义举例:
$stringUtil.equals(
"$text"
,
"&"
) 错误
$stringUtil.equals($text,
"&"
) 正确
|
4、关于velocity的版本
目前推荐使用 velocity 1.6.1,因为以往velocity版本往往会出现向下不兼容的情况 版本升级需要经过架构部门(校长)的充分论证和评估才能实施。
5、Velocity的安全性
为避免VELOCITY页面渲染后产生XSS漏洞,应用应该采用校长的安全方案在应用中引入toolkit-service-velocity.1.5
包。
XSS
的过滤,使用
velocity
提供的
xss
过滤功能
1)对于html,可以使用 #SHTML($html)2)对于JS,可以用 #SJS($js)
3)对于xml,可以使用#SXML($xml)
4)屏蔽转义,可以使用#SLITERAL()
上述宏,因为非常消耗CPU,因此如果不含特定内容,不到万不得已,不得使用。
发表评论
-
Raft
2018-07-12 14:20 762前言 上篇文章说解决问题要分而治之,先把分片的问题解决了再 ... -
java uuid
2017-09-14 18:18 560在java中产生uuid的方式是使用java.util.UU ... -
JAVA 编码规范
2017-09-06 11:34 418https://google.github.io/style ... -
mac 入门
2015-12-01 16:28 626http://foocoder.com/blog/wo-zai ... -
java 反编译工具gad
2014-05-09 12:04 977java 反编译工具gad,备个份。 -
java 代码大全(code book)
2014-04-29 10:59 1083参考这里: http://www.java2s.com/C ... -
SQL语法解析器JSQLParser
2014-02-09 19:53 2150SQL 语法解释器jsqlparser 是用java ... -
BufferedInputStream 深入研究。
2013-11-19 13:26 14271. BufferedInputStream的基本原理 ... -
java 启动脚本
2013-08-22 19:08 982java 启动脚本 #!/bin/bash cmd=&q ... -
CRLF escape
2013-08-06 17:51 1201最近需要对用户输入的CRLF即(\r\n)做escape, ... -
安全的自增类
2013-07-22 18:16 991java中一个计数器如果超过MAX_VALUE再自增会如何? ... -
solr日志被block的问题
2013-05-23 16:48 1265"catalina-exec-22386" ... -
beanMapper
2013-01-13 22:43 889实在被一堆get,set搞烦了,周末写了一个beanMappe ... -
java instanceof ,isInstance(),isAssignableFrom之前的差异
2013-01-06 11:00 962public class ItemQuery { ... -
通过gzip对字符串压缩
2012-12-22 18:10 3128通过GZIPOutputStream,GZIPInputStr ... -
关于URL编码
2012-12-21 14:18 1112一、问题的由来 URL就是网址,只要上网,就一定会用到。 ... -
spring的FactoryBean机制
2012-11-20 16:18 1240spring可以通过的FactoryBean的形式把一个Fac ... -
HashMap cpu占用 100%
2012-11-10 22:22 1815今天在重现出HashMap cpu占用100%了,只 ... -
文字扫描工具--java.util.Scanner
2012-11-10 14:33 1102A simple text scanner which c ... -
一个隐形的java int溢出
2012-11-06 22:17 1120故事的背景: 笔者最近在做一个类SNS的项目, ...
相关推荐
** 使用Velocity的注意事项 ** 1. 避免在模板中使用复杂的逻辑,因为Velocity主要是为了分离逻辑和展示,过于复杂的逻辑应该放在后台处理。 2. 注意变量命名规范,遵循Java的驼峰命名规则,提高代码可读性。 3. ...
注意事项 - 在 Velocity 中,空格和缩进都会被输出,因此在编写模板时需要注意格式。 - 为了避免模板中的 Java 代码暴露,尽量将复杂逻辑移到后端 Java 类中,只在模板中做简单的数据展示。 - 保持模板清晰简洁...
- **注意事项**:如果右侧的值为 `null`,则左侧的变量可能不会被赋值,具体取决于配置。 ##### 2. 条件语句 - **If/ElseIf/Else**:实现条件分支。 ```velocity #if($foo == "true") <strong>Velocity! #else...
这篇内容将详细解释如何通过“link”方式在Eclipse中安装Velocity插件,以及相关步骤和注意事项。 首先,我们需要理解“link”方式安装插件的概念。在Eclipse中,"link"方式是一种不直接修改Eclipse安装目录的安装...
**注意事项**: - 如果右侧值为 `null`,则左侧值保持不变。 - 在 Velocity 模板中,未定义的变量会被当作字符串处理。 - Velocity 不会将引用解析为对象的实例变量。例如,`$foo.Name` 被解释为调用 `getName()` ...
- `README` 或 `RELEASE-NOTES`: 介绍版本更新内容和使用注意事项。 - `LICENSE` 和 `NOTICE` 文件:Apache 软件许可信息。 **4. 使用与配置** 在使用 Velocity 1.7 时,首先需要在项目的 classpath 中添加上述的 ...
6. **注意事项**: - 确保MyEclipse版本与Velocity插件兼容,否则可能会出现安装失败或运行异常。 - 如果安装过程中遇到问题,检查网络连接、插件来源和安装步骤的正确性。 - 定期更新插件,以获取最新的功能和...
### 高级技巧与注意事项 - **大小写敏感性**:Velocity区分变量名的大小写,`$Var`与`$var`被视为不同变量。 - **循环控制变量**:`$velocityCount`用于获取循环中的当前位置,帮助开发者在循环中实现更复杂的逻辑...
5. **Formal Reference Notation(正规引用格式注意事项)**:用于创建更复杂的引用,如`$!object.property`。 6. **Quiet Reference Notation(静态引用输出)**:`$!`前缀用于在引用不存在时输出空字符串,而不是尝试...
**使用注意事项** 在Velocity模板中,确保引用的名称与Java代码中的变量或方法匹配是至关重要的,这样才能正确地从Java上下文中获取数据。Velocity对未定义的变量引用不会抛出异常,而是原样输出,因此在模板中使用...
- **注意事项**:在 Velocity 模板中处理数据时,避免修改传入对象的状态,以免引起意料之外的问题。 ##### 2. HTML/XML 字符转义 - **重要性**:为了防止 XSS 攻击,对于从数据库获取的字符串需要进行 HTML/XML ...
8. 使用 Velocity 的注意事项: - 用户手册为译者整理而成,可能存在错误,需用户指正和纠正。 - 用户手册提供了反馈方式,以便用户能够提供反馈。 以上就是从给定文件内容中提取的关于 Velocity 用户手册的知识...
- **其他细节**:涵盖Velocity使用的其他注意事项和技巧。 #### 八、Application Attributes - **属性概述**:解释Application Attributes的作用和用法。 #### 九、事件分发和处理 - **事件处理器**:介绍如何使用...
#### 三、使用Velocity构建Web应用的关键注意事项 - **不要改变已输出对象的状态**:为了确保数据的一致性和安全性,应当避免在页面模板中修改已输出的对象状态。 - **HTML/XML字符转义**:为了避免XSS攻击等安全...
- **注意事项**:当引用对象属性时,不建议使用花括号 `{}`。 #### 九、循环 - **主要命令**:使用`#foreach`进行循环遍历。 - **示例代码**: ```velocity #set($list=["pine", "oak", "maple"]) #foreach($...
**注意事项**: - 如果赋值表达式中的右值为`null`,那么左值不会被赋值,即保留原有的值。 - 未定义的变量会被默认视为字符串。 - 在Velocity中,`$foo.Name` 被解释为`foo`对象的`getName()`方法而非其实例变量`...
- **注意事项**: - 更改纸张大小; - 引用图片; - 添加新的DocBook文件到文档构建流程中。 ##### 2. 开发者信息 - **Ant文件**:项目中包含了一些Ant构建文件,用于自动化构建过程。 - **DocBook参考文件**:...
5. 其他注意事项 - Velocity是大小写敏感的。 - `$velocityCount`变量默认提供循环计数。 - 可以使用`#if`、`#else`和`#end`来创建条件语句。 总的来说,Velocity提供了一套简洁的模板语言,使开发者能轻松地与...
#### 九、正规引用格式注意事项 - **语法**:`${object.property}` - **注意事项**: - 如果属性不存在,则会抛出异常。 - 可以使用`!`操作符避免异常。 #### 十、静态引用输出 - **语法**:`${object.property?}...