Velocity手册-中文版
Velocity 模板使用指南》中文版
2.Escaping Valid VTL References(封装有效的引用)如下示,如果没有#set( $email = "foo" )这一行且java代码中Context对象中没有放放email对象,将直接输出$email.#set( $email = "foo" )$email如果email己定义了 (比如它的值是foo),而这里你却想输出$email. 这样一个字符串,就需要使用转义字符”\”.## The following line defines $email in this template:#set( $email = "foo" )$email\$email\\$email\\\$email上面的模板在web页面上的输出将是:foo$email\foo\$email但如果email并没有定义,我们这样写:.$email\$email\\$email\\\$email输出就原封不动了:$email\$email\\$email\\\$email注意:当己定义变量和未定义变量一起输出时,会输出字面意思,如下便,$moon是未定义的:#set( $foo = "gibbous" )$moon = $foo输出到web页面中将是$moon = gibbou11.Case Substitution(可选的格式)至此,你对velocity的refenerce己比较熟悉了, 你可以在你的模板中开始应用这些功能. 但你还可以知道的是Velocity references从java语法中汲取了一些优点以便模板设计者更容易使用VTL.比如:$foo$foo.getBar()## 等同于$foo.Bar$data.setUser("jon")##等同于#set( $er = "jon" )$data.getRequest().getServerName()##等同于$data.Request.ServerName## is the same as${data.Request.ServerName}这里示例了你可选的一些引用方式. VTL汲取了java语法和java bean的一些简洁语法以解析java代码中Context中的对象和这些对象的命令及属性---这样,一个java对象的所有功能都可以展示到视图中了.Velocity也借见了java Bean的规范(Bean specifications defined by Sun Microsystems), 是大小写敏感的; 但Velocity会尽可能的帮你修正错误. 当命令getFoo()通过指令 $bar.foo在模板中引用时,Velocity的搜索规则我们在前面己讲了,你还记得是什么吗?.注意:模板中引用的必须是通过java Bean中的getter/setter 实现的,而直接的java对象的数据域是不能直接引用的,如$ 会解析到 class Foo's getName() 的实例方法,但不会解析到Foos类的public Name 这个实例变量.12.Directives(指令符号)模板设计者使用“引用“生成动态内容, 指令(directives)–简单的说就是设计者在模板中操作java 对象—让视图设计者全面控制输出内容的格式.指令总是以 #开头后面紧跟具体的指令符. 就像引用一样(指令的一种),可以将指令理解为”表示这里是一个什么东东).如下例生成一个出错提示:#if($a==1)true enough#elseno way!#end这个例子中应使用括号将else分开.#if($a==1)true enough#{else}no way!#end1.#set指令#set用来给一个引用赋值.值可以被赋给变量引用或属性引用, 但要将它们放入括号中,如下示:#set( $primate = "monkey" )#set( $customer.Behavior = $primate )“左操作数被赋值“是引用操作的一个规则.=号右侧可能是以下类型之一:∙Variable reference变量引用∙String literal字符串∙Property reference 属性引用∙Method reference 命令引用∙Number literal 数字∙ArrayList 数组∙Map 映射下面是对上述类型设置的示例:#set( $monkey = $bill ) ## variable reference#set( $monkey.Friend = "monica" ) ## string literal#set( $monkey.Blame = $whitehouse.Leak ) ## property reference#set( $monkey.Plan = $spindoctor.weave($web) ) ## method reference#set( $monkey.Number = 123 ) ##number literal#set( $monkey.Say = ["Not", $my, "fault"] ) ## ArrayList#set( $monkey.Map = {"banana" : "good", "roast beef" : "bad"}) ## Map注意: 在ArrayList类型引用的例子中,其原素定义在数组 [..]中, 因此,你可以使表$monkey.Say.get(0)访问第一个元素.类似的,引用Map 的例子中, 原素定义在 { } 中,其键和值间以:隔成一对,使用$monkey.Map.get("bannana") 在上例中将返回 'good', ( $monkey.Map.banana也会有同样效果).下面是一般的计算表达式:#set( $value = $foo + 1 )#set( $value = $bar - 1 )#set( $value = $foo * $bar )#set( $value = $foo / $bar )但注意:如果右边的操作数是一个属性或命令的引用而返回null,那么赋值将不会成功,且在随后的VTL 中也不能再取出使用. 如下例:#set( $result = $query.criteria("name") )The result of the first query is $result#set( $result = $query.criteria("address") )The result of the second query is $result如果$query.criteria("name")返回的是字符串 "bill", 但$query.criteria("address")返回null, 上面的TVL输出结果将是:The result of the first query is billThe result of the second query is bill这对与初学者的理解有些麻烦,比如在#foreach loops中,你使用#set给一个属性或命令赋值时,如下例示:#set( $criteria = ["name", "address"] )#foreach( $criterion in $criteria )#set( $result = $query.criteria($criterion) )#if( $result )Query was successful#end#end在上例中,就不能依赖if( $result )来决定查询是否成功. $result一但被#set 为null (context会同样), 它将不能被赋其它值 (不能从 context中取出).一个解决办法是,每次都将$result设为false. 如果$query.criteria()调用成功,就可以检测到. #set( $criteria = ["name", "address"] )#foreach( $criterion in $criteria )#set( $result = false )#set( $result = $query.criteria($criterion) )#if( $result )Query was successful#end#end注意:#set不需要使用#end来声明结尾.2.Literals (语义解析)使用#set指令时,变量如果用“”引起会被解析,如:#set( $directoryRoot = "www" )#set( $templateName = "index.vm" )#set( $template = "$directoryRoot/$templateName" )$template输出的将是:www/index.vm但当用单引号引起来时,就不会被解析::#set( $foo = "bar" )$foo#set( $blargh = '$foo' )$blargh输出后会是:bar$foo默认情况下,不会解析单引号中的变量,当然,这可以通过改变Velocity的配置参数来改变:velocity.properties such that stringliterals.interpolate=false.另外, 指令#literal元素可以用来输出字面意思,如下示.#literal()#foreach ($woogie in $boogie)nothing will happen to $woogie#end#end会输出::#foreach ($woogie in $boogie)nothing will happen to $woogie#end3.Conditionals(条件判断)1.If / ElseIf / Else#if指令用来根据条件在页面中输出内容, 如下简单的例子:#if( $foo )<strong>Velocity!</strong>#end根据变量$foo计算后是否为true决定输出, 这会有两种情况: (i) $foo的是值是一个boolean (true/false)型并有一个true value, 或(ii) 它是一个非null值. 要记者,Velocity context 中只能包含Objects, 因此当我们讲'boolean'时, 它就是一个Boolean (the class).在#if和#end的内容是否会输出,由$foo是否为true决定. 这里,如果$foo is true, 输出将是: "Velocity!". 如果$foo为null或false,将不会有任何输出.#elseif或#else可以#if和组合使用. 如果第一个表达式为true,将会不计算以后的流程,如下例假设t $foo是15 and $bar产6.#if( $foo < 10 )<strong>Go North</strong>#elseif( $foo == 10 )<strong>Go East</strong>#elseif( $bar == 6 )<strong>Go South</strong>#else<strong>Go West</strong>#end输出将会是Go South.2.Relational and Logical Operators(关系和逻辑运算)Velocity使用==来做比较,如下例.#set ($foo = "deoxyribonucleic acid")#set ($bar = "ribonucleic acid")#if ($foo == $bar)In this case it's clear they aren't equivalent. So...#elseThey are not equivalent and this will be the output.#end注意:==计算与java中的==计算有些不同:不能用来测试对象是否相等(指向同一块内存). Velocity 中是否相等仅直接的用来比较numbers, strings的值, or objects的toString()结果是否相等. 如果是不同的对象,会调用它们的toString()命令结果来比较.Velocity也使用AND, OR and NOT 执行逻辑运算.详细说明请参看《VTL参考中文版》,如下是一些简单示例:## logical AND#if( $foo && $bar )<strong> This AND that</strong>#end仅当$foo$bar和都为true时,#if()才会输出中间内容.OR 运算例子## logical OR#if( $foo || $bar )<strong>This OR That</strong>#end$foo或$bar只要有一个为true就可以输出。
《Velocity java开发指南》中文版
《Velocity java开发指南》中文版本文档来自网络,本人将其收集整理了一下,主要调整了一下格式.如有出入,请参照网络原版,原版地址记不清了!O(∩_∩)O哈哈~目录开始入门 (3)参考资源: (4)它是如何工作的? (5)单实例还是多实例(To Singleton Or Not To Singleton...)? . (7)The Context (9)Using Velocity In Servlets (12)Using Velocity In General Applications (15)Application Attributes (19)EventCartridge and Event Handlers(事件分发和处理) (20)Velocity Configuration Keys and Values(配置参数名字和值说明) (23)Configuring the Log System(日志记录配置) (26)Configuring Resource Loaders(资源装载器配置) (29)Template Encoding for Internationalization(字符编码和国际化) (32)Velocity and XML (33)FAQ (Frequently Asked Questions)开发中常见的问题解答. (36)Summary (37)Appendix 1 : Deploying the Example Servlet (38)开始入门Velocity是一基于java语言的模板引擎,使用这个简单、功能强大的开发工具,可以很容易的将数据对象灵活的与格式化文档组装到一起;希望本文能指引使用velocity在开发基于servlet或一般java应用程序的应用上快速起步。
1.Getting Started取得Velocity并在你的机器上开始运行很容易,以下是全部详细的说明:取得Velocity发布版本,go here。
velocity中文手册
Velocity用户指南什么是Velocity?Velocity是基于Java的模板引擎。
它允许Web页面开发者引用Java代码中定义的方法。
Web设计者可以和Java程序开发者并行开发遵循MVC模式的Web 站点。
这意味着,Web设计者可以将精力放在好的Web站点设计上,而Java 程序开发者可以将精力放在编写代码上。
Velocity将Java代码从Web页面中分离,使Web站点更具长期可维护性,并提供了一种替代JSP或PHP的方案。
VTL(Velocity Template Language)介绍VTL提供一种简单、容易和干静的方法将动态内容合并到Web页面。
VTL使用引用(references)将动态内容插入到Web页面中。
变量是一种引用,可以指向Java代码中的定义内容,或者由Web页面中的VTL语句来获得值。
下面是一个可以插入到HTML文档的VTL语句的例子:#set( $a = "Velocity" )VTL语句以#开头,并包含指令(set)。
变量以$开头,用引号引起。
引号可以是单引号,也可以是双引号。
前者引用具体的String值;后者可以包含Velocity 引用,例如”hello, $name”,$name会用其当前的值替换。
上面的例子是将值Velocity赋值给变量a。
当变量被赋值后,就可以在HTML文档的任何地方引用,下面是Hello Velocity World!的例子:<html><body>#set( $foo = "Velocity" )Hello $foo World!</body><html>注释VTL支持单行注释(以##开始)和多行注释(包括在#*和*#之间),下面是一个例子:This text is visible. ## This text is not visible.This text is visible.This text is visible. #* This text, as part of a multi-line comment,is not visible. This text is not visible; it is also part of themulti-line comment. This text still not visible. *# This text is outsidethe comment, so it is visible.## This text is not visible.引用VTL有3种类型的引用:变量、属性和方法。
Velocity软件使用说明bak
Velocity汉化步骤首先确认Velocity2.0门禁系统软件已经安装完毕。
1、将Customs.cst文件复制到C:\Programs Files\Hirschelectronics\Velocity目录下。
2、点击“开始”\“程序”\Hirsch Electronics Velocity\Velocity键,进入软件中。
3、点击Files\Import\Export\Customsation进入汉化文件导入界面,点击“Next”后选择“Import”进行汉化。
4、第3步完成后,点击“Console”目录下的最后一项“参数选择”,将“概要”中第2项打上“√”。
5、第4步完成后,在计算机屏幕右下角用右键点击“Services”\Setting,同样将“Database”中第2项打上“√”。
6、以上步骤完成后,退出软件,重新启动计算机进入Velocity软件。
软件使用说明1、首先确认系统硬件已经和计算机连接完毕(计算机通过Com口与控制器通讯)。
设置端口2、打开Velocity软件,在配置\DIGI*TRAC配置\SNET点击增加新SNET端口,在名称处给该端口一个新名称(一般设为Com1),然后在端口配置中选择波特率(一般选9600)和端口,然后点确认键完成该端口的添加。
添加控制器3、端口增加完毕后,点击该端口并继续点击增加新控制器,在新控制器属性界面内名称处给控制器设定一个新名称;在地址处给该控制器设定地址(控制器内的地址拨码开关是几则在该处就设定几);在型号处给该控制器设定型号(根据添加该控制器的具体型号而定,如2门控制器为M2、8门控制器为M8);在控制器时区处选择中国,其余均为默认值,点击确认键完成该控制器的添加。
门属性设置4、以8门控制器为例:控制器添加完毕后,点击该控制器并继续点击门,出现了Door1~Door8,双击Door1,在Door1的属性界面内点击报警输入,在设置界面内的报警模块处选择模块类型(一般默认值为DTLM2\MELM2),将出门按钮选中,选择触发继电器并屏蔽报警;其余均为默认值,点击确认键完成该Door1的设置。
velocity入门教程
</servlet> <servlet-mapping>
<servlet-name>velocity</servlet-name> <url-pattern>*.vm</url-pattern> </servlet-mapping> </web-app>
velocityContext.put("txt", "hello, world!");
StringWriter stringWriter = new StringWriter(); template.merge(velocityContext, stringWriter);
System.out.println(stringWriter.toString()); } }
代码中首先初始化一个 velocity 引擎,并载入一个.vm 文件,vm 就是 velocity 模板文
件的标准后缀,初始化 velocity 上下文,将一个叫做“hello, world!”的字符串以一个名
为“txt”的键,加入 velocity 上下文中,然后输出最终结果。
4
hello.vm 的内容为$txt
response); }
}
代码中,我们仅仅是向 request 域中放入了一个叫做“txt”的属性,然后指定了 vm
视图的路径,和使用 JSP 视图做法是一样的。
在/WEB-INF/views 下,创建一个 test.vm,内容如下
《Velocity Web应用开发指南中文版》
《V elocity1.4使用指南中文版》中文版来源声明:转载请保留此页声明**************************************************************************此文档为蓝杰实训学员拓展实训之用.蓝杰实训不对译文中某些说法可能会对您的系统或开发造成损害负责.如对您有所帮助,我们不胜荣幸!*************************************************************************本文属中的Velocity中文系列,本系包含如下文章:《Velocity Java开发指南中文版》(Developer`s Guide)《Velocity模板使用指南中文版》(User`s Guide)《Velocity Web应用开发指南中文版》(Web Application Guide)《VTL语法参考指南中文版》(VTL Reference)《DB4O中文系列之起步篇》...更多资料请访问/下载.**************************************************************************译者:javaFoundMail:javafound@@*************************************************************************目录1.使用Velocity构建Web应用 (3)e a Framework (3)3.Web应用用例 (3)4.不要改变己输出对象的状态! (4)5.HTML/XML字符转义 (4)6.应用安全性 (5)7.日志文件 (5)8.布署指南 (5)1.使用Velocity构建Web应用Velocity常见的用途是生成web页面,通常用来替换JSP技术.使用它生成页面有以下优势:∙简洁–一般的web美工不需要懂程序语言的就可以设计动态业面.∙Web系统容易维护–MVC推荐的做法是在页面中不要存在其它的脚本语言出现..∙容易访问数据模型的命令和属性–页面设计者通过引用简单的就可访问context中的java数据对象.∙一致性–Velocity可用做其它的文本模板生成任务,如如发送email.本文讲解了将Velocity应用与web应用的一些基本方法.e a FrameworkVelocity的主要目标是通过模板生成格式文档.因此,Velocity自身不提供任何Web相关的功能.当你需要开发Web应用时,需要一个框架来接收HTTP请求和,处理用户认证,执行业务逻辑调用,最后生成应答内容返回给客户端。
Velocity Intel CPU 水晶块用户手册说明书
This product is intended for installation only by expert users. Pleaseconsult with a qualified technician for installation. Improper installation mayresult in damage to your equipment. EK Water Blocks assumes no liabilitywhatsoever, expressed or implied, for the use of these products, nor theirinstallation. The following instructions are subject to change withoutnotice. Please visit our website at for updates. Beforeinstallation of this product, please read important notice, disclosure, andwarranty conditions that are printed on the back of the box.Before you start using this product, please follow these basic guidelines:Please carefully read the manual before beginning the installationprocess.Please remove your graphics card from the computer to assure thesafest mounting process and prevent any possible damage to yourGPU and/or graphics card circuit board (PCB).The EK Fittings require only a small amount of force to screwthem firmly in place since the liquid seal is ensured by the rubberO-ring gaskets.The use of corrosion inhibiting coolants is always recommendedfor liquid cooling systems, and mandatory for nickel platedwater blocks!Do not use pure distilled water! For best results EK rrecommendsthe use of EK-CryoFuel coolants.Make sure to thoroughly bleed air out of your water block, or you willnot reach optimal performance.TABLE OF CONTENTGENERAL INFORMATION ON WATER BLOCK COMPATIBILITY 4 BOX CONTENTS 5 WATER BLOCK DIMENSIONS 6 TECHNICAL SPECIFICATIONS AND WATER BLOCK PARTS 7SUPPORT AND SERVICE 18 SOCIAL MEDIA 18GENERAL INFORMATION ON WATER BLOCK COMPATIBILITYThis CPU liquid cooling unit is pre-assembled for use with modern Inteldesktop socket type motherboards. By default (out of the box) this waterblock supports the following CPU sockets:- Intel LGA-1150/1151/1155/1156- Intel LGA-1200- Intel LGA-2011(-3)- Intel LGA-2066Washer (5 pcs)Spring (4 pcs)Standoff - LGA 115x / AMD (4 pcs)BOX CONTENTSStandoff - 20xx (4 pcs) EK-Velocity universal CPU water block with the Intel bracket (1 pc)Allen Key 2.5 mm (1 pc)Thumb Nut (4 pcs)EK-Loop Intel CPU Backplate M4 (1 pc)Additional Jet Plate – 0.8 mm (1 pc)Thermal grease (1 pc)Universal Mounting Mechanism – You may not need every screw from this package. EAN: 3831109813065WATER BLOCK DIMENSIONSTECHNICAL SPECIFICATIONS AND WATER BLOCK PARTSTechnical Specification:- Dimensions (L x H x W): 91 x 91 x 22 mm - D-RGB cable length: 500 mm - D-RGB LED count: 20- D-RGB connector standard 3-pin (+5V, Data, Blocked, Ground)- Dimensions (L x H x W): 91 x 91 x 22 mm- D-RGB cable length: 500 mm- D-RGB LED count: 1- D-RGB connector standard 3-pin (+5V, Data, Blocked, Ground)REPLACING THE JET PLATE PROCEDURESTEP 1Please reference the table below to determine the optimal insert andjet plate needed for your type of socket.J1d= 1 mm J2d= 0.8 mmSTEP 2Unscrew the four M4 screws in counter-clock-wise direction from the bottom of the water block using the enclosed 2.5 mm Allen key to release the assembly, which consists of the water block top and jet plate. Upon replacing the jet plate, please reassemble the water block as shown in STEP 1 and STEP 2. Pay special attention to the insert orientation relative to the copper base and the water block top.Screw the four screws back in firmly, but not forcefully.INSTALLING THE WATER BLOCKBACKPLATESTEP 1 – NEW BACKPLATEInstall the Intel backplate for LGA-115x/1200 socket to the back of your motherboard. Align the holes on the motherboard with the holes on the backplate.STEP 2 – NEW BACKPLATEInstall four (4) M3 thumb screws onto your motherboard. It is mandatory to put 0.7mm plastic washer underneath each of the M3 thumb screws. Tighten the screws to the metal backplate until you reach the end of the thread. Using tools (such as pliers) is not recommended.BACKPLATESTEP 1 – OLD BACKPLATEIf already installed, please remove the motherboard from your computer and place it on an even surface with front facing down. STEP 2 – OLD BACKPLATEPreparing backplate rubber gasketThe enclosed rubber gasket is an essential part of the backplate and mounting system and must be used every time you install this water block on your motherboards.CONNECTING THE RGB LED STRIP (Optional)STEP 4 – OLD BACKPLATEInstall four (4) M3 thumb screws onto your motherboard. It is mandatory to put 0.7mm plastic washer underneath each of the M3 thumb screws. Tighten the screws to the metal backplate until you reach the end of the thread. Using tools (such as pliers) is not recommended.SUPPORT AND SERVICEIn case you need assistance or wish to order spare parts or a new mounting mechanism, please contact:https:///customer-support/For spare parts orders, refer to the page with “TECH NICAL SPECIFICATIONS AND WATER BLOCK PARTS” where you can find the EAN number of each part you might need.Include the EAN number with quantity in your request. Mounting Mechanism EAN can be found under “BOX CONTENTS”Thermal pads are readily available in the EK shop SOCIAL MEDIAEKWaterBlocks@EKWaterBlocksekwaterblocksEKWBofficialekwaterblocks。
Velocity官方指南
Velocity官方指南-使用Velocity如果你使用的是VelocityViewServlet或者其他的web框架,你不会直接调用到Velocity。
但是,如果在非web的应用中或者自己编写的web框架时,你将会像上面说的基本流程一样直接调用到Velocity 引擎。
另外一个需要记住的重点是,必须在使用Velocity合并模版之前,初始化Velocity引擎。
Velocity辅助类Velocity中包含一个叫做Velocity( org.apache.velocity.app.Velocity )的应用工具类。
这个类的主要是提供一些初始化Velocity时必须的方法,以及简化Velocity使用的一些常规方法。
这个在工程的javadoc中有描述,可通过阅读javadoc来获取更详细的说明。
本篇文档只是教程;所以,如果需要了解完整的API信息,javadoc是你最好的选择。
Velocity运行时引擎是为在同一个jvm中的其他使用者提供资源获取,日志记录等其他服务的单个实例。
因此,运行时引擎只会初始化一次。
你可以尝试初始化多次,但是只有第一次是有效的,后面的初始化操作都会被忽略。
Velocity工具类提供了五个用来配置运行时引擎的方法。
这五个配置方法如下:∙setProperty( String key, Object o )设置属性键key对应属性值为o。
值通常为字符串,在特殊情况下也可以是逗号分隔的一串值(如”foo,bar,woogie”),当然也可以其他值。
∙Object getProperty( String key )获取属性键key对应的值。
需要注意的是返回值的类型,不仅仅只是字符串类型∙init()使用jar包中的默认properties文件中配置的属性初始化运行时引擎∙init(Properties p)使用类型为java.util.Properties参数出入的属性来初始化运行时引擎∙init( String filename )使用文件名为filename的properties文件中的属性值初始化运行时引擎需要注意的是,在上面的这五个方法中,默认的properties是基础的配置,额外的properties是用来替换默认配置中对应的属性。
Velocity用户手册
Velocity用户手册-摘抄Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。
Velocity也可以为Turbine web开发架构提供模板服务(template service)。
Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。
Velocity能为我们作什么?The Mud Store Example假设你是一家专门出售Mud的在线商店的页面设计人员,让我们暂且称它为“在线MUD商店”。
你们的业务很旺,客户下了各种类型和数量的mud订单。
他们都是通过输入用户名和密码后才登陆到你的网站,登陆后就允许他们查看订单并购买更多的mud。
现在,一种非常流行的mud正在打折销售。
另外有一些客户规律性的购买另外一种也在打折但是不是很流行的Bright Red Mud,由于购买的人并不多所以它被安置在页面的边缘。
所有用户的信息都是被跟踪并存放于数据库中的,所以某天有一个问题可能会冒出来:为什么不使用 velocity来使用户更好的浏览他们感兴趣的商品呢?Velocity使得web页面的客户化工作非常容易。
作为一个web site的设计人员,你希望每个用户登陆时都拥有自己的页面。
你会见了一些公司内的软件工程师,你发现他们每个人都同意客户应该拥有具有个性化的信息。
那让我们把软件工程师应该作的事情发在一边,看一看你应该作些什么吧。
你可能在页面内嵌套如下的VTL声明:Java代码1.<html>2.<body>3.Hello $!4.<table>5.#foreach( $mud in $nudsOnSpecial );6.#if ( $customer.hasPurchased( $mud ); );7.<tr><td>$flogger.getPromo( $mud );</td></tr>8.#end9.#end10.</table>Velocity Template Language(VTL):AN introductionVTL意味着提供最简单、最容易并且最整洁的方式合并页面动态内容。
velocity教程
velocity教程Velocity是⼀个基于java的模板引擎(template engine)。
它允许任何⼈仅仅简单的使⽤模板语⾔(template language)来引⽤由java代码定义的对象。
当Velocity应⽤于web开发时,界⾯设计⼈员可以和java程序开发⼈员同步开发⼀个遵循MVC架构的web站点,也就是说,页⾯设计⼈员可以只关注页⾯的显⽰效果,⽽由java程序开发⼈员关注业务逻辑编码。
Velocity将java代码从web页⾯中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外⼜提供了⼀种可选的⽅案。
⼀、Velocity脚本语法摘要1. 变量(1)变量的定义:#set($name = "hello") 说明:velocity中变量是弱类型的。
当使⽤#set 指令时,括在双引号中的字⾯字符串将解析和重新解释,如下所⽰:#set($directoryRoot = "www" )#set($templateName = "index.vm" )#set($template = "$directoryRoot/$templateName" )$template输出将会是:www/index.vm注:在velocity中使⽤$2.5这样的货币标识是没有问题得的,因为velocity中的变量总是以⼀个⼤写或者⼩写的字母开始的。
(2)变量规范的写法${name} ,也可以写成:$name。
提倡⽤前⾯的写法。
例如:你希望通过⼀个变量$vice来动态的组织⼀个字符串。
Jack is a $vicemaniac.本来变量是$vice现在却变成了$vicemaniac,这样Veloctiy就不知道您到底要什么了。
所以,应该使⽤规范的格式书写: Jack is a ${vice}maniac现在Velocity知道变量是$vice⽽不是$vicemaniac。
Terminal Velocity 软件使用手册
Terminal Velocity用户手册1开始 (3)安装程序 (3)登陆 (3)修改密码 (3)创建各人设置 (3)2工作区 (9)默认工作区 (9)保持多个工作区打开 (9)将工作区保存为文件 (9)从文件打开工作区 (9)3PANELS面板 (10)帐户综合信息 (10)持仓资金值 (10)持仓货币 (11)报告 (11)下定单 (12)仓位 (12)订单 (12)观察列表 (13)货币报价视窗 (13)图表 (14)历史报价 (15)事件日志 (15)4交易 (16)市价单 (16)市价单结合止损或止赢 (16)未执行订单 (16)限价单 (16)止损单 (16)二则一订单 (16)关闭订单 (16)5创建您自己的交易系统 (18)A LERTS警报 (18)表格警报 (18)视觉顾问 (18)交易系统 (19)附录A –使用图表 (20)附录 B –图表面板的层设置 (21)附录 C –画图工具栏按钮: (22)附录D –技术分析的指标 (23)附录E –交易范围 (24)1 开始安装程序点击以下链接开始运行VT平台/installer/程序使用自运行安装包,您将获得最新版本的程序。
下载版本平均大小为25-30MB.平台运行最小机器要求:∙处理器1.5GHz∙内存1024MB∙硬盘空间40MB∙显示器最小显示清晰度1024*768∙Windows 2000 / XP / 2003 Server / Vista / 2008 Server R1 / 2008 Server R2 / Win 7∙运行环境包MS .Net Framework3.5每次您运行程序后,自动更新管理会自动检查可用更新。
一旦有可用更新,自动更新管理会显示一条信息询问您对更新的确认。
您可以点击取消并稍后自行升级和安装。
您也可以其他时候检查更新,点击“帮助-》检查更新”删除VT,选择“开始菜单-》程序-》VelocityTrader-》删除VelocityTrader”登陆双击桌面图表或选择“开始-》程序-》VelocityTrader”输入登陆名和密码(由Velocity在开户时提供)并且点击“链接”在登陆后,您能够修改您的密码。
西门子 Femap with NX Nastran Velocity Series 产品手册
如何将更多创意转化为成功的产品?西门子之道:Velocity Series 以正确的方法打造正确的产品成本不断上升,时间越来越紧,产品日益复杂 – 在把更多创意转化为成功产品的过程中,您面临着前所未有的巨大挑战。
因此,您需要产品生命周期管理解决方案来彻底改善从设计到制造的整个过程,以及其它更多的方面。
不管挑战有多大,Siemens PLM Software都能帮助您的公司脱颖而出。
想要了解更多信息,请登录 /plm. Answers for Industry.© 2008 Siemens Product Lifecycle Management Software Inc. All rights reserved. Siemens and the Siemens logo are registeredtrademarks of Siemens AG. All other logos, trademarks or service marks used herein are the property of their respective owners.ContentsVelocity Series 产品手册2Velocity Series3 来自Velocity Series客户的反馈6Solid Edgea) Solid Edge的优势b) Solid Edge的核心功能介绍13Femap with NX Nastrana) Femap with NX Nastran的优势b) Femap with NX Nastran的核心功能介绍20CAM Expressa) CAM Express的优势b) CAM Express的核心功能介绍24T eamcenter Expressa) Teamcenter Express的优势b) Teamcenter Express的核心功能介绍Solid Edge设计大赛作品集302006首届中国三维数字建模大赛Solid Edge优秀作品选登312007第二届全国三维数字建模大赛Solid Edge优秀作品选登332008年大中华区Solid Edge 设计大赛优秀作品选登362009年大中华区Solid Edge 设计大赛优秀作品选登产品手册Product Brochure2Velocity SeriesVelocity Series 是目前全球PLM 行业面向中端市场的唯一一套完整的、技术领先的PLM 解决方案。
Velocity配置文件详解
Velocit y配置文件详解在veloci ty的发布方包中有一个v e locit y.propert ies(位于 org.apache.velocit y.runtime.default s package下,文件定义了ve locity的配置信息o r g.apache.velocit y.runtime.Runtime Consta nts中定义了key值)#模板编码:input.encodin g=ISO-8859-1//模板输入编码output.encodin g=ISO-8859-1 //模板输出编码#foreach配置directi ve.foreach.counte= velocit yCount //计数器名称directi ve.foreach.counter.initial.value = 1 //计数器初始值directi ve.foreach.maxloop s = -1 //最大循环次数,-1为默认不限制directive.foreach.iterato = velocit yHasNe x //迭代器名称#set配置directi ve.set.null.allowed = false //是否可设置空值#include配置directi ve.include.output.errorms g.start= <!-- include error : //错误信息提示开始字符串directi ve.include.output.errorms g.end = see error log --> //错误信息提示结束字符串#parse配置directi ve.parse.max.depth = 10 //解析深度#模板加载器配置resourc e.loader= file //模板加载器类型,默认为文件,可定义多个file.resourc e.loader.descrip tion= Velocit y File Resourc e Loader//加载器描述file.resourc e.loader.class =Velocit y.Runtime.Resourc e.Loader.FileRes ourceLoader//加载器类名称file.resourc e.loader.path = . //模板路径file.resourc e.loader.cache = false //是否启用模板缓存file.resourc e.loader.modific ationC heckIn terval = 2 //检查模板更改时间间隔宏配置velocim acro.library//指定宏定义文件的位置velocim acro.permiss ions.allow.inline= true //是否可以行内定义velocim acro.permiss ions.allow.inline.to.replace.global= false //是否可以用行内定义代替全局定义velocim acro.permiss ions.allow.inline.local.scope = false //行内定义是否只用于局部velocim acro.context.localsc ope= false //宏上下文是否只用于局部velocim acro.max.depth = 20 //解析深度velocim acro.argumen ts.strict= false //宏参数是否启用严格模式#资源管理器配置resourc e.manager.class= Velocit y.Runtime.Resourc e.Resourc eManag erImpl//管理器类名称resourc e.manager.cache.class = Velocit y.Runtime.Resourc e.Resourc eCache Impl //缓存器类名称#解析器池配置parser.pool.class= Velocit y.Runtime.ParserP oolImp l //解析池类名称parser.pool.size = 40 //初始大小#evaluat e配置directi ve.evaluat e.context.class= Velocit y.Velocit yConte xt //上下问类名称#可插入intr ospect or配置runtime.introsp ector.uberspe ct = Velocit y.Util.Introsp ection.Uberspe ctImpl //默认intro specto r类名称#日志配置runtime.log = velocit y.log用以指定 Velocit y 运行时日志文件的路劲和日志文件名,如不是全限定的绝对路径,系统会认为想对于当前目录.runtime.log.logsyst em这个参数没有默认值,它可指定一个实现了org.apache.velocit y.runtime.log.LogSyst em.接口的自定义日志处理对象给Velocit y。
Velocity快速指南
在以上示例中我们引用变量时,使用“$”符紧接变量名,如$foo,除此之外还有一种正式的引 用方法,如下所示: ${foo} ${customer.Address} ${customer.getAddress()} 对于一般的使用,之前的章节所讲述的方法是完全够用的,但有些特殊情况我们必须使用本节 所讲的正式引用法。例如,我们引用一个变量$vice,对于如下语句: Jack is a $vicemaniac. $vice 不能够正常解析,因为“vice”和文本“maniac”紧挨着,造成变量名被解析成$vicemaniac。 正确的写法,是使用正式引用法: Jack is a ${vice}maniac. 这样就可以区分特殊情况下的变量名和普通文本。
例如,当我们写”Give me $9999 please!”这句话时不会出现什么问题,因为 VTL 标识符总是以字母 开头,所以$9999 不会被误解为变量引用,但当普通文本和现有变量引用存在冲突的时候,我 们可以使用右斜杠“\”转义。例如,
#set( $email = “foo” ) $email
变量
VTL 的命名规则很简单,第一个字符必须是字母(a..z 或 A..Z),其他的部分限于以下类型:
字母(a..z, A..Z)
数字(0..9)
减号(“-“)
下划线(“_”)
以下是标识符合法的变量:
$foo
$bosnMa
$bosn-ma
$bosn_ma
$bosnMa1
变量既可以通过 set 指令赋值(FE),也可以通过 Java 代码赋值(RD)。例如,如果一个 Java 变量$foo 的值为”abc”,当模板被请求时,所有页面上的$foo 都将被赋值”abc”。
wrf手册中文
w r f手册中文(总20页) -CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除Chapter 1: OverviewIntroductionThe Advanced Research WRF (ARW) modeling system has been in development for the past few years. The current release is Version 3, available since April 2008. The ARW is designed to be a flexible, state-of-the-art atmospheric simulation system that is portable and efficient on available parallel computing platforms. The ARWis suitable for use in a broad range of applications across scales ranging from meters to thousands of kilometers, including:Idealized simulations (e.g. LES, convection, baroclinic waves)Parameterization researchData assimilation researchForecast researchReal-time NWPCoupled-model applicationsTeaching简介Advanced Research WRF (ARW)模式系统在过去的数年中得到了发展。
最近公布了第三版,从2008年4月开始可供使用。
ARW是灵活的,最先进的大气模拟系统,它易移植,并且有效的应用于各种操作系统。
velocity简介
VTL语法
注意事项: 算术表达式只支持整型/结果为整数;如果非整型数值返回null;如果RHS 的结果为null,是不会赋值给LHS的
#set( $criteria = ["name", "address"] ) #foreach( $criterion in $criteria ) #set( $result = $query.criteria($criterion) ) #if( $result ) Query was successful #end #end
VTL语法
<ul> #foreach( $product in $allProducts ) <li>$product</li> #end </ul> <ul> #foreach( $key in $allProducts.keySet() ) <li>Key: $key -> Value: $allProducts.get($key)</li> #end </ul>
VTL语法
6. #stop #stop指令停止模板引擎的执行并返回。这在Debug时很有用。 7. #macro #macro指令允许定义一段重复使用的VTL模板(称Velocimacros)。 Velocimacros可以有0或多个参数。
#macro( tablerows $color $somelist ) #foreach( $something in $somelist ) <tr><td bgcolor=$color>$something</td></tr> #end #end #set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] ) #set( $color = "blue" ) <table> #tablerows( $color $greatlakes ) </table>
Velocity教程
#set($monkey = $bill)变量reference #set($monkey.Friend = “monica”)##String literal #set($monkey.Blame = $whitehouse.leak)##属性reference #set($monkey.Plan = $spindoctor.weave($web))##方法 #set($monkey.Number = 123)##Number literal #set($monkey.Say = [”Not” ,$my, ”fault”])##ArrayList 最后一个的取值方法是:$monkey.Say.get(0)
一次可以导入多个文件
#macro ( d ) <tr><td></td></tr> #end 上面的模板定义为d,调用时: #d() Velocity 将用<tr><td></td></tr>替换#d()
一个参数是color,另一个参数是一个数组: #macro( tablerows $color $somelist) #foreach( $something in $somelist ) <tr><td bgcolor=$color>$something</td></tr> #end #end
UED实习生
——欧阳涛
是基于java的模板引擎; 名称字面翻译为:速度、速率、迅速; Jsp的替代品; Apache对它的定义是:一种基于Java的模板引擎,但 允许任何人使用简单而强大的模板语言来引用定义在 Java代码中的对象;
在Velocity中,变量的定义都是使用“$”开头的,$作 为Velocity的标识符。字母、数字、中划和下划线都可 以作为Velocity的定义变量。未被定义的变量被看做字符串! 需要注意的是Velocity特色的变量定义,如: $student.No、$student.Address:
Velocit手册-中文版
Velocity中文手册1关于Velocity 用户指南旨在帮助页面设计者和内容提供者了解Velocity 和其简单而又强大的脚本语言(Velocity Template Language (VTL))。
本指南中有很多示例展示了用Velocity来讲动态内容嵌入到网站之中,但是所有的VTL examples 都同演示用于所有的页面和模版。
感谢选择Velocity!2什么是Velocity?Velocity 是一个基于Java的模版引擎。
它允许web 页面设计者引用JAVA代码预定义的方法。
Web 设计者可以根据MVC模式和JAVA程序员并行工作,这意味着Web设计者可以单独专注于设计良好的站点,而程序员则可单独专注于编写底层代码。
Velocity 将Java 代码从web页面中分离出来,使站点在长时间运行后仍然具有很好的可维护性,并提供了一个除JSP和PHP之外的可行的被选方案。
Velocity可用来从模板产生web 页面,SQL, PostScript以及其他输出。
他也可用于一个独立的程序以产生源代码和报告,或者作为其它系统的一个集成组件。
这个项目完成后,Velocity将为Turbine web 应用程序框架提供模板服务。
Velocity+Turbine 方案提供的模板服务将允许web 应用按真正的mvc模式进行开发。
3 Velocity 可以做什么?Mud Store 示例假设你是一个专门销售泥浆(MUD)的在线商店的页面设计者。
我们称他为"The Online Mud Store"。
生意很好。
客户订购各种各样的类型和数量的泥浆。
他们使用他们的用户名和密码登陆到商店中来,就可以浏览他们的订货和购买其他东西。
现在,赤土陶泥正在促销,这是一种很常用的泥巴。
一少部分顾客很有规律的购买一种亮红土Bright Red Mud,这也是促销产品,但是不太常用,因此被移到页面的边缘。
所有顾客的信息都在数据库中被跟踪,因此有一天问题出现了:为什么不使用Velocity来定位目标客户,这些客户对某种类型的产品特别感兴趣?Velocity 使针对访问者个性的WEB页面客户化(个性化)非常容易。