JAVA代码备注
Model
主键配置
@Id
@GenericGenerator(name = "hibernate-uuid", strategy = "uuid")
@GeneratedValue(generator = "hibernate-uuid")
@Column(name = "HIS_MRCH_ID", unique = true, nullable = false, insertable = true, updatable = false, length = 32)
多对一配置
@ManyToOne
@JoinColumn(name = "INDUSTRY_ID")
@NotFound(action = NotFoundAction.IGNORE)
主键又是外键
@Id
@Column(name = "MRCH_ID")
public String getMrchId() {
return mrchId;
}
public void setMrchId(String mrchId) {
this.mrchId = mrchId;
}
@OneToOne
@PrimaryKeyJoinColumn
public MmrchBasicInfo getMrch() {
return mrch;
}
Action
返回重定位
return "redirect:mrcheqprelation!listEqp?mrchId=" + mrchEqpRelation.getMrchId();
JSP页面FAQ
必填验证
控件加classs属性
class="required"
控件后加
<font color="red">*</font>
其他验证
['validation-failed' , '验证失败.'],
['required' , '请输入值.'],
['validate-number' , '请输入有效的数字.'],
['validate-digits' , '请输入数字.'],
['validate-alpha' , '请输入英文字母.'],
['validate-alphanum' , '请输入英文字母或是数字,其它字符是不允许的.'],
['validate-email' , '请输入有效的邮件地址,如 username@example.com.'],
['validate-url' , '请输入有效的URL地址.'],
['validate-currency-dollar' , '请输入有效的金额。例如100.00 '],
['validate-one-required' , '在前面选项至少选择一个.'],
['validate-integer' , '请输入正确的整数'],
['validate-pattern' , '输入的值不匹配'],
['validate-ip','请输入正确的IP地址'],
['min-value' , '最小值为%s'],
['max-value' , '最大值为%s'],
['min-length' , '最小长度为%s,当前长度为%s.'],
['max-length', '最大长度为%s,当前长度为%s.'],
['int-range' , '输入值应该为 %s 至 %s 的整数'],
['float-range' , '输入值应该为 %s 至 %s 的数字'],
['length-range' , '输入值的长度应该在 %s 至 %s 之间,当前长度为%s'],
['equals','两次输入不一致,请重新输入'],
['less-than','请输入小于前面的值'],
['less-than-equal','请输入小于或等于前面的值'],
['great-than','请输入大于前面的值'],
['great-than-equal','请输入大于或等于前面的值'],
['validate-date' , '请输入有效的日期,格式为 %s. 例如:%s.'],
['validate-selection' , '请选择.'],
['validate-file' , function(v,elm,args,metadata) {
return ValidationUtils.format("文件类型应该为[%s]其中之一",[args.join(',')]);
}],
//中国特有的相关验证提示信息
['validate-id-number','请输入合法的身份证号码'],
['validate-chinese','请输入中文'],
['validate-phone','请输入正确的电话号码,如:010-29392929,当前长度为%s.'],
['validate-mobile-phone','请输入正确的手机号码,当前长度为%s.'],
['validate-zip','请输入有效的邮政编码'],
['validate-qq','请输入有效的QQ号码.']
时间控件-时间校验
$("#signTimeBegin").datepicker().change(function() {
var minDate = $(this).datepicker("getDate");
$('#signTimeEnd').datepicker("option", "minDate", minDate);
});
list页面查询条件select反显失败
使用struts控件
<s:select theme="simple" cssClass=""
list="@com.richfit.operations.dict.DictCardTypeUtil@getAll()"
listKey="cardTypeId" listValue="cardTypeName"
headerKey="" headerValue=""
name="cardTypeId" value="model.cardTypeId"
/>
SysInitConfig自定义工具配置类
# list.jsp
<s:property value="@org.centric.common.SysInitConfig@getVlaue('LQUOTA_LEVEL',#attr.item.xxx)" />
# show.jsp
<s:property value="@org.centric.common.SysInitConfig@getVlaue('AUTO_TYPE',model.xxx)" />
# form_include.jsp
<select id='xxx' name='xxx' auto="auto" valition="required">
<s:iterator id="tc" value="@org.centric.common.SysInitConfig@getGroup('AUTO_TYPE')">
<option value='<s:property value="key"/>' <s:if test="%{#tc.key == model.xxx}"> selected="selected"</s:if>><s:property value="value" />
</option>
</s:iterator>
</select>
页面上应写数字,使用配置引用
# 静态变量引用
<%=Const.x %>
#
<%
request.setAttribute("a", const.x);
%>
<c:if test="${a eq model.xxx}"></c:if>
自定义数据工具类
package com.richfit.operations.dict
<s:select theme="simple" cssClass=""
list="@com.richfit.operations.dict.DictCardTypeUtil@getAll()"
listKey="cardTypeId" listValue="cardTypeName"
headerKey="" headerValue="" value="model.cardTypeId" name="cardTypeId"
/>
数据字典工具
package com.richfit.common.utils.system;
# 获取list
@com.richfit.common.utils.system.DictionaryUtil@getDictList('BENEFIT_TYPE')
# 获取明细
@com.richfit.common.utils.system.DictionaryUtil@getDict('BENEFIT_TYPE',#attr.item.benefitType).value
log4j
private static final org.apache.log4j.Logger logger =
org.apache.log4j.Logger.getLogger(CardTransferAction.class);