1、开发的一些总结结构:entity枚举类型 enums页面显示Java实体配置ControllerRequestMapping(order/basic/ordInteInfo)controllerreturn commonConfig.getFrkPrefixPath() + VIEW_ROOT + list;数据库表字段封装成实体 直接调用EntityTable(name=OrdInteInfo.TABLE_NAME, schema=OrdInteInfo.TABLE_SCHEMA)/nameTable(name=数据库名, schema=数据库用户)public static final S
2、tring TABLE_NAME = T_ORD_FLOWNODEINFO;public static final String TABLE_SCHEMA = ORD;配置FTLRequestMapping(value = /list)Function(value = Operators.QUERY)/value = Operators.QUERY EDIT SAVE VIEW DELETE CREATE UPDATE IMPORT EXPORT DOWNLOAD表示进行的操作/返回路径去FTLservice/serviceImpl服务层调用dao层方法dao/daoImpl与service/
3、serviceImpl类似ftl页面显示数据FTL表达式和文本的区别:$.只能用于文本部分, 用于表达式处理NULL$editObject.nodeName?if_exists默认值设置$editObject.sid?c 时间格式$editObject.ctime?string(yyyy-MM-dd HH:mm:ss)$editObject.ctime?string(yyyy-MM-dd HH:mm:ss)if else 的运用 举例: $user.name还是一个小孩 $user.name快成年 $user.name已经成年集合的一些语法:1、查询清单 JSON数据传输 colModel:
4、code: CTime, /字段名 name: 创建时间, /字段描述 textAlign: center, wordCountLimit: 30, fixedWidth: 150 , code: , name: 操作, wordCountLimit: 30, fixedWidth: 80, /固定宽度 thClassName: btnCol, /表格头th的样式 tdClassName: btnColTd /数据行td的样式 , totalRows: $amount?c,/总行数 page: $currentPage?c,/页数 size: $pageSize?c,/大小/页面循环集合读取数
5、据 data: 0) $bean.sid, $stringTransfer(bean.flowName?default(), $stringTransfer(bean.nodeCode?default(), $stringTransfer(bean.nodeName?default(), $stringTransfer(bean.flowNodeDesc?default(), $bean.ctime?string(yyyy-MM-dd HH:mm:ss), 查看修改删除接口配置规则设置短信设置上移下移 #if (bean_index + 1) , 2、list和map的连接运算这里所说的集合运
6、算符是将两个集合连接成一个新的集合,连接集合的运算符是+,看如下的例子: $x 输出结果是:星期一 星期二 星期三 星期四 星期五 星期六 星期天 3.5 Map连接运算符 Map对象的连接运算符也是将两个Map对象连接成一个新的Map对象,Map对象的连接运算符是+,如果两个Map对象具有相同的key,则右边的值替代左边的值.看如下的例子: 语文成绩是$scores.语文 数学成绩是$scores.数学 Java成绩是$scores.Java 输出结果是: 语文成绩是86 数学成绩是87 Java成绩是93 Oracle1、insert 字段1,字段2 select 字段1,字段2 from
7、插入字段 跟 查询 字段 顺序随便2、时间查询语句select*fromtablewheredate=to_date(2013-01-27,yyyy-mm-dd)3、删除这些具重复字段的数据记录:deletefromtableNameawhere字段1,字段2in(select字段1,字段2,count(*)fromtableNamegroupby字段1,字段2havingcount(*)1)4、修改表列名等信息 altertabletable_namerenamecolumncolumn_nametonew_column_nameALTERTABLESCOTT.TESTRENAMETOTES
8、T1-修改表名 ALTERTABLESCOTT.TESTRENAMECOLUMNNAMETONAME1-修改表列名ALTERTABLESCOTT.TESTMODIFYNAME1NUMBER(20)-修改字段类型ALTERTABLESCOTT.TESTADDADDRESSVARCHAR2(40)-添加表列ALTERTABLESCOTT.TESTDROPNAMECASCADECONSTRAINTS-删除表列freemarker常见语法大全FreeMarker的插值有如下两种类型:1,通用插值$expr;2,数字格式化插值:#expr或#expr;format $book.name?if_exist
9、s /用于判断如果存在,就输出这个值 $book.name?default(xxx)/默认值xxx $book.name!xxx/默认值xxx $book.date?string(yyyy-MM-dd) /日期格式 $book?string.number 20 /三种不同的数字格式 $book?string.currency- $book?string.percent /声明变量,插入布尔值进行显示 $foo?string(yes,no) 大小比较符号使用需要注意:(xml的原因),可以用于比较数字和日期 使用lt、lte、gt和gte来替代、和= 也可以使用括号y) 内置函数: 调用区别于属
10、性的访问,使用?代替. 常见的一些内置函数 对于字符串 html对字符串进行HTML编码 cap_first使字符串第一个字母大写 lower_case将字符串转换成小写 trim去掉字符串前后的空白字符示例:$“freeMarker”?cap_first对于Sequences(序列) size获得序列中元素的数目 对于数字 int取得数字的整数部分(如-1.9?int的结果是-1) 对于集合,可以使用数组的方式,使用下标索引进行访问 逻辑判断: if. . . . . Boolean类型的空值判断 空值判断可以写成 /注意$为变量的渲染显示,而为定义等操作符的定义 switch. . . .
11、 . . 快速定义int区间的集合 /注意不需要 3:循环读取集合: 注意/的使用 $stu 与jstl循环类似,也可以访问循环的状态 item_index:当前变量的索引值 item_has_next:是否存在下一个对象 其中item名称为as后的变量名,如stu 集合长度判断 判断=的时候,注意只要一个=符号,而不是= 宏/模板 初步了解: 使用更像一个闭包closure,可以定义后,在脚本中任意地方引用,并原地起作用 Hello Joe! 使用的方式为: /同xml可以简写成 宏的参数定义,类似js,在宏名后 带参数进行传递定义 $person 调用带参数时,注意使用类似XML的属性格式
12、进行传递,不需要关心顺序问题 参数默认值定义,如果没有,就必须要求传递完整的参数列表 Hello $person! 使用xml的嵌套内容进行传递宏调用,关键标签 调用时: The bordered text 标签可以在宏中多次调用,也可以将多个宏组合进行嵌套 for循环的精简版: 宏的循环变量,配合嵌套标签进行参数传递, /这里的三个参数,将会传递到嵌套内容中 $c. $halfc Last! /这里的内容由macro中的进行参数的传递,传递的数量任意,当注意需要宏接受这些 上述还需要注意;的使用 参数的数量是可变的,并不要求全部都有,但是效果不同 在模板中定义变量 在模板中定义的变量种类型:
13、 plain变量:可以在模板的任何地方访问,包括使用include指令插入的模板,使用assign指令创建和替换。 局部变量:在宏定义体中效,使用local指令创建和替换。 循环变量:只能存在于指令的嵌套内容,由指令(如list)自动创建;宏的参数是局部变量,而不是循环变量 /全局的plain变量 内部循环变量将会隐藏同名的外部循环变量 外部导入的使用,可以用于模块化,并且提供公用性 如:lib/my_lib.ftl文件 Copyright (C) $date Julia Smith. All rights reserved. Email: $mail lib/my_inc.ftl文件 $my
14、.mail $mail 输出结果将不会出现冲突 对于库中的变量修改,使用in关键字 函数定义:区别于宏对象,带返回值 函数,有返回参数 stringAM . N 取子字符串,类似substring(stringA, M, N) 导入其他页面元素 options包含两个属性 encoding=”GBK” 编码格式 parse=true 是否作为ftl语法解析,默认是true,false就是以文本方式引入.注意在ftl文件里布尔值都是直接赋值的如parse=true,而不是 parse=”true” hash与list的定义 $c.a List片段可以采用: products10.19 or pr
15、oducts5. 的格式进行定义,当只局限于数字 $v 对变量的缺省处理 product.color!red 用compress directive或者transform来处理输出。 .:消除空白行。 .将输出压缩为一行。都需要包裹所需文档 freemarker可用代替.在模板的文件开头加上#ftl. 注释部分 数字输出的另外一种方式 #c.a;m0 区别于$,这个例子是用于输出数字的格式化,保留小数的位数,详细如下 数字格式化插值可采用#expr;format形式来格式化数字,其中format可以是: mX:小数部分最小X位 MX:小数部分最大X位 在定义字符串的时候,可以使用或者,对特殊字
16、符,需要使用进行转义 如果存在大量特殊字符,可以使用$r.进行过滤 $r$foo $rC:foobar Map对象的key和value都是表达式,但是key必须是字符串 可以混合使用.和访问 book.authorname /混合使用点语法和方括号语法 为了处理缺失变量,FreeMarker提供了两个运算符: 用于防止对象不存在而导致的异常 !:指定缺失变量的默认值 ?:判断某个变量是否存在,返回boolean值 noparse指令指定FreeMarker不处理该指定里包含的内容,该指令的语法格式如下: . $firstName?html 使用html对字符进行格式化处理,对于等的过滤 esc
17、ape , noescape指令,对body内的内容实用统一的表达式 看如下的代码: First name:$firstName Last name:$lastName Maiden name:$maidenName 上面的代码等同于: First name:$firstName?html Last name:$lastName?html Maiden name:$maidenName?html 定义全局变量的方式 / 可以同时定义多个变量,也可以使用循环来给变量赋值 $n $x setting指令,用于动态设置freeMarker的运行环境: 该指令用于设置FreeMarker的运行环境,该
18、指令的语法格式如下:,在这个格式中,name的取值范围包含如下几个: locale:该选项指定该模板所用的国家/语言选项 number_format:指定格式化输出数字的格式 boolean_format:指定两个布尔值的语法格式,默认值是true,false date_format,time_format,datetime_format:指定格式化输出日期的格式 time_zone:设置格式化输出日期时所使用的时区 用于退出宏的运行 ?html 用于将字符串中可能包含的html字符,进行过滤. 调用Java方法,需要使用实现TemplateMethodModel接口,但是好像会覆盖掉属性的访
19、问2.3.1、Spring Web MVC处理请求的流程如图2-1图2-1具体执行步骤如下:1、 首先用户发送请求前端控制器,前端控制器根据请求信息(如URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图2-1中的1、2步骤;2、 页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在Spring Web MVC中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个ModelAndView(模型数据和逻辑视图名);图 2-1中的3、4、5步骤;3、 前端控制器收回控制权,然后根据返回的逻辑视图名
20、,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图2-1中的步骤6、7;4、 前端控制器再次收回控制权,将响应返回给用户,图2-1中的步骤8;至此整个结束。第一步 安装apache_2.0.55没什么可说的,一步一步往下走就对了。说明一下我的安装设置,方便下面参数的说明。Network Domain:;ServerName:;Administrators Email Address:xingruohanc;建议不要装到默认的C:Program FilesApache GroupApache2。这个主要是为了以后配置的时候,写路径不用写这么长一串麻烦。装好以后会在任务栏出现以下这个钮 ,说明你的安装已经成功了。第二步 配置服务器其实主要是修改各种参数,来设定、实现你需要的服务器。进入安装目录,在CONF这个文件夹下面的HTTPD.CONF,比如我的位置就是:C:Program FilesApache GroupApache2conf
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1