ActionForm
需要Java类,各有不同的实现
支持的属性:基本类型,包装类,自定义类,数组, Map, List
初始化:reset(),对数组,Map,List初始化
如何验证:validate()方法,通过验证框架.
如何取值:转换成对应的具体的ActionForm类,通过getter方法去对ActionForm取值.
Vo传值(BeanUtils):copyProperties(vo,properties),
动态属性:不支持
JSP上:input里的Name要和Form中的属性要对应,包括大小写.
嵌套属性:user.address.city
应用场合:对某些有明确验证需求的.对表单域做一定的过虑.
对于要把表单存在Session中
ActionForm重用问题:当N个Action其对应表单都是某个共同的子集,把这些Action对应同一个ActionForm
<action name="相同" ... />
DynaActionForm
不要Java类, 配置属性
基本类型不支持,支持包装类, 自定义类,数组,Map,List(做不了,不支持)
初始化:initial,只能对String,String[]初始化,对于数组和Map不用new
如何验证:通过验证框架验证,没有validate()方法
如何取值:转成DynaActionForm, 然后(Type)get("xxx"),getString("XX"),getStrings("XX"),getMap()
Vo传值(BeanUtils):getMap(),populate(vo, map);
动态属性:不支持
JSP上:与ActionForm完全一样.
嵌套属性:同上
应用场合:同上
Map-backed Form
需要类, 形式是固定的
包装类,自定义类(主要是String)
页面写成value(xx)的形式
初始化:基本上不支持.
如何验证:没法验证.
如何取值:转成MapForm,getValue("xx"),getMap().
Vo传值(BeanUtils):getMap(),populate(vo, map);
动态属性:支持
JSP上:所有的属性名对应value(xx)
嵌套属性:不能用这种方式,它会把usr.address.city当成字符串放到Map里.
应用场合:对应数据库表的CRUD操作.
LazyValidatorForm
不需要Java类,基本类型,String,Date,自定义类不完全支持,Map,List,数组和自定义类都要去配置.
也就是显示的申明让它来支持.
初始化:基本上不支持.除非显示申明的那些属性.
如何验证:只能通过框架, 一定要框架.
如何取值:转成DynaBean, 用get("xxx"),xxx和页面对应,get("xxx", int)数组List取第几个
get("xxx", string)到Map中的指定Key的值.
Vo传值(BeanUtils):copyProperties(vo,properties),
动态属性:支持
JSP上:没有附加要求.
嵌套属性:能嵌套, 还是DynaBean.
应用场合:优先选择, 可以回退成DynaActionForm用.
9:30 2009-8-28
------------------------------------------------------------------------------
Struts 标签
共用属性:id --- var
property :
1,只有property,没有name,和属性对应.
2,name,property一起出现
bundle : 对应资源文件.
key : 对应资源文件中的Key.
scope : 范围
------------------
Struts Bean Tags
BeanServlet
cookie,pageContext,param,paramValues,initParam,header.
<bean:cookie id="cookie" name="" value="" />
<bean:parameter id="" name="" value="" />
<bean:parameter id="" multiple="yes|no" name="" value="" />
<bean:page id="" property="" />
BeanResources
<message-resource parameter="" key="special" />
<bean:message bundle="special" key="hello" />
<bean:message bundle="special" name="" />
BeanBean
<bean:define id="" value="" />
1,定义字符串:<bean:define = "" value="" />
2,复制一个Bean :
<bean:define id="" name="" type="xx.xx.xx" scope="" toscope="" property="" />
<bean:size />
<bean:size id="" name="" property="" />
<bean:write />
<bean:write format="#.###" name="" />
<bean:write format="MM-dd-yyyy hh:mm:ss" name="now" property="time" />
------------------------------------------
Struts HTML Tags
<html:link />
<html:link forward="index" >
<html:link page="/htmlbasic.do" >
<html:link page="" paramId="" paramName="" paramProperty="" >
<html:link page="" name="map" >
<html:rewrite />
<html:rewrite page="/htmlbasic.do" name="map" />
<html:cancel>
提交不验证.有一个isCanceled(request)方法.
-------------------
<html:options collection="" property="" labelProperty="" />
<html:optionCollections name="' property="" label='' value='' />
----------------------------------------------------------------------
Struts-logic标签
<logic:equal value="admin" cookie="userable">
当前条件成立
</logic:equal>
<logic:present>
<logic:notPresent>
<logic:empty>
<logic:notEmpty>
<logic:match>
<logic:notMatch>
<logic:iterate id="" name="" indexId="ind">
<bean:write name="" property="" />
</logic:iterate>
<logic:iterate id="" indexId name offset length >
</logic:iterate>
<logic:redirect>
<logic:forward>
----------------
常用的Struts标签:
<bean:write>
<bean:define>
<bean:size>
<html:options>
<html:action>
<html:link>
<logic:match>
随意选:
<bean:parameter>
<bean:header>
<bean:cookie>
<logic:empty,present>
问的比较多的:
<logic:iterate>
<html:cancel> isCancled()方法
<html:checkBox,radio,multibox> 赋初值
分享到:
- 2009-09-20 23:49
- 浏览 1519
- 评论(0)
- 论坛回复 / 浏览 (0 / 2695)
- 查看更多
相关推荐
在Struts1.2中,Form Bean通常与JSP表单中的输入元素对应,它们在用户交互过程中传递数据。 4. **JSP页面**:作为View层,用于显示数据。JSP页面通常使用Struts的标签库,如`<html:form>`、`<bean:write>`等,来...
### Struts 1.2 实例讲解:Login 应用详解 #### 一、Struts 概述 Struts 是一款开源的 MVC (Model-View-Controller) 架构模式的 Java Web 开发框架,它简化了 Web 应用程序的开发流程。Struts 1.2 版本是该框架的...
以上就是Struts 1.2的基本入门操作和工作原理。理解并掌握这些内容,可以帮助开发者快速构建基于Struts的Web应用。在实际开发中,还需要考虑错误处理、国际化、拦截器等高级特性,以增强应用的功能和可维护性。
在Java EE世界里,Struts 1.2 版本因其易用性和广泛的社区支持,成为了初学者入门Web开发的首选框架之一。 首先,我们来看一下 Struts 1.2 的核心组件: 1. **ActionServlet**:这是 Struts 框架的核心控制器,它...
Struts 是一个开源的Java Web框架,它主要负责管理和控制应用程序的流程,使得开发者可以更加专注于业务逻辑的实现,而不用过多地...记得理论与实践相结合,不断试验和调试,你将能更好地掌握Struts1.2的核心知识点。
Struts1.2入门通常从配置文件开始,如struts-config.xml。这个文件包含了Action、Form Bean、DataSources、Message Resources等配置,是整个应用的核心配置。了解如何配置ActionMapping、FormBean和Result是入门的...
通过快捷键`Ctrl+N`,选择`MyEclipse/Web-Struts/Struts 1.2 Form`,创建一个名为`LoginForm`的类。在“Use case”中输入“Login”,MyEclipse会自动生成对应的属性名称和类型。这里我们有“username”和“password...
同时,在`JSP`选项卡中选择创建一个与之关联的`login.jsp`页面。 **1.4 创建Action类** 利用`Ctrl+N -> MyEclipse -> Web-Struts -> Struts1.2 Action`创建`LoginAction`类。此类继承自`Action`接口,负责处理`...
### Struts in Action中文版1.2:Struts框架详解 #### 1. 关于本书与Struts背景 《Struts in Action》是一本全面介绍了领先Java Web开发框架——Struts的经典著作。本书由Ted Husted撰写,Eric Liu翻译,并在2005...
Struts1.2是其较早的一个版本,尽管现在已经被Struts2所取代,但仍然有许多项目还在使用,因此理解Struts1.2的基本概念和工作原理仍然是必要的。 这个"struts例子"是一个简单的应用,旨在帮助初学者快速理解Struts...
配置Struts时,需要注意Struts specification的选择,例如在示例中选择了Struts 1.2版本。 【Hibernate】 Hibernate 是一个对象关系映射(ORM)框架,它允许开发者将Java对象与数据库表进行映射,简化了数据库操作...
- **创建ActionForm**:使用快捷键"Ctr+N",选择"MyEclipse" -> "Web-Struts" -> "Struts 1.2 Form",创建名为"LoginForm"的表单类,添加属性"username"和"password",并选择"Create JSP form",指定为"login.jsp...
1. 使用快捷键`Ctrl + N`,选择`MyEclipse > Web - Struts > Struts 1.2 Form`。 2. 类名为`LoginForm`。 3. 在`Form Properties`选项卡中为`LoginForm`添加两个属性:`username`和`password`。 4. 在`JSP`选项卡...
4. 查阅API文档:struts1.2_en.chm是学习和解决问题的好帮手,了解每个类和方法的功能。 5. 学习最佳实践:关注代码的可复用性、可维护性和性能优化。 总之,作为菜鸟入门,理解并熟练运用Struts1 API是提升开发...
6. **jstl.jar** 和 **standard.jar**: JSTL(JSP Standard Tag Library)和其相关的实现,提供了标准的JSP标签库,可以与Struts标签库结合使用。 7. **servlet-api.jar** 和 **jsp-api.jar**: Java Servlet和JSP ...
在项目的类路径下创建`struts.xml`配置文件,定义Action与结果页面的映射: ```xml <struts> <package name="default" namespace="/" extends="struts-default"> <result name="success">/HelloWorld.jsp </...
### Struts Web设计与开发大全知识点总结 #### 一、Struts及Java Web基础知识 **1.1 Java Web基础** - **1.1.1 起点:Servlet/JSP** - Servlet(服务器端应用程序接口):Servlet 是一种运行在服务器端的小程序...
Struts的入门学习首先要理解其体系结构。在典型的Struts应用中,客户端(如浏览器)通过HTTP请求与服务器进行交互。控制器部分由ActionServlet担任,它作为所有HTTP请求的入口点,负责拦截和分发请求到相应的Action...
### J2EE电子商务系统从入门到精通——基于Struts和Hibernate技术实现 #### 一、J2EE概论 在本书的第一章中,作者详细介绍了从简单的双层架构到复杂的多层架构的发展历程,并深入探讨了J2EE的核心概念和技术。 - ...
### J2EE电子商务系统开发从入门到精通——基于Struts和Hibernate技术实现 #### J2EE概论 **1.1 简单双层架构到复杂多层架构** - **1.1.1 双层(C/S)软件架构设计** - 双层架构(客户端/服务器架构,Client/...