本文主要是介绍Tapestry组件前序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.字符串转换为日期
Date dt = new Date();
try {
dt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2010-04-14 00:00:00");
} catch (ParseException e) {
e.printStackTrace();
}
2. 变量类型默认初始值
int类型变量默认初始值为0
float类型变量默认初始值为0.0f
double类型变量默认初始值为0.0
boolean类型变量默认初始值为false
char类型变量默认初始值为0(ASCII码)
long类型变量默认初始值为0
float类型变量默认初始值为0.0f
double类型变量默认初始值为0.0
boolean类型变量默认初始值为false
char类型变量默认初始值为0(ASCII码)
long类型变量默认初始值为0
1.textarea属性使用指南
1)textarea标签是成对出现的,以<textarea>开始,以</textarea>结束
属性:
Common -- 一般属性
cols -- 多行输入域的列数
rows -- 多行输入域的行数
alt -- 代表表单的提示文字,当鼠标停留时
accesskey -- 表单的快捷键访问方式
disabled -- 输入域无法获得焦点,无法选择,以灰色显示,在表单中不起任何作用
readonly -- 输入域可以选择,但是无法修改
tabindex -- 输入域,使用"tab"键的遍历顺序
引用网址:http://www.dreamdu.com/xhtml/tag_textarea/
2)文本域textarea是HTML语言。textarea就是我们在论坛中最常见的发言框。在HTML语言中,textarea、input都是属于“文本域”。textarea的属性、各参数如下:
1、cols,垂直列。在没有做样式表设置的情况下,它表示一行中可容纳下的字节。例如cols=80,表示一行中最多可容纳40个汉字。
5.页面布局
1.一个汉字,12个长度差,:23个长度差
<td align="left" width="91" nowrap="nowrap"><span>年月:</span>
<t:textfield value="account_month" style="width:45px;" verify="年月:Number,LengthLt=6" maxlength="6"/>
</td>
6.页面验证
1.verify是自己写的验证,onkeydown和onkeyup是tapestry的客户端验证。
<t:textfield value="personnelWage.account_month" verify="年月:NotNull,LengthLt=6"
οnkeydοwn="getPYCode(this.value,'inputCode')"
οnkeyup="getPYCode(this.value,'inputCode')" maxlength="6" style="width:150px;"/>
2.表单验证规则
1.字符串 是否是空值,长度不能超过表结构长度
2.数字 默认值0,不能为空值,长度不能超过表结构长度,输入必须为数字
3.日期 是否可以为空值,是否是日期格式
4.email 是否可以为空值,是否是email格式
5.整型 默认值0,不能为空值,长度不能超过表结构长度,输入必须为数字
6.浮点型 默认值为0,不能为空值,长度不能超过表结构长度,输入必须为数字
7.java后台验证
1.验证表单输入
if(personnelWage.getAccount_month() == null || personnelWage.getAccount_month().length() <= 0){
this.prompt("年月不能为空!");
return null;
}
if(personnelWage.getAccount_month().length() > 6){
this.prompt("年月长度应为6!");
return null;
}
Pattern pattern = Pattern.compile("[0-9]*");
if(!pattern.matcher(personnelWage.getAccount_month()).matches()){
this.prompt("年月必须为数字!");
return null;
}
Pattern pattern1 = Pattern.compile("[0-9]*.?[0-9]*"); if(!pattern1.matcher(Double.toString(financeVoucher.getCost_amount())).matches()){
this.prompt("成本金额必须为double!");
return null;
}
8.项目特有代码
1.注入dao
@Inject
@Ibatis(beanInterface=SystemTimeService.class)
private SystemTimeService systemTimeService;//取系统日期服务
系统日期全部用这种方式获取,参照EditUsers页面
2.客户端验证方法:
NotNull 不为空
Number 必须数字
Int 必须整型
Time 时间格式验证
Date 日期格式验证
Email 邮件格式验证
Length 输入长度
9.项目bug
1. 小数的判断,verify=“金额:Number”不能验证(如:人员工资->新增页面->金额
2. 如何控制select下拉类表的显示个数
3. #$特殊字符的查询34+做主键查询也不行
4. 在编辑页面,如果鼠标没有定位,点击backspace,则会出现问题。观点:可能是模态窗
口的通病。
5. 日期控件在删除,和禁用时自动增加一天(内外服务计量指标)
11.项目说明
1.环境
jdk1.5.0_16 eclipse 3.3 tapestry5.1.0
服务器 jboss 4.2.2
数据持久框架ibatis
1. 项目改动
参照科室最新程序,修改成本核算项目管理,成本项目分类管理,收入项目管理,收入项目分类管理,核算体分类管理,核算体管理
2.
HISJEE每日编译已经启用,每日编译网址http://scm;
为了统一程序和版本,今后HISJEE客户端程序的发布统一从网站上下载。
另外为保证每日编译能够成功,请大家下班前务必将修改过的程序编译成功,
并将vss中'check out'的代码'check in'
12.ibatis总结
1.如果定义了resultMap,使用时应该把所有字段都包括进去,否则sqlException:列名无效
这篇关于Tapestry组件前序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!