`

struts nested标签

    博客分类:
  • java
 
阅读更多

nested 标签就是把表单直接对应到一个业务类对象,在FORM类中定义这个业务类对象就可,这个标签用起来也不难,而且还挺好用,比如说有个 表单类PersonForm,业务类Person,在PersonForm中定义 Person person=new Person(); 注意这里用new分配空间,不能只是这样Person person;

在Person类中定义 private String name; private String sex;

那么在.jsp中表单部分如下:

  1. //其他代码
  2. <html:formaction="/PersonAction">
  3. <nested:nestproperty="person">
  4. <nested:messagekey="use_nested.jsp.form.name"/>
  5. <nested:textproperty="name"size="18"/><br/>
  6. <nested:messagekey="use_nested.jsp.form.sex"/>
  7. <nested:textproperty="sex"size="18"/><br/>
  8. nested:nest>
  9. <html:submit>
  10. <bean:messagekey="use_nested.jsp.form.submit"/>
  11. html:submit>
  12. html:form>
  13. //其他代码

其中<nest> 理解就是定义一个类层次,它也可以嵌套使用,当业务类中还包含其他业务类时就可以使用它的嵌套,当使用嵌套时如果</nest>想显式知道嵌套的层次可以利用nested 标签的 nested:writeNesting 标签进行输出。比如现在我们再加一个业务类 Address ,类中数据元素为:private String country; private String province;
然后在 业务类 Person 中加上 private Address add=new Address();

结合 nested:writeNesting 后的.jsp 为:

xml 代码
  1. ///其他代码
  2. <html:formaction="/PersonAction">
  3. <nested:nestproperty="person">
  4. <nested:messagekey="use_nested.jsp.form.currentNesting"/>
  5. <nested:writeNesting/><br/>
  6. <nested:messagekey="use_nested.jsp.form.name"/>
  7. <nested:textproperty="name"size="18"/><br/>
  8. <nested:messagekey="use_nested.jsp.form.sex"/>
  9. <nested:textproperty="sex"size="18"/><br/>
  10. <nested:nestproperty="add">
  11. <nested:messagekey="use_nested.jsp.form.currentNesting"/>
  12. <nested:writeNesting/>
  13. <nested:messagekey="use_nested.jsp.form.country"/>
  14. <nested:textproperty="country"size="18"/><br/>
  15. <nested:messagekey="use_nested.jsp.form.province"/>
  16. <nested:textproperty="province"size="18"/><br/>
  17. nested:nest>
  18. nested:nest>
  19. <html:submit>
  20. <bean:messagekey="use_nested.jsp.form.submit"/>
  21. html:submit>
  22. html:form>
  23. ///其他代码

其中第二个 nested:writeNesting 会输出 person.add 表明当前类层次, 当你输出表单数据时 还可以定义一个顶层级别的 javaBean,这时候就利用 nested 的 nested:root 标签,比如要输出上个表单元素时,顶层级别就是 PersonForm ,其他则与上面是一样,如下:

xml 代码
  1. //其他代码
  2. <jsp:useBeanid="PersonForm"type="nestedtag.PersonForm"scope="request"/>
  3. <nested:rootname="PersonForm">
  4. <nested:nestproperty="person">
  5. <nested:messagekey="use_nested.jsp.form.name"/>
  6. <nested:writeproperty="name"/><br/>
  7. <nested:messagekey="use_nested.jsp.form.sex"/>
  8. <nested:writeproperty="sex"/><br/>
  9. <nested:nestproperty="add">
  10. <nested:messagekey="use_nested.jsp.form.country"/>
  11. <nested:writeproperty="country"/><br/>
  12. <nested:messagekey="use_nested.jsp.form.province"/>
  13. <nested:writeproperty="province"/><br/>
  14. nested:nest>
  15. nested:nest>
  16. nested:root>
  17. //其他代码

nested 的其他子标签则与 html子标签和 bean子标签的功能类似,就不用介绍了。

最后说明的是,利用nest 实现的功能也可以不用 nest 实现,只不过写 property 是把完整的属性路径写全就行了,因为比较简单看了下面的代码就明白了

xml 代码
  1. //其他代码
  2. <html:formaction="/PersonAction">
  3. <bean:messagekey="use_nested.jsp.form.name"/>
  4. <html:textproperty="person.name"size="18"/><br/>
  5. <bean:messagekey="use_nested.jsp.form.sex"/>
  6. <html:textproperty="person.sex"size="18"/><br/>
  7. <bean:messagekey="use_nested.jsp.form.country"/>
  8. <html:textproperty="person.add.country"size="18"/><br/>
  9. <bean:messagekey="use_nested.jsp.form.province"/>
  10. <html:textproperty="person.add.province"size="18"/><br/>
  11. <html:submit>
  12. <bean:messagekey="use_nested.jsp.form.submit"/>
  13. html:submit>
  14. html:form>
  15. //其他代码
分享到:
评论

相关推荐

    struts2标签和解释及其说明

    struts2标签和解释及其说明 嘿嘿其实就是那个下载人数最多的那个的东西..他要10分啊..太心黑了..呵呵我借鉴哈和你们一起分享哈!但是我花了10分不能不挣回来吧!大家一人补偿我点就好了!.......一起学习!

    struts1标签库详解

    Struts 提供了非常多的标签,依据功能和使用习惯的不同被分到了五个标签库中:Bean Tags、HTML Tags、Logic Tags、Nested Tags 和 Tiles Tags。下面将对前三个标签库中的标签进行详细的介绍。 Bean Tags Bean Tags...

    struts标签 struts标签 struts标签

    Struts标签是Apache Jakarta Struts框架中的一部分,用于简化Java Web应用程序开发中的视图层构建。Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据...

    java web 标签大全

    Struts Bean标签 ...Struts Nested标签 Struts Tiles 标签 Struts2 标签 JSTL Core JSTL fmt JSTL functions Spring 标签 Spring 表单标签 Freemarker Velocity JSF Core JSF Form AJAX JS 常用 JS 验证

    struts 1.2 标签使用说明

    - **nested标签**:提供增强的嵌套能力,使其他Struts标签能在复杂的数据结构中工作。 2. **Struts标签的公共特征**: - **自动区分范围**:标签在查找对象时会自动遍历页面、请求、会话和应用程序范围。 - **...

    struts标签详解

    Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 HTML 标签 : 用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 ...Nested标签: 增强对其他的Struts 标签的嵌套使用的能力

    struts1的标签

    5. **Nested标签库**: Nested库增强了其他Struts标签的嵌套功能,使得在复杂结构的数据模型中使用标签更加方便。例如,可以嵌套`&lt;nested:property&gt;`来处理多层属性的访问。 在使用Struts1标签时,有几个共同的...

    struts自定义标签详解

    接下来,Nested Tags 是在Bean、HTML和Logic Tags基础上的扩展,允许标签之间的嵌套,提供更复杂的结构。这对于处理复杂的数据模型和视图很有帮助。 最后,Tiles Tags 用于创建可重用的页面组件,即tiles,它们可以...

    Struts配置及标签库详解

    4. `struts-nested.tld`:Nested标签库,用于处理嵌套属性,通常与Tiles框架一起使用,使得在JSP页面中可以方便地访问多层嵌套的Bean属性。 了解这些标签库后,开发人员可以更高效地构建视图层,减少Java代码在JSP...

    struts1标签.docstruts1标签.docstruts1标签.doc

    5. Nested标签库:增强了其他Struts标签的嵌套能力,允许更复杂的数据结构的表示。 在使用Struts1标签时,有一些公共特性需要注意,如`styleId`用于指定自定义标签的脚本变量名,`name`和`scope`分别用于查找和定义...

    struts标签-手册.chm

    Structs - 标签库(HTML)- - Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 标签库 说明 HTML 标签 用来创建能够和Struts ... Nested 标签 增强对其他的Struts 标签的嵌套使用的能力

    struts标签详解 (实例 很详细(war))

    Nested标签库是Struts的一个扩展,专门处理复杂的嵌套数据结构。`&lt;nested:write&gt;`和`&lt;nested:writeNesting&gt;`标签用于在JSP页面上显示和操作这些嵌套的数据。 8. `logic-present.jsp`: 这个文件可能展示了如何...

    struts标签中文手册,struts标签中文手册,struts标签中文手册

    5. **nested标签**:在处理复杂的对象结构时,nested标签库可以帮助我们更方便地访问嵌套属性。例如,`&lt;nested:property&gt;`标签可以让我们直接访问和操作对象的深层属性。 6. **xhtml标签**:这是Struts 2引入的新...

    JSTL的各种标签文件和struts的标签文件,带strtus.jar包

    JSTL的各种标签文件和struts的标签文件,带strtus.jar包c-1_0.tld,c-1_0-rt.tld,c.tld,fmt-1_0.tld,fmt-1_0-rt.tld,fmt.tld,fn.tld,permittedTaglibs.tldscriptfree.tld,sql-1_0.tld,sql-1_0-rt.tld,sql....

    struts1标签中文详解

    - Nested标签增强了其他Struts标签的嵌套能力,使得在复杂的数据结构中操作变得更加方便。 标签的公共特性,如`styleId`定义自定义标签的脚本变量名,`name`和`property`用于访问Bean,`scope`定义Bean的查找范围...

    struts标签库手册(chm格式)

    5. **nested标签**:当处理嵌套的JavaBean或复杂对象时,nested标签库提供了一种解决方式,例如`&lt;nested:property&gt;`可以深入到对象的嵌套属性。 6. **display标签**:displaytag库提供了一套标签,用于创建复杂的...

    JSP Struts之HTML标签库详解

    5. **Nested标签库**:这个库增强了其他Struts标签的嵌套能力,使得在复杂表单和布局中使用Struts标签更加方便。 Struts标签库的一个重要特性是它们支持属性的嵌套引用,这意味着可以使用`.`来访问对象的深层属性,...

    Struts标签库 ppt教程

    **Nested标签库**增强了对其他Struts标签的嵌套使用能力,这在处理复杂页面结构时非常有用。 **Tiles标签库**则是为了创建复合式的网页,允许开发者将多个组件组合成一个完整的页面,提高了页面布局的灵活性和可...

    struts框架与标签.doc

    Struts 1.1引入了Nested Tag,使得在JSP中处理嵌套对象变得更加简单。随着时间的推移,Struts框架不断演进,后续版本增加了更多功能和改进,如Struts 2引入了更强大的标签库和拦截器机制,以及更灵活的配置方式。 ...

Global site tag (gtag.js) - Google Analytics