`

Struts 1.x | <bean> 标签库

阅读更多

   Bean标签库


           1)Bean标签库中的标签可以访问已经存在的javaBean以及它的属性,还可以定义新的javaBean,把它存放在

              指定的范围内。还用于输出国际化信息
           2)要使用bean标签库,需要加入
               <%@ taglib uri="http://struts.apache.org/tags-bean"  prefix="bean" %>标签库
            

       <bean:parameter>标签


                 A:这个标签主要的功能是用于将请求的参数(get提交与post提交)封装成一个java脚本可以
                   访问的变量
                 B:<bean:parameter id="a" name="id"/>
                    id:要page范围中的变量的名。一般用id表示
                    name:属性是参数名
                    上述的代码表示把请求参数名为id的值保存到page范围中变量a中去
                   比如:
                    源页面:
                     < html:link href = "/StrutsTagDemo/parameter_2.jsp?custId=1127"/>
                    接受页面:
                    < bean:parameter id = "custId" name = "custId" />
                    < bean:write name = "custId" />
                    会输出1127
                 C:<bean:parameter>相当于一个java脚本
                     <bean:parameter id = "custId" name = "custId" /> 相当于
                       <%
                              String custId=request.getParameter("custId")
                       %>
                    而< bean:write name = "custId" /> 相当于
                      <%
                             out.print("custid")
                      %>
                  D:<bean:parameter id = "custId" name = "custId" />把值取过来之后,完全
                    可以java脚本进行访问
                    比如:
                      <bean:parameter id = "custId" name = "custId" />
                       <%
                             custId=custId+"abcd"//直接对custId进行处理
                       %>               

 
       <bean:message key="index.passWord"/>

 
                        A:<bean:message>是用在国际化功能中输出国际化消息的
                        B:<bean:message key="index.passWord"/> 其中的key与国际化资源文件对应
                        C:实现国际化的步骤:
                          1)在web应用程序的class文件夹(一定要在此文件夹)下面创建一个resource包字可以随便取)
                          2)在resource包下面创建两个文件,文件名固定不能修改.
                             格式形如:键=值
                             application_en.properties  其中的内容为(代表英文)
                            ==========================================
                                 index.title=On Line  NetBook Manager
                                 index.userName=userName
                                 index.passWord=password
                                 index.submit=submit
                                 index.reset=reset
                          ==========================================
                           application_zh.properties 其中的内容为(代表中文)

                                 index.title=在线图书管理系统
                                 index.userName=用户名
                                 index.passWord=密码
                                 index.submit=提交
                                 index.reset=重置

                          3)如果是中文为了避免乱码。要通过如下命令进行转换
                                 native2ascii -encoding gb2312 源文件 
                            可直接在cmd模式下,通过拖曳的方法得到中文文件对应的编码
                            index.title=\u5728\u7ebf\u56fe\u4e66\u7ba1\u7406\u7cfb\u7edf
                            index.userName=\u7528\u6237\u540d
                            index.passWord=\u5bc6  \u7801
                            index.submit=\u63d0 \u4ea4
                            index.reset=\u91cd \u7f6e复制后直接付盖application_zh.properties
                         4)配置struts-config.xml文件,在<message-resources>节点下配置属性
                            <message-resources parameter="resource.application" />
                            注意这里面的resource表示在class文件夹的resource下面有application
                            对应的两个中英文资源文件。
                         5)在jsp页面里面可以通过
                             <bean:message key="index.passWord"/>来从资源文件里面获取
                         6)可以在IE里面的工具-->internet选项-->常规--->语言
                           在里面加入"中文[zh]"与"英文[en]"通过改变顺序会发现jsp页面会自动加载
                           对应的中英文资源文件
                         7)如果失败,请注意重新启动tomcat之后, 再试验
                         8)如果想实现动态中英文转化,可以通过两个超级连接,连到一个action里面
                           进行处理
                            <a href="Action.do?en=0">英文</a>
                            <a href="Action.do?en=1">中文</a>  


          =======================Actioin代码======================
              import org.apache.struts.Globals; //注意导入以下包
              import java.util.Locale;
              int en=Integer.parseInt(request.getParameter("en"));

              if (en==0) {
                   request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.ENGLISH);
              } else {
                  request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
              }
              return mapping.findForward("index"); 

    

   <bean:writer>标签


             1)用来输出存放在四种范围内的数据
             2)格式:<bean:write name="要输出的四种范围内的变量名"/>
             3)可以输出普通的变量
                     <%
                          String uid="chen";
                          equest.setAttribute("uid",uid); //如果不把uid放入request范围内,则bean:write不能输出
                    %>                
                     <bean:write name="uid"/> 相当于${uid}
             4)输出JavaBean的值
               格式:bean:write name="已经存放在四种范围内的javabean的变量名"

                                          property="要输出 的JavaBean的属性"/>
                 <%
                     worker d=new worker();
                     d.setId("w1");
                     d.setName("chan");
                     request.setAttribute("d",d);
                 %>
                 <bean:write name="d" property="name"/>        相当于${d.name}
                  所以如果要输出javaBean的内容,一般直接用EL就行了.
                 举例:让用户输入一个工号,检验该工号在不在数据库中,如果在下面的
                       输入框中显示对应的详细资料。如果没有则输出找不到该职工,如果找到
                       职工,则可以修改职工内容
        ==========================jsp页面=========================
            ${msg} 用来显示出错误
            <html:form  action="修改职工的Action.do"> //   
                   工号:<html:text property="id" value="${emp.id}"/>
                    <html:button property="check"

                                          onclick="window.location='检查是否存在的.do?id='+表单名(会自动成为修改职工

                                                                                                     Action对应的ActionForm名).id.value"/>
                    姓名:<html:text property="name" value="${emp.name}"/><br>
                    职位:<html:text property="job" value="${emp.job}"/>
                   html:submit>提交</html:submit><html:reset>重置</html:reset>
                  </html:form>
        =====================检查是否存在的Action========================
         int id=Integer.parseInt(request.getParameter("id"));
         emp instance=emps.getEmpById(id);
         if (instance==null) {   
                       request.setAttribute("msg","<script>alert('找不到该职工')</script>"); 
                       不能使用out.print("<script>alert('找不到该职工')</script>")原因是该脚本
                       为客户端脚本,而mapping.findForward("show")为服务器脚本先于它执行,解决
                       的方法是把数据传到show.jsp中,再它的页面中提示
          }          
         request.setAttribute("emp", instance);
         return mapping.findForward("show"); 

分享到:
评论

相关推荐

    Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00

    在Struts配置文件(`struts-config.xml`)中,可以通过`&lt;plug-in&gt;`标签来启用Spring插件,从而实现Struts与Spring之间的紧密集成。 ```xml &lt;plug-in className="org.apache.struts.tiles.StrutsTilesFactory"&gt; &lt;!-...

    对struts1.x与struts2.x的区别的总结

    - **Struts1.x** 视图通常使用JSP,而模型数据通过ValueStack传递,需要使用Struts标签库来访问。 - **Struts2.x** 支持多种视图技术,如JSP、FreeMarker、Velocity等,且可以直接通过OGNL表达式在视图中访问数据...

    Struts1.x常用的开发包,需要学习struts1.x朋友可以下载

    5. **JSP和Tags**:Struts1.x提供了丰富的JSP标签库,如logic标签(条件判断)、bean标签(对象操作)、html标签(表单元素)等,简化了视图层的开发,使得业务逻辑和展示逻辑得以分离。 6. **国际化与本地化**:...

    struts2集成spring3

    这可以通过`&lt;package&gt;`标签中的`spring-plugin`配置完成。 ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;interceptors&gt; &lt;interceptor name="spring" class="org.apache.struts2....

    struts的总结(struts1.x)

    Struts 1.x 提供了丰富的标签库以及配置文件支持,使开发者能够快速构建企业级应用。 #### 二、Struts 配置文件详解 **1. `struts-config.xml` 文件解析** `struts-config.xml` 是 Struts 1.x 中的核心配置文件,...

    struts1.x 最简洁国际化 源代码

    - Struts1提供了一套丰富的JSP标签库,如`&lt;bean:message&gt;`和`&lt;html:error&gt;`,这些标签可以方便地与资源包中的消息对应,动态显示本地化的文本。 5. **配置文件**: - 在`struts-config.xml`中,可以通过`message-...

    java Struts 1.x 框架 Web 开发

    5. **JSP Tag Library**:Struts 提供了一系列自定义JSP标签库,如logic、bean、html等,简化了视图层的开发。例如,`&lt;s:form&gt;`用于创建表单,`&lt;s:textfield&gt;`用于创建输入字段,`&lt;s:submit&gt;`用于提交表单。 6. **...

    Struts1.x标签库

    Struts1.x标签库是Apache Jakarta Struts框架的一部分,它为开发Java Web应用程序提供了一组丰富的标签,使得开发者能够更方便地处理常见的Web界面任务。这些标签被组织成五个主要的标签库,分别是Bean Tags、...

    struts1.x apps 所有最新的Struts1.x项目应用

    本资源集合包含了所有最新的Struts1.x项目应用,为开发者提供了一个宝贵的参考资料库。 Struts1.x的核心组件包括: 1. **ActionServlet**:这是Struts框架的核心,作为Servlet拦截请求,根据配置文件(struts-...

    struts1.x_Tags

    - **bean标签库**: 用于操作JavaBean对象,如`&lt;bean:define&gt;`、`&lt;bean:write&gt;`等。 - **logic标签库**: 提供逻辑控制,如`&lt;logic:equal&gt;`、`&lt;logic:notEqual&gt;`等,用于条件判断和循环。 - **nested标签库**: 支持...

    html版struts1.X标签详解-帮助文档

    2. **Bean标签**:Bean标签库用于处理JavaBean对象。例如,`&lt;bean:define&gt;`用于在JSP页面中定义一个变量,`&lt;bean:write&gt;`用于输出Bean的属性值。 3. **Logic标签**:Logic标签库提供了条件判断和循环控制功能。比如...

    struts1.x标签详解

    ### Struts1.x 标签详解 #### 一、引言 Struts 是 Apache Jakarta 的一个著名开源项目,旨在为构建基于 Java 的 Web 应用程序提供一个强大的框架。Struts 提供了大量的标签来帮助开发者简化开发过程。本文将详细...

    struts1.x标签库详解

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

    Struts1.x登录示例

    Struts1.x是一个经典的Java Web框架,它在2004年由Apache软件基金会发布,用于构建基于MVC(Model-View-Controller)模式的Web应用程序。这个“Struts1.x登录示例”是为了帮助开发者理解如何在Struts1.x框架下实现...

    经典的struts1.x的标签

    在Struts1.x中,标签库是视图层的重要组成部分,极大地简化了页面的开发工作。 Struts1.x的标签库主要包括以下几个部分: 1. **html标签**:这是最基本的标签库,用于创建HTML表单元素。例如,`&lt;html:text&gt;`标签...

    struts2标签大全详解

    1. `&lt;s:bean&gt;`:类似Struts1.x中的JavaBean标签,用于获取或设置JavaBean的属性。 C部分: 1. `&lt;s:checkbox&gt;`:创建复选框,可以绑定值。 2. `&lt;s:checkboxlist&gt;`:创建复选框列表,用户可选择多个值。 3. `&lt;s:...

    struts2 标签库 帮助文档

    1. &lt;s:bean name=""&gt;&lt;/s:bean&gt;-----类似于struts1.x中的,JavaBean的值 C: 1. &lt;s:checkbox&gt;&lt;/s:checkbox&gt;-----复选框 2. &lt;s:checkboxlist list=""&gt;&lt;/s:checkboxlist&gt;-----多选框 3. &lt;s:combobox list=""&gt;&lt;/s:...

    Struts2标签应用.

    1. `&lt;s:bean&gt;`:类似于Struts1.x中的JavaBean标签,用于获取或设置JavaBean的属性值。 C部分: 1. `&lt;s:checkbox&gt;`:创建复选框,可以绑定数据到Action的属性。 2. `&lt;s:checkboxlist&gt;`:用于创建多个复选框,通常...

    Struts2标签库详解[1].doc

    7. `&lt;s:bean&gt;`:类似于Struts1.x中的JavaBean标签,用于处理JavaBean对象。 8. `&lt;s:checkbox&gt;`:创建复选框,允许用户选择多个选项。 9. `&lt;s:checkboxlist&gt;`:用于创建一组复选框,通常与列表或数组配合使用。 10...

    struts2.0标签库简介

    `&lt;s:bean&gt;` - Bean标签 - 类似于Struts1.x的`&lt;bean&gt;`标签,用于创建和管理JavaBean实例。 #### 7. `&lt;s:checkbox&gt;` 和 `&lt;s:checkboxlist&gt;` - 提供单选框和复选框的创建,支持数据绑定。 #### 8. `&lt;s:combobox&gt;` ...

Global site tag (gtag.js) - Google Analytics