当前位置:文档之家› freemarker 常用内置函数

freemarker 常用内置函数

freemarker 常用内置函数
freemarker 常用内置函数

freemarker 常用内置函数

https://www.doczj.com/doc/9c2160466.html,/

文章分类:Java编程

1。在模板里边变量引用使用:

${a}, 如果给<#macro aa tmp=a > 这不需要$,

可以给模板注入一些自定义的函数,这个比较常用.

=======================

接下来将网上一些内置函数记录下来

一、Sequence的内置函数

1.sequence?first 返回sequence的第一个值。

2.sequence?last 返回sequence的最后一个值。

3.sequence?reverse 将sequence的现有顺序反转,即倒序排序

4.sequence?size 返回sequence的大小

5.sequence?sort 将sequence中的对象转化为字符串后顺序排序

6.sequence?sort_by(value) 按sequence中对象的属性value进行排序

注意:Sequence不能为null

二、Hash的内置函数

1.hash?keys 返回hash里的所有key,返回结果为sequence

2.hash?values 返回hash里的所有value,返回结果为sequence

三、操作字符串函数

1.substring(start,end)从一个字符串中截取子串

start:截取子串开始的索引,start必须大于等于0,小于等于end

end: 截取子串的长度,end必须大于等于0,小于等于字符串长度,如果省略该参数,默认为字符串长度。

2.cap_first 将字符串中的第一个单词的首字母变为大写。

3.uncap_first将字符串中的第一个单词的首字母变为小写。

4.capitalize将字符串中的所有单词的首字母变为大写

5.date,time,datetime将字符串转换为日期

注意:如果指定的字符串格式不正确将引发错误

6.ends_with 判断某个字符串是否由某个子串结尾,返回布尔值

注意:布尔值必须转换为字符串才能输出

7.html 用于将字符串中的<、>、&和"替换为对应得<>":&

8.index_of(substring,start)在字符串中查找某个子串,返回找到子串的第一个字符的索引,如果没有找到子串,则返回-1。

Start参数用于指定从字符串的那个索引处开始搜索,start为数字值。

如果start大于字符串长度,则start取值等于字符串长度,如果start小于0,则start取值为0。

9.length返回字符串的长度

10.lower_case将字符串转为小写

11.upper_case将字符串转为大写

12.contains 判断字符中是否包含某个子串。返回布尔值

注意:布尔值必须转换为字符串才能输出

13.number将字符串转换为数字

14.replace用于将字符串中的一部分从左到右替换为另外的字符串。

15.split使用指定的分隔符将一个字符串拆分为一组字符串

16.trim 删除字符串首尾空格

四、操作数字

1.c 用于将数字转换为字符串

2.string用于将数字转换为字符串

Freemarker中预订义了三种数字格式:number,currency(货币)和percent(百分比)其中number 为默认的数字格式转换

五操作布尔值

string 用于将布尔值转换为字符串输出

true转为"true",false转换为"false"

foo?string("yes","no")如果布尔值是true,那么返回"yes",否则返回no

<#assign x = "aa"/>

<#if x=="aa">

x is aa

<#else>

x not aa

遍历list map

<#list somelist as item>

${item}

//如果是bean

${item.title}

判断list的长度

<#if somlist?size>0>

遍历map

<#list mapObj?keys as k>

<#assign item = mapObj[k]>

//or <#assign item = mapObj.get(k)>

${item.title}

防止null 值黄色警告页面

${(item.title)!"一些默认值"}

freemarker 是可以调用java 里面的方法的

myList 是一个list

${myList.size()}

将输出list 的长度

freemarker 大于小于大于等于小于等于

<#if x gt 1> "gt" 大于

freemarker 常用内置函数的使用方法

在我们应用Freemarker过程中,经常会操作例如字符串,数字,集合等,却不清楚Freemrker 有没有类似于Java一样有相关的类及方法。在本文当中,我将向大家详细的介绍Freemarke 的内置函数及用法,以便能帮助大家更熟练的应用Freemarker完成项目开发。

一、Sequence的内置函数

1. sequence?first 返回sequence的第一个值。

2. sequence?last 返回sequence的最后一个值。

3. sequence?reverse 将sequence的现有顺序反转,即倒序排序

4. sequence?size 返回sequence的大小

5. sequence?sort 将sequence中的对象转化为字符串后顺序排序

6. sequence?sort_by(value) 按sequence中对象的属性value进行排序

注意:Sequence不能为null。以上方法在我的另一篇博客Freemarker中如何遍历List有详细的应用,感兴趣的朋友可以参考。

二、Hash的内置函数

1. hash?keys 返回hash里的所有key,返回结果为sequence

2. hash?values 返回hash里的所有value,返回结果为sequence

例如:

<#assign user={“name”:“hailang”, “sex”:“man”}>

<#assign keys=user?keys>

<#list keys as key>

${key}=${user[key]}

三、操作字符串函数

1. substring(start,end)从一个字符串中截取子串

start:截取子串开始的索引,start必须大于等于0,小于等于end

end: 截取子串的长度,end必须大于等于0,小于等于字符串长度,如果省略该参数,默认为字符串长度。

例子:

${‘str’?substring(0)}à结果为str

${‘str’?substring(1)}à结果为tr

${‘str’?substring(2)}à结果为r

${‘str’?substring(3)}à结果为

${‘str’?substring(0,0)}à结果为

${‘str’?substring(0,1)}à结果为s

${‘str’?substring(0,2)}à结果为st

${‘str’?substring(0,3)}à结果为str

2. cap_first 将字符串中的第一个单词的首字母变为大写。

${‘str’?cap_first}à结果为Str

3. uncap_first将字符串中的第一个单词的首字母变为小写。${‘Str’?cap_first}à结果为str

4. capitalize将字符串中的所有单词的首字母变为大写

${‘str’?capitalize}à结果为STR

5. date,time,datetime将字符串转换为日期

例如:

<#assign date1=”2009-10-12”?date(“yyyy-MM-dd”)>

<#assign date2=”9:28:20”?time(“HH:mm:ss”)>

<#assign date3=” 2009-10-12 9:28:20”?time(“HH:mm:ss”)>

${date1}à结果为2009-10-12

${date2}à结果为9:28:20

${date3}à结果为2009-10-12 9:28:20

注意:如果指定的字符串格式不正确将引发错误。

