struts学习笔记—FormBean
来源:互联网 发布:2016淘宝屏蔽搜索排名 编辑:程序博客网 时间:2024/05/17 01:52
struts的流程:
截获*.do的页面请求——调用srtuts-config.xml查找对应的*.do——找对应的表单预处理项Form Bean和核心处理项HelloAction进行处理。Form Bean是对表单的封装。提交数据时,Struts会调用request.getParameter(“”)将值取出,然后通过setter方法设置到同名的FormBean属性上。另外,Form Bean有自动转化常用数据类型的功能和对用户输入信息进行validation校验的功能。其中的常用数据类型转换意思很简单,例如属性类型是int类型,但request.getParameter(“”)获取到的是String类型,Structs会调用Integer.parseInt(“”)转化为int类型。下面我们以具体实例来演示FormBean的validation表单校验功能。
FormBean的表单校验实例:
1.页面hello.jsp:
<%@ page language="java" pageEncoding="utf-8"%><%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <html> <head><title>JSP for HelloForm form</title></head><body><html:form action="/hello">姓名 : <html:text property="name"/><html:errors property="name"/><br/>年龄 : <html:text property="age"/><html:errors property="age"/><br/>是否用过struts?:<html:checkbox property="experience" /><br/><html:checkbox property="hobby" value="音乐"/>音乐<html:checkbox property="hobby" value="体育"/>体育<html:checkbox property="hobby" value="影视"/>影视<b><html:errors property="hobby"/></b><br/><html:submit/><html:cancel/></html:form></body></html>
2.helloForm及其validation:
public class HelloForm extends ActionForm {private String name;private int age;private boolean experience;private Date date;private Time time;private String[] hobby;public ActionErrors validate(ActionMapping mapping,HttpServletRequest request) {// TODO Auto-generated method stubActionErrors errors=new ActionErrors();if(name==null||name.trim().length()==0)errors.add("name",new ActionMessage("hello.error.name"));if(hobby==null||hobby.length<1)errors.add("hobby",new ActionMessage("hello.error.hobby"));if(age<5)errors.add("age",new ActionMessage("hello.error.age",5));return errors;}public void reset(ActionMapping mapping, HttpServletRequest request) {// TODO Auto-generated method stubage=5;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public boolean isExperience() {return experience;}public void setExperience(boolean experience) {this.experience = experience;}public String[] getHobby() {return hobby;}public void setHobby(String[] hobby) {this.hobby = hobby;}public Time getTime() {return time;}public void setTime(Time time) {this.time = time;}public Date getDate() {return date;}public void setDate(Date date) {this.date = date;}}
在HelloForm中我们看到用于验证的部分有姓名和喜好以及年龄,为空的话或者年龄小于5都会放到errors.add("",)里,然后在struts-config.xml里我们看到 <message-resources parameter="com.li.struts.ApplicationResources"/>,ApplicationResources是一个文件,存储着错误名和相应值的键值对。
- struts学习笔记—FormBean
- struts formbean
- 传智播客struts学习,formbean属性的整数与日期类型
- struts FormBean的用处
- 深入研究struts中的formbean
- Struts中FormBean内部验证
- 传智播客struts学习,strust标签和formbean的原理及作用
- Struts 中 formbean的使用(小技巧)
- 用lazyBean简化struts formbean开发
- 带formbean的Struts工作过程
- Struts 开发简单例子[action formbean]
- struts 2学习笔记—初学struts 2
- struts 2学习笔记—浅谈struts的线程安全
- struts学习笔记——参数接收
- Struts学习笔记——01
- Struts学习笔记
- Struts学习笔记
- struts学习笔记
- android面试题总结加强版(二)
- html显示长数据的处理方法
- android中Preference(首选项)
- 盒子大行其道,正确与否
- win7 Android ADB Interface驱动 找不到指定文件的解决办法
- struts学习笔记—FormBean
- 【事务的种类】
- Hibernate 执行原生sql
- 十六进制颜色大全
- spring security2配置文件学习小结
- 碎步一:根据用户喜好选择不同背景图(背景选择器)
- 游戏中用户升级的设计
- 通过SQL语句实现要素Geometry字段解析
- 拍照界面显示的语言设置