`
叶落不在秋
  • 浏览: 9685 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

struts1 nested标签

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

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

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

    //其他代码     
     <html:form action="/PersonAction">     
     <nested:nest property="person">     
         <nested:message key="use_nested.jsp.form.name"/>     
         <nested:text property="name" size="18"/><br/>     
         <nested:message key="use_nested.jsp.form.sex"/>     
         <nested:text property="sex" size="18" /><br/>     
     nested:nest>     
     <html:submit>     
     <bean:message key="use_nested.jsp.form.submit"/>     
     html:submit>     
     html:form>     
    //其他代码 

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

结合 nested:writeNesting 后的.jsp 为:
xml 代码

    ///其他代码     
     <html:form action="/PersonAction">     
     <nested:nest property="person">     
        <nested:message key="use_nested.jsp.form.currentNesting"/>     
        <nested:writeNesting/><br/>     
        <nested:message key="use_nested.jsp.form.name"/>     
        <nested:text property="name" size="18"/><br/>     
        <nested:message key="use_nested.jsp.form.sex"/>     
        <nested:text property="sex" size="18" /><br/>     
        
        <nested:nest property="add">     
            <nested:message key="use_nested.jsp.form.currentNesting"/>     
            <nested:writeNesting/>     
            <nested:message key="use_nested.jsp.form.country"/>     
            <nested:text property="country" size="18"/><br/>     
            <nested:message key="use_nested.jsp.form.province"/>     
            <nested:text property="province" size="18"/><br/>     
         nested:nest>     
     nested:nest>     
     <html:submit>     
     <bean:message key="use_nested.jsp.form.submit"/>     
     html:submit>     
     html:form>     
    ///其他代码 

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

    //其他代码     
    <jsp:useBean id="PersonForm" type="nestedtag.PersonForm" scope="request" />     
    <nested:root name="PersonForm">     
       <nested:nest property="person">     
       <nested:message key="use_nested.jsp.form.name"/>     
       <nested:write property="name"/><br/>     
       <nested:message key="use_nested.jsp.form.sex" />     
       <nested:write property="sex"/><br/>   
        
       <nested:nest property="add">     
           <nested:message key="use_nested.jsp.form.country"/>     
           <nested:write property="country"/><br/>     
           <nested:message key="use_nested.jsp.form.province"/>     
           <nested:write property="province"/><br/>     
       nested:nest>     
       nested:nest>     
    nested:root>     
    //其他代码 

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

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

    //其他代码     
    <html:form action="/PersonAction">     
    <bean:message key="use_nested.jsp.form.name"/>     
    <html:text property="person.name" size="18"/><br/>     
    <bean:message key="use_nested.jsp.form.sex"/>     
    <html:text property="person.sex" size="18" /><br/>     
       
    <bean:message key="use_nested.jsp.form.country"/>     
    <html:text property="person.add.country" size="18"/><br/>     
    <bean:message key="use_nested.jsp.form.province"/>     
    <html:text property="person.add.province" size="18"/><br/>     
       
    <html:submit>     
    <bean:message key="use_nested.jsp.form.submit"/>     
    html:submit>     
    html:form>     
    //其他代码 
分享到:
评论

相关推荐

    struts1标签库详解

    Struts1 标签库详解 Struts1 标签库是 Apache Jakarta 的一个著名的开源项目,目标是为构建基于 Java 的 web 应用程序提供一个框架。Struts 提供了非常多的标签,依据功能和使用习惯的不同被分到了五个标签库中:...

    struts1的标签

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

    struts标签 struts标签 struts标签

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

    Struts1-标签

    Nested标签库用于增强其他Struts标签的嵌套使用能力。通过嵌套标签,可以实现复杂的页面布局和逻辑。嵌套标签的使用方式灵活,可以大大简化JSP页面的复杂度。 7. 标签的公共属性: 标签库中的标签有一些共同的属性...

    JSP Struts之HTML标签库详解

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

    Struts配置及标签库详解

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

    struts1五大标签库

    Nested标签库是为了支持嵌套形式的HTML元素而设计的,特别是在处理复杂表单时很有用。例如,`&lt;nested:property&gt;`标签允许在表单中处理嵌套的JavaBean属性。这个库使得在Struts1中处理层次结构的数据变得更加简单。 ...

    struts2标签和解释及其说明

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

    struts1标签中文详解

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

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

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

    struts标签详解

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

    struts框架与标签.doc

    1. **Struts压缩包内容**: - 包含了核心库、标签库、示例应用和其他支持文件。 - 核心库包括ActionServlet、Action类、ActionForm、ActionMapping等关键组件。 2. **Struts体系结构**(MVC): - **模型(Model)...

    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....

    JSP Struts的HTML标签库详解

    5. **Nested标签库**:提供了一种增强的嵌套功能,使得在HTML标签库中的标签可以更好地互相嵌套和操作,提高复杂表单的构建能力。 接下来,我们深入了解一下HTML标签库的一些常见标签和属性: - `&lt;html:html&gt;`:这...

    struts标签-手册.chm

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

    Struts1标签手册

    这篇指南主要聚焦在Bean、HTML和Logic这三个标签库,但同时也提醒读者,Tiles和Nested标签库也是Struts的重要组成部分,对于构建复杂的Web应用非常有用。开发者可以根据需求查阅Struts官方用户指南获取更多相关信息...

    struts1.x标签库详解

    Struts1.x 标签库详解 Struts1.x 标签库是 Apache Jakarta 项目的一部分,目标是为构建基于 Java 的 web 应用程序提供一个框架。Struts 提供了非常多的标签,依据功能和使用习惯的不同被分到了五个标签库中:Bean ...

    struts标签-手册

    5. **struts-nested标签**:这个标签库允许在嵌套的对象模型中使用JSP标准标签库(JSTL)和Struts标签。例如,`&lt;nested:property&gt;`允许你在复杂对象结构中引用属性。 6. **Struts-EL标签**:自Struts 2引入以来,...

Global site tag (gtag.js) - Google Analytics