6. ends_with 判断某个字符串是否由某个子串结尾,返回布尔值。

${“string”?ends_with(“ing”)?string} 返回结果为true

注意:布尔值必须转换为字符串才能输出

7. html 用于将字符串中的<、>、&和“替换为对应得<>":&

8. index_of(substring,start)在字符串中查找某个子串,返回找到子串的第一个字符的索引,如果没有找到子串,则返回-1。

Start参数用于指定从字符串的那个索引处开始搜索,start为数字值。

如果start大于字符串长度,则start取值等于字符串长度,如果start小于0,则start取值为0。

${“string”?index_of(“in”) à结果为3

${“string”?index_of(“ab”) à结果为-1

9. length返回字符串的长度${“string”?length}à结果为6

10. lower_case将字符串转为小写

${“STRING”?lower_case}à结果为string

11. upper_case将字符串转为大写

${“string”?upper_case}à结果为STRING

12. contains 判断字符中是否包含某个子串。返回布尔值

${“string”?contains(“ing”)?string} à结果为true

注意:布尔值必须转换为字符串才能输出

13. number将字符串转换为数字

${“111.11”?number}à结果为111.11

14. replace用于将字符串中的一部分从左到右替换为另外的字符串。

${“strabg”?replace(“ab”,”in”)} à结果为string

15. split使用指定的分隔符将一个字符串拆分为一组字符串

<#list “This|is|split”?split(“|”) as s>

${s}

结果为:

This

is

split

16. trim 删除字符串首尾空格${“String ”?trim} à结果为String

四、操作数字

1. c 用于将数字转换为字符串

${123?c} à结果为123

2. string用于将数字转换为字符串

Freemarker中预订义了三种数字格式:number,currency(货币)和percent(百分比)其中number 为默认的数字格式转换

例如:

<#assign tempNum=20>

${tempNum}

${tempNum?string.number}或${tempNum?string(“number”)} à结果为20 ${tempNum?string.currency}或${tempNum?string(“currency”)} à结果为¥20.00 ${tempNum?string. percent}或${tempNum?string(“percent”)} à结果为2,000%

五、操作布尔值

string 用于将布尔值转换为字符串输出

true转为“true”,false转换为“false”

foo?string(“yes”,”no”)如果布尔值是true,那么返回“yes”,否则返回no

freemarker List的遍历

Freemarker中如何遍历List摘要:在Freemarker应用中经常会遍历List获取需要的数据,并对需要的数据进行排序加工后呈现给用户。那么在Freemarker中如何遍历List,

并对List中数据进行适当的排序呢?

通过下文的介绍,相信您一定会找到答案。

一、Freemarker中list指令简单介绍

要想在Freemarker中遍历list,必须通过使用list指令,即<#list sequence as item>… sequence是集合(collection)的表达式,item是循环变量的名字,不能是表达式。

当在遍历sequence时,会将遍历变量的值保存到item中。

举个例子说明吧:

<#list userList as user>

userList中封装了很多个User对象,我们在遍历userList时候,会将遍历的User对象的值,保存到上述的user变量中。

那么在取值时,我们可以通过${https://www.doczj.com/doc/9c2160466.html,erName }来获取User对象的userName属性值。

List指令还隐含了两个循环变量:

item_index:当前迭代项在所有迭代项中的位置,是数字值。

item_has_next:用于判断当前迭代项是否是所有迭代项中的最后一项。

注意:在使用上述两个循环变量时,一定要将item换成你自己定义的循环变量名,item其实就是前缀罢了。

例如,如果你使用<# list list as l>..定义,那么就要使用l_index,l_has_next。

在循环过程中,如果您想跳出循环,那么可以使用结合break指令,即<#break>来完成。二、Freemarker中对List进行排序

通常我们的排序操作都是通过DAO层来实现的,如果我们想随时更改我们的排序,那么就必须修改我们的DAO层代码,

确实不方便。但Freemarker为我们提供了这样的排序方法,解决了这个问题。

1. sort升序排序函数

sort对序列(sequence)进行排序,要求序列中的变量必须是:字符串(按首字母排序),数字,日期值。

<#list list?sort as l>…

2. sort_by函数

sort_by有一个参数,该参数用于指定想要排序的子变量,排序是按照变量对应的值进行排序,如:

<#list userList?sort_by(“age”) as user>…

age是User对象的属性,排序是按age的值进行的。

3. reverse降序排序函数

<#list list? reverse as l>…

reverse使用同sort相同。reverse还可以同sort_by一起使用

如:想让用户按年龄降序排序,那么可以这个样写<#list userList?sort_by(“age”)?reverse as user>…

"_index"是FreeMarker中对于循环索引变量的命名约定。

通过“迭代变量名_index”即可访问当前循环索引。

类似的循环状态访问约定还有“迭代变量名_has_next”,可通过这个循环状态属性判断是否还有后继循环。因很多时候要用到“序号”、“索引”之类的东西,而FreeMarker刚好自己带有,但很多人还并不知道它的妙用。因此就从Spring开发指南摘录下来。这样可以避免另申请一个变量,然后每次循环体又对它+1了。不知道是否提到过这个。<#list subDir as d>

FreeMarker 基础知识表达式(引用)

表达式是FreeMarker的核心功能,FreeMarker中的插值支持多种表达式。一、直接指定值直接指定值可以是字符串、数值、布尔值、集合及Map对象。

1. 字符串

直接指定字符串值使用单引号或双引号限定。字符串中可以使用转义字符”\"。如果字符串内有大量的特殊字符,则可以在引号的前面加上一个字母r,则字符串内的所有字符都将直接输出。2. 数值

数值可以直接输入,不需要引号。FreeMarker不支持科学计数法。3. 布尔值

直接使用true或false,不使用引号。4. 集合

集合用中括号包括,集合元素之间用逗号分隔。

使用数字范围也可以表示一个数字集合,如1..5等同于集合[1, 2, 3, 4, 5];同样也可以用5..1来表示[5, 4, 3, 2, 1]。5. Map对象

Map对象使用花括号包括,Map中的key-value对之间用冒号分隔,多组key-value对之间用逗号分隔。

注意:Map对象的key和value都是表达式,但key必须是字符串。二、输出变量值FreeMarker的表达式输出变量时,这些变量可以是顶层变量,也可以是Map对象的变量,还可以是集合中的变量,并可以使用点(.)语法来访问Java对象的属性。1. 顶层变量

所谓顶层变量就是直接放在数据模型中的值。输出时直接用${variableName}即可。2. 输出集合元素

可以根据集合元素的索引来输出集合元素,索引用中括号包括。如:输出[“1”,“2”,“3”]这个名为number的集合,可以用${number[0]}来输出第一个数字。FreeMarker还支持用number[1..2]来表示原集合的子集合[“2”,“3”]。3. 输出Map元素

对于JavaBean实例,FreeMarker一样把它看作属性为key,属性值为value的Map对象。

输出Map对象时,可以使用点语法或中括号语法,如下面的几种写法的效果是一样的:https://www.doczj.com/doc/9c2160466.html,

book.author["name"]

book["author"].name

book["author"]["name"]

使用点语法时,变量名字有和顶层变量一样的限制,但中括号语法没有任何限制。三、字符串操作

1. 字符串连接

字符串连接有两种语法:

(1)使用${..}或#{..}在字符串常量内插入表达式的值;

(2) 直接使用连接运算符“+”连接字符串。

如,下面两种写法等效:

${"Hello, ${user}"}

${"Hello, " + user + "!"}

有一点需要注意:${..}只能用于文本部分作为插值输出,而不能用于比较等其他用途,如:

<#if ${isBig}>Wow!

<#if "${isBig}">Wow!

应该写成:

<#if isBig>Wow!

2. 截取子串

截取子串可以根据字符串的索引来进行,如果指定一个索引值,则取得字符串该索引处的字符;如果指定两个索引值,则截取两个索引中间的字符串子串。如:

<#assign number="01234">

${number[0]} <#-- 输出字符0 -->

${number[0..3]} <#-- 输出子串“0123” -->四、集合连接操作

连接集合的运算符为“+”五、Map连接操作

Map连接操作的运算符为“+”六、算术运算符

FreeMarker表达式中支持“+”、“-”、“*”、“/”、“%”运算符。七、比较运算符

表达式中支持的比较运算符有如下几种:

1. =(或者==):判断两个值是否相等;

2. !=:判断两个值是否不相等;

注:=和!=可以用作字符串、数值和日期的比较,但两边的数据类型必须相同。而且FreeMarker的比较是精确比较,不会忽略大小写及空格。

3. >(或者gt):大于

4. >=(或者gte):大于等于

5. <(或者lt):小于

6. <=(或者lte):小于等于

注:上面这些比较运算符可以用于数字和日期,但不能用于字符串。大部分时候,使用gt 比>有更好的效果,因为FreeMarker会把>解释成标签的结束字符。可以使用括号来避免这种情况,如:<#if (x>y)>。八、逻辑运算符

1. &&:逻辑与;

2. ||:逻辑或;

3. !:逻辑非

逻辑运算符只能用于布尔值。九、内建函数

FreeMarker提供了一些内建函数来转换输出,可以在任何变量后紧跟?,?后紧跟内建函数,就可以通过内建函数来转换输出变量。字符串相关常用的内建函数:

1. html:对字符串进行HTML编码;

2. cap_first:使字符串第一个字母大写;

3. lower_case:将字符串转成小写;

4. upper_case:将字符串转成大写;集合相关常用的内建函数:

1. size:获得集合中元素的个数;数字值相关常用的内建函数:

1. int:取得数字的整数部分。十、空值处理运算符

FreeMarker的变量必须赋值,否则就会抛出异常。而对于FreeMarker来说,null值和不存在的变量是完全一样的,因为FreeMarker无法理解null值。

FreeMarker提供两个运算符来避免空值:

1. !:指定缺失变量的默认值;

2. ??:判断变量是否存在。

!运算符有两种用法:variable!或variable!defaultV alue。第一种用法不给变量指定默认值,表明默认值是空字符串、长度为0的集合、或长度为0的Map对象。

使用!运算符指定默认值并不要求默认值的类型和变量类型相同。

??运算符返回布尔值,如:variable??,如果变量存在,返回true,否则返回false。freemarker 的内建函数contains 的使用freemarker 的内建函数 contains 的使用关键字: freemarker contains

freemarker 的内建函数 contains 的使用:

<#if

employee.departments?contains(department)>checked="checked" 其中departments是一个集合,而department是departments集合里的一个元素。contains函数可以判断出,元素 department是否存在于集合departments里,最终返回一个Booleancontains是freemarker的内建函数,即自带的。

FreeMarker 的内建函数有:

chunk, is_date, last, root, j_string, round, contains, is_hash , long, float, ends_with, namespace, matches, time, values, s eq_last_index_of, uncap_first, byte, substring, is_transform, we b_safe, groups, seq_contains, is_macro, index_of, word_list, in t, is_method, eval, parent, xml, number, capitalize, if_exists , rtf, node_type, double, is_directive, url, size, default, f loor, ceiling, is_boolean, split, node_name, is_enumerable, seq_ index_of, is_sequence, sort, is_node,

sort_by, left_pad, cap_first, interpret, children, node_namespac e, chop_linebreak, date, short, last_index_of, is_collection, an cestors, length, trim, datetime, is_string, reverse, c, keys, upper_case, js_string, has_content, right_pad, replace, is_hash_ ex, new, is_number, lower_case, is_indexable, string, exists, html, first

Spring2.5、Struts2.1、Hibernate3.2、sitemesh、freemarker整合开发常见问题及解决方案

1.在搭建SSH开发平台的时候,由MyEclipse自动导入的包存在一些冲突,主要有 (1) asm.jar与asm-2.2.3.jar asm-2.2.3是spring所依赖,而asm.jar是hibernate依赖的,应该删除asm-2.2.3.jar这个包 (2). commons-logging-1.0.4.jar与commons-logging-api-1.1.jar 这两个包中commons-logging-1.0.4.jar是spring和hibernate以及struts都要用的包,但是struts2.1以上的版本还需要commons-logging-api-1.1.jar,其实这两个包几乎一样,commons-logging-api-1.1.jar版本较新而已。 (3)异常 严重: Exception starting filter struts2 https://www.doczj.com/doc/9c2160466.html,ng.NullPointerException at com.opensymphony.xwork2.spring.SpringObjectFactory.getClassInstance(SpringObjectF actory.java:203) ... 可能的原因是spring的默认配置文件applicationContext.xml改了名,或者没有放在classpath的根路径下面,并且没有在web.xml文件中配置spring的监听器,解决办法在web.xml中添加

org.springframework.web.context.ContextLoaderListener (4)异常 严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml] 可能的原因是虽然配置了spring的监听器,但是没有在web.xml中配置contextConfigLocation来指定spring配置文件列表及相应的具体路径。解决的办法是在web.xml文件中添加,例如: contextConfigLocation /WEB-INF/csdn-spring*.xml (5)异常 org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Cannot open connection 可能的原因是缺少相应的JDBC驱动包,请把驱动包拷贝到/WEB-INF/lib下面,或者是数据源的配置有问题,例如用户名、者密码或者URL错误。

VF常用函数列表

VF常用函数列表数值函数: 1.绝对值和符号函数 格式:ABS(<数值表达式>) SIGN(<数值表达式>) 例如:ABS(-5)=5,ABS(4)=4,SIGN(8)=1,SIGN(-3)=-1,SIGN(0)=0 2.求平方根表达式 格式:SQRT(<数值表达式>) 例如:SQRT(16)=4,它与开二分之一次方等同。 3.圆周率函数 格式:PI() 4.求整数函数 格式:INT(<数值表达式>)返回数值表达式的整数部分 CEILING(<数值表达式>)返回大于或等于表达式的最小整数FLOOR(<数值表达式>)返回小于或等于表达式的最大整数 例如: INT(5.8)=5.8,INT(-7.8)=-7,CEILING(6.4)=7,CEILING(-5.9)=-5 FLOOR(9.9)=9 5.四舍五入函数 格式:ROUND(<数值表达式1>,<数值表达式2>) 功能:返回制定表达式在制定位置四舍五入的结果 例如:

ROUND(345.345,2)=345.35,ROUND(345.345,1)=345.3,ROUND(345.345,0)=345,ROUND(345.345,-1)=350 6.求余函数 格式:MOD(<数值表达式1>,<数值表达式2>) 例如: MOD(10,3)=1 MOD(10,-3)=-2 MOD(-10,3)=2 MOD(-10,-3)=-1 求余数的规律:1.首先按照两数的绝对值求余 2.表达式1的绝对值大于表达式2的绝对值,则余数为表达式1的值 3.余数取表达式1的正负号 4.若两数异好号,余数在加上表达式2的值为最终的结果 7. 求最大值和最小值函数 MAX(数值表达式列表) MIN (数值表达式列表) 例如:MAX(2,3,5)=5 MAX(…2?,?12?,?05?)=2 MAX(…汽车?,?飞机?,?轮船?) 字符串比较的规律: 字符串比较首先比较第一个字母,如果有结果那就不用在进行比较了。如果相等在进行第二个字母的比较,以次类推。 字符函数 1.求字符串长度函数 格式:LEN(<字符表达式>) 功能:返回制定字符表达式的长度,即所包含的字符个数。函数值为数值型 例如:X=“中文Visual FoxPro6.0” 则LEN(X)=20 2.大小写转换函数

AERMOD中文参考手册

大气环境影响预测系统使用者参考手册 一、简介 大气环境影响预测系统是一款由浙江省环科院环评二所任剑波工程师开发的预测大气环境影响的界面化软件,其主要功能是对各类型污染源在不同条件下排放污染物进行模拟,计算其所造成的污染物地面浓度分布,用量化的方法预测污染源对大气环境的影响。 大气环境影响预测系统的核心模块采用《环境影响评价技术导则-大气环境》(HJ2.2-2008)推荐的美国Environmental Protection Agency的AERMOD预测模型和SCREEN3估算模式。AERMOD是一个稳态羽烟扩散模式,可基于大气边界层数据特征模拟点源、面源、体源等排放出的污染物在短期(小时平均、日平均)、长期(年平均)的浓度分布,适用于农村或城市地区、简单或复杂地形。AERMOD考虑了建筑物尾流的影响,即烟羽下洗。模式使用每小时连续预处理气象数据模拟大于等于1小时平均时间的浓度分布。AERMOD包括两个预处理模式,即AERMET气象预处理和AERMAP地形预处理模式。AERMOD适用于评价范围小于等于50km的一级、二级评价项目。 估算模式SCREEN3 是一个单源高斯烟羽模式,可计算点源、火炬源、面源和体源的最大地面浓度,以及下洗和岸边熏烟等特殊条件下的最大地面浓度。估算模式中嵌入了多种预设的气象组合条件,包括一些最不利的气象条件,在某个地区有可能发生,也有可能没有此种不利气象条件。所以经估算模式计算出的是某一污染源对环境空气质量的最大影响程度和影响范围的保守的计算结果。 二、操作界面介绍 大气环境影响预测系统界面非常友好,继承了windows操作系统软件的特点。其最上方为命令菜单;在命令菜单的下方是快捷工具栏;左侧区域为目标管理窗口,可以更加方便的进行输入和管理预测模型所需的各类参数数据;右侧区域为工作区,用户可在此直接操作,例如添加底图,标明污染源、计算区域和预测点位置等。 1.菜单栏 本软件操作界面中的菜单栏分为文件、显示、运行、计算结果、工具和关于六项。各命令菜单包含的内容如下: ·文件 新建; 打开; 保存; 另存为; 保存inp文件; 打开示例文件; 退出 ·显示 污染源; 预测点; 计算网格; 建筑物; 显示标尺;

Excel中常用函数列表

数据库函数: DA VERAGE 返回选择的数据库条目的平均值 DCOUNT 计算数据库中包含数字的单元格个数 DCOUNTA 计算数据库中的非空单元格 DGET 从数据库提取符合指定条件的单个记录 DMAX 返回选择的数据库条目的最大值 DMIN 返回选择的数据库条目的最小值 DPRODUCT 将数据库中符合条件的记录的特定字段中的值相乘DSTDEV 基于选择的数据库条目的样本估算标准偏差DSTDEVP 基于选择的数据库条目的总体计算标准偏差 DSUM 将数据库中符合条件的记录的字段列中的数字相加 DV AR 基于选择的数据库条目的样本估算方差 DV ARP 基于选择的数据库条目的样本总体计算方差GETPIVOTDATA 返回存储在数据透视表中的数据 日期与时间函数 DA TE 返回特定日期的序列号 DA TEV ALUE 将文本格式的日期转换为序列号 DAY 将序列号转换为月的日期 DAYS360 计算基于一年 360 天的两个日期间的天数 EDATE 返回用于表示开始日期之前或之后月数的日期的序列号EOMONTH 返回指定个数月之前或之后的月的末日的序列号HOUR 将序列号转换为小时 MINUTE 将序列号转换为分钟 MONTH 将序列号转换为月 NETWORKDAYS 返回两个日期之间的所有工作日个数 NOW 返回当前日期和时间的序列号 SECOND 将序列号转换为秒 TIME 返回特定时间的序列号 TIMEV ALUE 将文本格式的时间转换为序列号 TODAY 返回今天日期的序列号 WEEKDAY 将序列号转换为一星期的某天 WEEKNUM 将序列号转换为代表该星期为一年中的第几周的数字WORKDAY 返回指定个数工作日之前或之后日期的序列号

Python常用内置函数总结

Python常用内置函数总结 一、数学相关 1、绝对值:abs(-1) 2、最大最小值:max([1,2,3])、min([1,2,3]) 3、序列长度:len('abc')、len([1,2,3])、len((1,2,3)) 4、取模:divmod(5,2)//(2,1) 5、乘方:pow(2,3,4)//2**3/4 6、浮点数:round(1)//1.0 二、功能相关 1、函数是否可调用:callable(funcname),注意,funcname变量要定义过 2、类型判断:isinstance(x,list/int) 3、比较:cmp('hello','hello') 4、快速生成序列:(x)range([start,] stop[, step]) 三、类型转换 1、int(x) 2、long(x) 3、float(x) 4、complex(x) //复数 5、str(x) 6、list(x) 7、tuple(x) //元组 8、hex(x) 9、oct(x) 10、chr(x)//返回x对应的字符,如chr(65)返回‘A' 11、ord(x)//返回字符对应的ASC码数字编号,如ord('A')返回65 四、字符串处理 1、首字母大写:str.capitalize 复制代码代码如下:

>>> 'hello'.capitalize() 'Hello' 2、字符串替换:str.replace 复制代码代码如下: >>> 'hello'.replace('l','2') 'he22o' 可以传三个参数,第三个参数为替换次数 3、字符串切割:str.split 复制代码代码如下: >>> 'hello'.split('l') ['he', '', 'o'] 可以传二个参数,第二个参数为切割次数 以上三个方法都可以引入String模块,然后用string.xxx的方式进行调用。 五、序列处理函数 1、len:序列长度 2、max:序列中最大值 3、min:最小值 4、filter:过滤序列 复制代码代码如下: >>> filter(lambda x:x%2==0, [1,2,3,4,5,6]) [2, 4, 6] 5、zip:并行遍历 复制代码代码如下:

Spring中文开发详细手册

Spring开发教程 Spring教程 (1) Spring框架概述 (2) Spring是什么? (2) Spring的历史 (3) Spring的使命(Mission Statement) (3) Spring受到的批判 (3) Spring包含的模块 (4) 总结 (5) Spring的IoC容器 (6) 用户注册的例子 (6) 面向接口编程 (7) (用户持久化类)重构第一步——面向接口编程 (8) 重构第二步——工厂(Factory)模式 (9) 重构第三步——工厂(Factory)模式的改进 (9) 重构第四步-IoC容器 (10) 控制反转(IoC)/依赖注入(DI) (10) 什么是控制反转/依赖注入? (10) 依赖注入的三种实现形式 (11) BeanFactory (13) BeanFactory管理Bean(组件)的生命周期 (14) Bean的定义 (15) Bean的之前初始化 (19) Bean的准备就绪(Ready)状态 (21) Bean的销毁 (21) ApplicationContext (21) Spring的AOP框架 (21) Spring的数据层访问 (21) Spring的声明式事务 (21) Spring对其它企业应用支持 (22)

名词解释 容器: 框架: 框架 容器 组件: 服务: Spring框架概述 主要内容:介绍Spring的历史,Spring的概论和它的体系结构,重点阐述它在J2EE中扮演的角色。 目的:让学员全面的了解Spring框架,知道Spring框架所提供的功能,并能将Spring 框架和其它框架(WebWork/Struts、hibernate)区分开来。 Spring是什么? Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring 的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 ?目的:解决企业应用开发的复杂性 ?功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能 ?范围:任何Java应用 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 ■轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。 ■控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 ■面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务()管理)进行内聚性的开发。应用对象只实

一些常用的系统函数

附录B 一些常用的系统函数 SQL Server 2008提供了许多内置函数,使用这些函数可以方便快捷地执行某些操作。这些函数通常用在查询语句中,一般来说,允许使用变量、字段或表达式的地方都可以使用这些内置函数。本附录将介绍一些比较常用的日期函数、字符串函数和类型转换函数。 B.1日期函数 日期和时间函数对日期和时间类型的数据执行操作,并返回一个字符串、数字值或日期和时间值。 1. GETDATE 作用:按 datetime 值的SQL Server 标准内部格式返回当前的系统日期和时间。 返回类型:datetime。 说明:日期函数可用在 SELECT 语句的选择列表或用在查询语句的 WHERE 子句中。 例1. 用 GETDATE 返回系统当前的日期和时间。 SELECT GETDATE() 例2. 在CREATE TABLE语句中使用 GETDATE函数作为列的默认值,这样可简化用户对业务发生日期和时间的输入。此示例创建Employees 表,用 GETDATE函数的返回值作为员工参加工作的默认报到时间。 CREATE TABLE Employees( eid char(11) NOT NULL, ename char(10) NOT NULL, hire_date datetime DEFAULT GETDATE() ) 2.DATEADD 作用:对给定的日期加上一段时间,返回新的 datetime 值。 语法: DATEADD( datepart, number, date ) 其中: Datepart:是与 number 相加的date部分。表B.1列出了有效的 datepart 参数。 表B.1 SQL Server识别的日期部分和缩写形式

ftl编辑器(freemarker)的使用和说明

一、准备工作 1.1 下载文件 可以从https://www.doczj.com/doc/9c2160466.html,/站点下载最新的freemarker.jar包(目前最新版本是2.3.18)与eclipse插件(最新版本是0.9.14)。 1.2 安装eclipse插件 将下载来的eclipse插件解压缩到本地磁盘,更改hudson.freemarker_ide_0.9.14文件夹中的freemarker-2.3.6.jar文件更改成最新版本的freemarker-2.3.18.jar,并且将META-INF/MANIFEST.MF文件中的Bundle-ClassPath属性值修改为freemarker-2.3.18.jar。最后将hudson.freemarker_ide_0.9.14放到eclipse的plugins目录中,完成eclipse 插件的安装。 1.3 freemarker文档下载 从https://www.doczj.com/doc/9c2160466.html,/官方网站中下载帮助文档(也有中文的手册) 二、freemarker的使用 2.1 简介 2.1.1 FTL tag标签 由于freemarker tag标签是属于freemarker的指令,它们仅仅是freemarker 处理过程中的信息,而不会输出到页面上,所以它们与html标签有一些区别。这些标签都是以#号开头,如<#import "/public/work_public.ftl" as public>。但用户自定义的标签是以@符号开头,如在freemarker中使用struts标签:<@s.if test="results!=null&&results.size()!=0"> 注意FTL标签不可以在其他FTL标签和插值中使用(注释可以在FTL标签和插值中使用,因为它在解析时,整个注释都将抛弃,不会影响具体代码),如下面这样就是一个错误的写法: <#if <#include 'foo'>='bar'>... 2.1.2 注释 freemarker的文档注释与html相似,但它是以<#--和-->来分割的。任何介于这两个分隔符(包含分隔符本身)之间内容会被freemarker忽略,就不会输出出来了。其他任何不是FTL 标签,插值或注释的内容将被视为静态文本,这些东西就不会被freemarker所解析,会被按照原样输出出来。

最常用函数公式大全

Excel函数公式大全工作中最常用Excel函数公式大全 一、数字处理 1、取绝对值 =ABS(数字) 2、取整 =INT(数字) 3、四舍五入 =ROUND(数字,小数位数) 二、判断公式 1、把公式产生的错误值显示为空 公式:C2 =IFERROR(A2/B2,"") 说明:如果是错误值则显示为空,否则正常显示。 ? 2、IF多条件判断返回值 公式:C2 =IF(AND(A2<500,B2="未到期"),"补款","") 说明:两个条件同时成立用AND,任一个成立用OR函数.

? 三、统计公式 1、统计两个表格重复的内容 公式:B2 =COUNTIF(Sheet15!A:A,A2) 说明:如果返回值大于0说明在另一个表中存在,0则不存在。 ? 2、统计不重复的总人数 公式:C2 =SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8)) 说明:用COUNTIF统计出每人的出现次数,用1除的方式把出现次数变成分母,然后相加。

