- 浏览: 545268 次
- 性别:
- 来自: 广州
-
文章分类
- 全部博客 (339)
- JavaBase (27)
- J2EE (70)
- Database (22)
- Spring (3)
- struts1.x (6)
- struts2.x (16)
- Hibernate (10)
- IBatis (4)
- DWR (1)
- SSH (5)
- Oracle (31)
- HTML (12)
- javascript (11)
- Thinking (3)
- Workflow (5)
- Live (13)
- Linux (23)
- ExtJS (35)
- flex (10)
- php (3)
- Ant (10)
- ps (1)
- work (2)
- Test (1)
- Regular Expressions (2)
- HTTPServer (2)
- 方言 (1)
- 生活 (2)
- Sybase PowerDesigner (0)
最新评论
-
mikey_5:
非常感谢楼主的分享,<parameter propert ...
Check the output parameters (register output parameters failed) IN Ibatis -
影子_890314:
我现在也有这个错误,求解!
Check the output parameters (register output parameters failed) IN Ibatis -
358135071:
学习了,感谢分享!
使用hibernate 代替 mysql 中 limit 進行分頁 -
wjpiao:
你下面的“正确的映射”里面不是还是有number类型吗?
Check the output parameters (register output parameters failed) IN Ibatis -
zh_s_z:
很有用!弄一份吧!
Oracle数据库分区表操作方法
index.jsp
---------------------------------------------------------------------------------------
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>index page</title>
</head>
<body>
<font color="red">
<s:fielderror></s:fielderror>
</font>
<br/><br/>
doAdd method
<form action="control/manager/employee_doAdd" method="POST">
编号<input type="text" name="employee.empId"><br/>
姓名<input type="text" name="employee.empName"><br/>
手机<input type="text" name="employee.mobile"><br/>
生日<input type="text" name="employee.birthday"><br/>
<input type="submit" value="提交">
</form>
<br/><br/>
doUpdate method
<form action="control/manager/employee_doUpdate" method="POST">
编号<input type="text" name="employee.empId"><br/>
姓名<input type="text" name="employee.empName"><br/>
手机<input type="text" name="employee.mobile"><br/>
生日<input type="text" name="employee.birthday"><br/>
<input type="submit" value="提交">
</form>
</body>
</html>
EmployeeAction.java
-----------------------------------------------------------------------------------------------
package org.taink.struts.action;
import java.util.regex.Pattern;
import org.taink.entity.Employee;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
/**
* struts2 对action中的方法进行校验的分类:
* 1.采用手工编写代码方式实现 a.对action 中的所有方式进行校验,
* 即重写父类ActionSupport中的validate()方法 b.只对action 中指定方式进行校验,需要自定义校验方式.
*
* 2.基于XML 配置方式实现
*
* struts2 对action中的方法校验实现方式:
* 1.需要校验的action 需要继承ActionSupport类,对action中的所有方法进行校验,
* 就重写父类ActionSupport中的validate()方法 ;只对action 中指定方式进行校验,需要自定义校验方式.
* 2.在视图中引用:<%@ taglib uri="/struts-tags" prefix="s" %>标签,
* 并在页面中使用<s:fielderror></s:fielderror>标签
*
* struts2 对action中的方法校验流程:
* 1.类型转换器对请求参数执行类型转换,并将转换后的值赋给action 中的属性
* 2.如果在执行类型转换的过程中出现异常,系统会将异常信息保存到ActionContext,conversionError 拦截器将异常信息添加到fieldErrors里,不管类型转换是否出现异常,都会进入第3步.
* 3.系统通过反射技术先调用action 中的validateXxxx()方法,Xxxx为方法名.
* 4.再调用action中的validate()方法.
* 5.经过上面4步,如果系统中的fieldErrors存在错误信息,
* (即存放错误的集合的size 大于0,系统自动将请求转发至名称为input 的视图.如果fieldErrors 没有任何的错误信息,系统将执行action 中处理方法)
*
* @author taink
*
*/
public class EmployeeAction extends ActionSupport {
private static final long serialVersionUID = 6892944822771610653L;
private Employee employee;
public Employee getEmployee() {
return employee;
}
public void setEmployee(Employee employee) {
this.employee = employee;
}
public String doAdd() {
ActionContext.getContext().put("message", "添加成功");
return "success";
}
public String doUpdate() {
ActionContext.getContext().put("message", "更新成功");
return "success";
}
/*
* 1.此校验方法是自定义的 2.此校验方法只对当前的Action中的方法doAdd()方法进行校验
*/
public void validateDoAdd() {
if (null == this.employee.getEmpId()) {
this.addFieldError("employee.empId", "编号不能为空");
}
if (null == this.employee.getEmpName()
|| "".equals(this.employee.getEmpName())) {
this.addFieldError("employee.empName", "名称不能为空");
}
if (null == this.employee.getMobile()
|| "".equals(this.employee.getMobile())) {
this.addFieldError("employee.mobile", "手机不能为空");
} else {
// 使用正则表达式匹配手机号
if (!Pattern.compile("^1[358]\\d{9}$").matcher(
this.employee.getMobile()).matches()) {
this.addFieldError("employee.mobile", "手机格式不正确");
}
}
if (null == this.employee.getBirthday()) {
this.addFieldError("employee.birthday", "生日不能为空");
}
}
/*
* 1.此校验方法是自定义的 2.此校验方法只对当前的Action中的方法doUpdate()方法进行校验
*/
public void validateDoUpdate() {
if (null == this.employee.getEmpId()) {
this.addFieldError("employee.empId", "编号不能为空");
}
if (null == this.employee.getEmpName()
|| "".equals(this.employee.getEmpName())) {
this.addFieldError("employee.empName", "名称不能为空");
}
if (null == this.employee.getMobile()
|| "".equals(this.employee.getMobile())) {
this.addFieldError("employee.mobile", "手机不能为空");
} else {
if (!Pattern.compile("^1[358]\\d{9}$").matcher(
this.employee.getMobile()).matches()) {
this.addFieldError("employee.mobile", "手机格式不正确");
}
}
if (null == this.employee.getBirthday()) {
this.addFieldError("employee.birthday", "生日不能为空");
}
}
/*
* 1.此校验方法是对父类ActionSupport 的validate 进行重写
* 2.此校验方法对当前的Action中的所有方法都进行校验
*
*/
@Override
public void validate() {
if (null == this.employee.getEmpId()) {
this.addFieldError("employee.empId", "编号不能为空");
}
if (null == this.employee.getEmpName()
|| "".equals(this.employee.getEmpName())) {
this.addFieldError("employee.empName", "名称不能为空");
}
if (null == this.employee.getMobile()
|| "".equals(this.employee.getMobile())) {
this.addFieldError("employee.mobile", "手机不能为空");
} else {
if (!Pattern.compile("^1[358]\\d{9}$").matcher(
this.employee.getMobile()).matches()) {
this.addFieldError("employee.mobile", "手机格式不正确");
}
}
if (null == this.employee.getBirthday()) {
this.addFieldError("employee.birthday", "生日不能为空");
}
}
}
- struts2.zip (4.1 MB)
- 下载次数: 3
发表评论
-
struts2 添加或访问request,session ,application 的属性
2010-03-07 20:01 1094//1. 添加或访问request,s ... -
struts2 国际化--jsp 中直接访问某个资源文件
2010-01-08 19:09 2011struts2 为我们提供了<s:i18n& ... -
struts2 国际化--包范围资源文件
2010-01-08 18:36 1903在一个大型应用中,事个应用有大量的内容需要实现国际化,如 ... -
struts2 配置带占位符国际化资源(全局)
2010-01-08 16:38 37721.在src 目录 下添加语 ... -
struts2 配置国际化资源(全局)
2010-01-08 16:06 11911.在src 目录 下添加语 ... -
struts2 adtion 方法的校验(二)基于XML 配置
2010-01-08 14:39 1311EmployeeAction-employee_doAdd-v ... -
struts2 多文件上传
2010-01-07 22:25 909upload.jsp ---------------- ... -
struts2 单个文件上传
2010-01-07 22:17 911upload.jsp ------------------- ... -
struts2 adtion 中获得获得和设置application,request,session,response
2010-01-07 20:29 1888EmployeeAction.java ---------- ... -
struts2 自定义全局的类型转换器
2010-01-07 18:31 10781. 定义一个类继承自: com.opensymphony ... -
struts2 自定义局部的类型转换器
2010-01-07 18:19 11321. 定义一个类继承自: com.opensymphony.x ... -
struts2 adtion 中获得请求参数
2010-01-07 17:22 1337两种方式: 1.在action 中定义与请求参数同 ... -
struts2 configure
2010-01-07 16:10 1097struts2 adtion configure strut ... -
使用通配符的来调用action 中的不同方法
2010-01-07 16:08 1100struts.xml ------------------- ... -
struts2 常量设置以及属性的依赖注入
2010-01-07 15:29 1810<?xml version="1.0" ...
相关推荐
描述:Gowin(高云)是国产FPGA里做的比较好的几家之一(安路、紫光、高云、复旦微等)。由于开发板和实际项目较少,此处按开发板对工程项目进行分类。 其他:大部分工程均有从Cyclone IV仓库移植的影子,如有其他项目需求移步Cyclone IV的仓库。 主要目录: Pocket_lab_F0: 基于高云GW1N-LV9的一款FPGA开发板,易思达和高云大学计划出品 Pocket_lab_F2: 基于高云GW2A-LV18的一款FPGA开发板,易思达和高云大学计划出品 Tang Mega 138K:基于 GW5AST-LV138 的一款FPGA开发板,Sipeed出品,曾用于 2023 年全国大学生 FPGA 大赛高云赛区 Tang Primer 20K:基于 GW2A-LV18 的一款FPGA开发板,Sipeed出品,曾用于 2022-2023 年全国大学生 FPGA 大赛高云赛区 Tang Nano 20K: 基于GW2A-LV18的一款FPGA开发板,Sipeed出品 Tang Nano 9K:基于 GW1NR-LV9 的一款 FPGA 开发板,Sipeed出
TensorFlow Python版环境安装指南:从底层环境到anaconda配置的详细步骤,使用Mask R-CNN源码实现多张连续输出,兼容项目迁移至TensorFlow.js的技巧。,TensorFlow.Python版底层环境安装指南及Anaconda环境快速配置说明:涵盖Mask R-CNN源码实现及多图输出功能的训练项目搭建教程(附以往程序回溯及新版tensorflowjs的应用介绍),tensotflow.python版本底层环境安装命令。 程序都写好复制就可以安装anacoda环境。 maskrcnn源码可以连续输出多张。 以及可以跑通项目,现在用tensorflowjs了。 这个是之前跑通的主程序很多忘记了。 源程了 ,tensorflow_python_安装命令; anaconda环境安装; maskrcnn_源码; 连续输出多张; tensorflowjs; 主程序跑通。,TensorFlow环境安装指南:Python版anaconda环境配置命令及MaskRCNN源码使用教程
如何基于大模型(DeepSeek)实现一个多智能体的对话系统的,python脚本
AIAG(汽车工业行动小组)与VDA(德国汽车工业联合会)联合发布的FMEA(潜在失效模式及后果分析)标准,已成为全球汽车制造商和供应商的权威指南。本课程专注于过程FMEA(PFMEA),旨在帮助您深入理解其核心理念、方法与实践应用,掌握如何通过PFMEA识别设计缺陷、预防潜在问题,从而提升产品设计质量,降低开发成本,增强市场竞争力。 讲解新版FMEA七步法:1.策划与准备;2.结构分析;3.功能分析;4.失效分析;5.风险分析;6.优化;7.结果文件化。
实验报告
matlab下载
21考试真题最近的t319.txt
基于Java Swing 写的学生成绩管理系统 有数据库文件,用了仿苹果化的皮肤界面.zip项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用,资源为网络商品(电子资料类)基于网络商品和电子资料商品的性质和特征不支持退款,质量优质,放心下载使用
21考试真题最近的t284.txt
项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用,资源为网络商品(电子资料类)基于网络商品和电子资料商品的性质和特征不支持退款,质量优质,放心下载使用
项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用,资源为网络商品(电子资料类)基于网络商品和电子资料商品的性质和特征不支持退款,质量优质,放心下载使用
多维度基因表达与关联性分析:WGCNA、共表达网络、表型关联与聚类模块解析,基于生物信息学技术的基因网络与模块综合分析,WGCNA分析 基因共表达网络分析 基因表型关联分析 基因聚类分析 基因模块分析 ,WGCNA分析; 基因共表达网络分析; 基因表型关联分析; 基因聚类分析; 基因模块分析,基因网络与模块分析综合研究
1a89e6f5b1485b055ed7f0aeccd7b9f9.docx
实验报告
Matlab Simulink模型:三机九节点系统中双馈风机虚拟惯性与下垂控制在频率二次跌落中的应用与对比,Matlab Simulink模型:三机九节点系统下的风机虚拟惯性与下垂控制参与一次调频及频率二次跌落对比研究,Matlab simulink 频率二次跌落,双馈风机惯性控制+下垂控制参与系统一次调频的Matlab Simulink模型,调频结束后转速回复,造成频率二次跌落 系统为三机九节点模型,所有参数已调好且可调,可直接运行,风电渗透率20% 风机采用惯性+下垂控制。 有文档,可讲解。 对比不同恢复时间下二次跌落。 ,核心关键词: Matlab Simulink; 频率二次跌落; 双馈风机; 虚拟惯性控制; 下垂控制; 系统一次调频; 转速恢复; 三机九节点模型; 风电渗透率; 恢复时间; 对比。,Matlab Simulink模型中双馈风机虚拟惯性控制与下垂控制对频率二次跌落的影响研究
国家农业龙头企业数量主要指的是经过国家相关部门认定,并在农业产业化方面发挥重要引领作用的企业的总数。这些企业通常以农产品加工或流通为主业,通过各种利益联结机制与农户相联系,带动农户进入市场,实现农产品生产、加工、销售的有机结合和相互促进。 数据名称:国家农业龙头企业数量 数据年份:2010-2022年 ## 02、相关数据 省份、年份、龙头企业数量。
基于5G指纹的智能室内定位技术研究_王志坤.pdf
项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用,资源为网络商品(电子资料类)基于网络商品和电子资料商品的性质和特征不支持退款,质量优质,放心下载使用
基于扩展卡尔曼滤波的车辆状态观测器:Carsim与Simulink联合应用,高效估计车辆Vx、β、γ状态,附详细注释与说明文档,基于扩展卡尔曼滤波的Carsim与Simulink联合车辆状态观测器 利用子函数编程,可估计Vx、β、γ状态,附低版本simulink文件及详细注释文档。,基于扩展卡尔曼滤波(Extended Kalmam Filter, EKF)的车辆状态观测器 Carsim与Simulink联合 可估计车辆Vx,β,γ(效果见图) EKF使用子函数形式编程,只要定义好状态方程和观测方程,便可方便的进行二次开发 Carsim2019 MATLAB2020a 可提供对应的低版本simulink文件 带有详细注释和说明文档 Carsim与Simulink联合估计难度与单纯的Simulink模型估计难度不同 ,基于扩展卡尔曼滤波;车辆状态观测器;Carsim与Simulink联合;Vx,β,γ估计;低版本simulink文件;详细注释和说明文档。,基于EKF的车辆状态观测器:Carsim与Simulink联合仿真及效果展示