? 四、求和公式 1、隔列求和 公式:H3 =SUMIF($A$2:$G$2,H$2,A3:G3) 或 =SUMPRODUCT((MOD(COLUMN(B3:G3),2)=0)*B3:G3) 说明:如果标题行没有规则用第2个公式 ? 2、单条件求和 公式:F2 =SUMIF(A:A,E2,C:C) 说明:SUMIF函数的基本用法

? 3、单条件模糊求和 公式:详见下图 说明:如果需要进行模糊求和,就需要掌握通配符的使用,其中星号是表示任意多个字符,如"*A*"就表示a前和后有任意多个字符,即包含A。 ? 4、多条件模糊求和 公式:C11 =SUMIFS(C2:C7,A2:A7,A11&"*",B2:B7,B11) 说明:在sumifs中可以使用通配符*

SPSSMolder常用函数简介

SPSS Molder常用函数简介 SPSS Molder软件包含多种功能丰富的函数,几乎涵盖了我们日常工作的各种需要,主要有信息函数、转换函数、比较函数、逻辑函数、数值函数、三角函数、概率函数、位元整数运算、随机函数、字符串函数、日期和时间函数、序列函数、全局函数、空值和Null 值处理函数、特殊函数等15大类,本附录将逐一介绍并说明其注意事项。 在本附录中涉及到的函数,具体的字段格式按照如下约定表示。 此外,本附录中的函数以函数、结果类型(整数、字符串等)和说明(如果有)各占一列的形式一一列举说明。例如,对函数rem的说明如下。 1. 信息函数

信息函数用于深入了解特定字段的值。它们通常用于派生标志字段。例如,可以使用@BLANK函数来创建一个标志字段,以指示选定字段的值为空值的记录。同样,可以使用存储类型函数(如is_string)来检查某个字段的存储类型。 2. 转换函数 转换函数可用来构建新字段和转换现有文件的存储类型。例如,可通过将字符串连接在一起或分拆字符串来形成新字符串。若要连接两个字符串,请使用运算符“><”。例如,字段Site的值为"BRAMLEY",则"xx"><”的结果也始终是字符串,因此,如果字段V1为3,字段V2为5,则V1>

freemarker语法

语法 FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1. 文本:直接输出的部分 2. 注释:<#-- ... -->格式部分,不会输出 3. 插值:即${...}或#{...}格式的部分,将使用数据模型中的部分替代输出 4. FTL指令:FreeMarker指定,和HTML标记类似,名字前加#予以区分,不会输出 1. FTL指令规则 在FreeMarker中,使用FTL标签来使用指令,FreeMarker有3种FTL标签,这和HTML标签是完全类似的. 1.开始标签:<#directivename parameter> 2.结束标签: 3.空标签:<#directivename parameter/> 实际上,使用标签时前面的符号#也可能变成@,如果该指令是一个用户指令而不是系统内建指令时,应将#符号改成@符号. 使用FTL标签时, 应该有正确的嵌套,而不是交叉使用,这和XML标签的用法完全一样.如果全用不存在的指令,FreeMarker不会使用模板输出,而是产生一个错误消息.FreeMarker会忽略FTL标签中的空白字符.值得注意的是< , /> 和指令之间不允许有空白字符. 2. 插值规则 FreeMarker的插值有如下两种类型:1,通用插值${expr};2,数字格式化插值:#{expr}或#{expr;format} 2.1 通用插值 对于通用插值,又可以分为以下4种情况: 1. 插值结果为字符串值:直接输出表达式结果 2. 插值结果为数字值:根据默认格式(由#setting指令设置)将表达式结果转换成文本输 出.可以使用内建的字符串函数格式化单个插值,如下面的例子: <#settion number_format="currency"/> <#assign answer=42/> ${answer} ${answer?string} <#-- the same as ${answer} --> ${answer?string.number} ${answer?string.currency} ${answer?string.percent}

C程序设计常用函数列表

C语言常用函数 2009-11-07 22:53 1、字符处理函数 本类别函数用于对单个字符进行处理,包括字符的类别测试和字符的大小写转换头文件 ctype.h int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0 int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回非0值,否则返回0 int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F),返回非0值,否则返回0 int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0 int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0 int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0 int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0 int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回非0值,否则返回0 int isspace(int ch) 若ch是空格(' '),水平制表符('\t'),回车符('\r'), 走纸换行('\f'),垂直制表符('\v'),换行符('\n'), 返回非0值,否则返回0 int isupper(int ch) 若ch是大写字母('A'-'Z')返回非0值,否则返回0 int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回非0值, 否则返回0 int tolower(int ch) 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z') int toupper(int ch) 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z') 2、数学函数 本分类给出了各种数学计算函数

python常用函数年初大总结

1.常用内置函数:(不用import就可以直接使用) help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像函数一样调用 repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝 eval_r(str) 表示合法的python表达式,返回这个表达式 dir(obj) 查看obj的name space中可见的name hasattr(obj,name) 查看一个obj的name space中是否有name getattr(obj,name) 得到一个obj的name space中的一个name setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object delattr(obj,name) 从obj的name space中删除一个name vars(obj) 返回一个object的name space。用dictionary表示 locals() 返回一个局部name space,用dictionary表示 globals() 返回一个全局name space,用dictionary表示 type(obj) 查看一个obj的类型 isinstance(obj,cls) 查看obj是不是cls的instance issubclass(subcls,supcls) 查看subcls是不是supcls的子类 类型转换函数 chr(i) 把一个ASCII数值,变成字符 ord(i) 把一个字符或者unicode字符,变成ASCII数值 oct(x) 把整数x变成八进制表示的字符串 hex(x) 把整数x变成十六进制表示的字符串

Excel常用函数公式大全(实用)

Excel常用函数公式大全 1、查找重复内容公式:=IF(COUNTIF(A:A,A2)>1,"重复","")。 2、用出生年月来计算年龄公式:=TRUNC((DAYS360(H6,"2009/8/30",FALSE))/360,0)。 3、从输入的18位身份证号的出生年月计算公式: =CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2,13,2))。 4、从输入的身份证号码内让系统自动提取性别,可以输入以下公式: =IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","女"),IF(MOD(MID(C2,17,1),2)=1,"男","女"))公式内的“C2”代表的是输入身份证号码的单元格。 1、求和:=SUM(K2:K56) ——对K2到K56这一区域进行求和; 2、平均数:=AVERAGE(K2:K56) ——对K2 K56这一区域求平均数; 3、排名:=RANK(K2,K$2:K$56) ——对55名学生的成绩进行排名; 4、等级:=IF(K2>=85,"优",IF(K2>=74,"良",IF(K2>=60,"及格","不及格"))) 5、学期总评:=K2*0.3+M2*0.3+N2*0.4 ——假设K列、M列和N列分别存放着学生的“平时总评”、“期中”、“期末”三项成绩; 6、最高分:=MAX(K2:K56) ——求K2到K56区域(55名学生)的最高分; 7、最低分:=MIN(K2:K56) ——求K2到K56区域(55名学生)的最低分; 8、分数段人数统计: (1)=COUNTIF(K2:K56,"100") ——求K2到K56区域100分的人数;假设把结果存放于K57单元格; (2)=COUNTIF(K2:K56,">=95")-K57 ——求K2到K56区域95~99.5分的人数;假设把结果存放于K58单元格; (3)=COUNTIF(K2:K56,">=90")-SUM(K57:K58) ——求K2到K56区域90~94.5分的人数;假设把结果存放于K59单元格; (4)=COUNTIF(K2:K56,">=85")-SUM(K57:K59) ——求K2到K56区域85~89.5分的人数;假设把结果存放于K60单元格;

TRSMASv5.0置标使用手册

媒资管理系统Array TRS Media Asset System 置标使用手册 北京拓尔思信息技术股份有限公司 Beijing TRS Information Technology Co., Ltd.

版权说明 本手册由北京拓尔思信息技术股份有限公司(以下简称TRS公司)出版,版权属TRS公司所有。未经出版者正式书面许可,不得以任何方式复制本文档的部分或全部内容。 ?北京拓尔思信息技术股份有限公司版权所有。保留所有权利。 是北京拓尔思信息技术股份有限公司的注册商标。

关于本手册 置标使用手册介绍了MAS5.0中置标组件的基本使用,并提供了相关实例,方便理解置标模板的编写以及使用,进而完成前台页面定制功能。 读者对象 本手册的读者为TRSMAS的使用者。使用者应具备以下基础知识: ●熟悉Windows或Linux操作系统; ●熟悉Oracle、MySQL、Microsoft SQL Server; ●熟悉HTML基本知识 ●掌握基本的编程技巧 用户反馈 TRS公司感谢您使用TRS 产品。如果您发现本手册中有错误或者产品运行不正确,或者您对本手册有任何意见和建议,请及时与TRS公司联系。您的意见将是我们做版本修订时的重要依据

目录 第1章概述 (1) 第2章使用说明 (2) 2.1快速入门 (2) 2.2管理台使用 (3) 2.2.1 站点(Site) (3) 2.2.2 映射(Pagelink) (3) 2.2.3 模板(Template) (4) 2.3站点规划 (5) 2.3.1 站点规划 (5) 2.3.2 映射规划 (5) 2.4模板规划 (6) 2.4.1 将主页面划分成块 (6) 2.4.2 使用TRS_PAGELET填充各块 (7) 2.4.3 编写小模板 (9) 2.4.4 完善TRS_PAGELET的属性 (9) 2.4.5 切换模板展示方式 (11) 2.5获取相关模板实例 (13) 第3章置标详细参考 (14) 3.1置标规范实例 (14) 3.1.1 OBJECTS - PROPERTY(一组数据) (14) 3.1.2 OBJECT - PROPERTY (一个数据) (15) 3.1.3 OBJECTS – (PROPERTY + PAGE)(组数据分页展示) (15) 3.1.4 OBJECTS –OBJECT –PROPERTY (折行显示列表数据) (16) 3.1.5 OBJECTS-(PROPERTY+OBJECTS-PROPERTY)(树状) (17) 3.1.6 OBJECTS-SWITCH-PROPERTY(条件显示) (18) 3.1.7 LINKGROUP – LINK链接着色 (19) 3.2置标详细说明 (19) 3.2.1 TRS_OBJECTS置标 (19) 3.2.2 TRS_OBJECT置标 (20) 3.2.3 TRS_PROPERTY置标 (21) 3.2.4 TRS_PAGE置标 (23) 3.2.5 TRS_SWITCH置标 (24) 3.2.6 TRS_LOOP置标 (25) 3.2.7 TRS_LINKGROUP置标 (26) 3.2.8 TRS_LINK置标 (28) 3.2.9 TRS_PAGELET置标 (28)

完整word版常用函数列表word文档良心出品

附录信号处理工具箱函数汇总1、滤波器分析与实现 函数名描述绝对值(幅值abs 取相angle 求卷conv 求二维卷conv2 去卷deconv 重叠相加FF滤波器实fftfilt 直接滤波器实filter 二维数字滤波filter2

零相位数字滤波filtfilt 滤波器初始条件选filtic 模拟滤波器频率响freqs 频率响应中的频率间freqspace 数字滤波器频率响freqz 画出频率响应曲freqzplot 平均滤波延grpdelay 数字滤波器的单位抽样响impz 格形滤波latcfilt 一维中值滤medfilt1 Savitzky-Gola滤波sgolayfilt 二次分式滤波sosfilt 离散系统零极点zplane 上采upfirdn 去除相unwrap 2、FIR数字滤波器设计 函数名描述 矩阵卷积convmtx 复、非线性相位等波纹滤波器设计cremez 基于窗函数的FIR滤波器设计fir1 1 FIR滤波器设计基于频率采样的fir2

FIR多频滤波器设计约束的最小二乘fircls FIR滤波设计约束的最小二乘、低通和高能、线性相位fircls1 FIR滤波器设计最优最小二乘firls 升余弦滤波器设计firrcos FIR滤波器设计内插intfilt 基于阶数估计的凯瑟滤波器设kaiserord FI滤波器设切比雪夫最remez reme设基于阶数估计remezord 滤波器设Savizky-Golay FIsgolay 数字滤波器设计IIR3、 描函数 巴特沃思滤波器设butter 型滤波器设切比雪cheby1 I型滤波器设切比雪cheby2 椭圆滤波器设计ellip 广义巴特沃思低通滤波器设计maxflat 递归滤波器设计yulewalk 巴特沃思滤波器阶估计buttord I型滤波器阶估计切比雪夫cheb1ord 型滤波器阶估计切比雪夫IIcheb2ord 椭圆滤波器阶估计ellipord 拟滤波器设计模4、

VB常用函数表

ASP纯ASP VBscript常用函数: 1.数值型函数: abs(num): 返回绝对值 sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负 hex(num): 返回十六进制值直接表示:&Hxx 最大8位 oct(num): 返回八进制值直接表示:&Oxx 最大8位 sqr(num): 返回平方根num>0 int(num): 取整int(99.8)=99; int(-99.2)=100 fix(num): 取整fix(99.8)=99; fix(-99.2)=99 round(num,n): 四舍五入取小数位round(3.14159,3)=3.142 中点数值四舍五入为近偶取整round(3.25,1)=3.2 log(num): 取以e为底的对数num>0 exp(n): 取e的n次幂通常用num^n sin(num): 三角函数,以弧度为值计算(角度*Pai)/180=弧度con(num); tan(num); atn(num) 2.字符串函数: len(str):计算字符串长度中文字符长度也计为一! mid(str,起始字符,[读取长度]):截取字符串中间子字符串 left(str,nlen):从左边起截取nlen长度子字符串 right(str,nlen):从右边起截取nlen长度子字符串 Lcase(str):字符串转成小写 Ucase(str):字符串转成大写 trim(str):去除字符串两端空格 Ltrim(str):去除字符串左侧空格 Rtrim(str):去除字符串右侧空格 replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串 注:默认值:起始字符1;替代次数不限;比较方法区分大小写(0)

freemarker中文手册文档

FreeMarker FreeMarker Java FreeMarker HTML Web MVC FreeMarker Java FreeMarker FreeMarker Web Web FreeMarker HTTP Servlet FreeMarker Web FreeMarker Model2 Struts JSP FreeMarker 1

HTML XML RTF Java Servlet Email Web Web 2 include if/elseif/else HTML 3 FreeMarker Java Java JavaBean XML SQL

4 Web Web HTML Model2 Web JSP JSP MVC 5 UNICODE US 6 XML <#recurse> <#visit> 2.3 XML XML FreeMarker (1)

1 1 + = FreeMarker —— HTML Web Web HTML FreeMarker Welcome!

Welcome ${user}!

Our latest product: ${https://www.doczj.com/doc/9c2160466.html,}!

HTML ${…} FreeMarker FreeMarker Template user latestProduct.url https://www.doczj.com/doc/9c2160466.html, data model (root) | +- user = "Big Joe" | +- latestProduct | +- url = "products/greenmouse.html" | +- name = "green mouse" latestProduct user url name url name latestProduct

js系统内置函数

1 系统内置函数 OnClick点击事件 OnLoad 页面加载事件 OnSubmit 提交事件 OnBlur失去焦点事件 OnFocus 获得焦点事件 OnChange 改变事件 OnMouseover 鼠标移入事件 OnMouseout 鼠标移出事件 var num =123.4 num = parseInt(num); alert(num) /*123*/ num = parseFloat(num); alert(num) /*123.0*/ 2 window.onload = function(){ alert("HELLO WORLD") confirm("是否确认注册") prompt("请输入信息") console.log("hello"); } 3 window.onload = function(){ alert("HELLO WORLD") confirm("是否确认注册")

prompt("请输入信息") console.log(document.getElementById("txt")); } 4 window.onload = function(){ alert("hello") var flag = confirm("是否确认") if(flag){ alert("您点击的是确认") }else{ alert("你点击的不是确认") return false; } } 5 var str=prompt ("请输入信息") if(str=="admin"){ alert("admin") }else{ alert("输入错误") } 2 点击事件