`
swingboat
  • 浏览: 61891 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

struts及jstl使用问题集(一)

    博客分类:
  • java
阅读更多

1、ActionForm中的属性必须在<html:form></html:form>块中输出
struts-config.xml文件配置:
  <form-beans>
    <form-bean name="TestForm" type="yhp.test.struts.TestForm" />
  </form-beans>
<action-mappings>
    <action input="/test/teststruts.jsp" name="TestForm" path="/test/teststruts" scope="request" type="yhp.test.struts.TestAction" validate="false">
      <forward name="success" path="/test/teststruts.jsp" />
    </action> 
</action-mappings>
TestForm.java文件(两个属性):
package yhp.test.struts;
import org.apache.struts.action.*;
public class TestForm extends ActionForm{
    private String message;
    private String data;
    public String getData() {
        return data;
    }
    public void setData(String data) {
        this.data = data;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}
TestAction.java文件:
public ActionForward execute(ActionMapping actionMapping,
            ActionForm actionForm, HttpServletRequest httpServletRequest,
            HttpServletResponse httpServletResponse) throws Exception {
        if(actionForm instanceof TestForm){
         TestForm form=(TestForm)actionForm;
         form.setMessage("Test Struts!");
         form.setData("Return data is YHP");
        }
        return actionMapping.findForward("success");       
    }
teststruts.jsp文件:
<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%
String contextPath = request.getContextPath();
response.setLocale(java.util.Locale.CHINA);
%>
<html>
 <head>
 </head> 
<body>
<html:form action="/test/teststruts.do" styleId="formItem" method="post">
   <html:text  property="message"/><br>
   <html:text  property="data"/><br>
</html:form>
</body>
</html>
说明:没有红色部分代码,后台会报出Cannot find bean org.apache.struts.taglib.html.BEAN in any scope的错误信息。这样说明struts中ActionForm的数据是基于html中对应form的数据。
2、不利用struts标签输出ActionForm的属性值
<%@ page import="yhp.test.struts.TestForm"%>
<%
TestForm form=(TestForm)request.getAttribute("TestForm");//ActionForm类名
%>
<html>
 <head>
 </head> 
<body>
<html:form action="/test/teststruts.do" styleId="formItem" method="post">
   <html:text  property="message"/><br>
   <html:text  property="data"/><br>
 <%=form.getMessage()%><br>
</html:form>
</body>
</html>
3、通过JSTL输出ActionForm中的属性值
利用JSTL输出AcitonForm中的属性值:<c:out value="${TestForm.data}" /><br>
利用JSTL输出AcitonForm中的属性值:<c:out value="${requestScope.TestForm.data}" /><br> 
红色的字是ActionForm类名,两句的结果是一样的
说明:struts把ActionForm写入了requestScope中,类名作为requestScope的名字。
即:httpServletRequest.setAttribute("TestForm",actionForm);
<c:out value="${requestScope.TestForm.data}" />  也就是输出一个bean的属性值。

分享到:
评论
2 楼 tacyuuhon 2013-01-08  
说明:struts把ActionForm写入了requestScope中,类名作为requestScope的名字。
即:httpServletRequest.setAttribute("TestForm",actionForm);
<c:out value="${requestScope.TestForm.data}" />  也就是输出一个bean的属性值。

----------------------------
↑一派胡言
1 楼 tacyuuhon 2013-01-08  
说明:struts把ActionForm写入了requestScope中,类名作为requestScope的名字。
即:httpServletRequest.setAttribute("TestForm",actionForm);
<c:out value="${requestScope.TestForm.data}" />  也就是输出一个bean的属性值。

相关推荐

    struts——jstl 扎包

    4. **设计JSP页面**:在视图层使用Struts的标签和JSTL的标签共同构建动态页面,如使用`&lt;s:form&gt;`和`&lt;s:submit&gt;`处理表单,用JSTL标签处理逻辑和数据展示。 **总结** Struts与JSTL的结合,使得Java Web开发更加高效...

    struts2、JSTL、Spring、JS、JSP标签大全

    2. **JSTL(JavaServer Pages Standard Tag Library)**:JSTL是一组用于JSP的标签库,旨在减少在页面中使用Java脚本。它包含多个核心标签集,如fmt(格式化标签)、fn(函数标签)、sql(SQL标签)、xml(XML处理...

    运用JSP+Struts+JSTL技术的MVC架构,数据库采用SQL Server留言本

    本项目“运用JSP+Struts+JSTL技术的MVC架构,数据库采用SQL Server留言本”就是一个典型的MVC应用实例,它结合了多种技术来创建一个基于Web的留言系统。 首先,JSP(JavaServer Pages)是Java平台上的动态网页技术...

    JSTL_BeanUtils_Struts相关资料

    首先,JSTL是一个标准的标签库,它为JavaServer Pages(JSP)提供了丰富的标签集,用于简化JSP页面的编写。JSTL的主要目标是减少JSP页面中的脚本元素,提高代码的可读性和可维护性。JSTL包含多个核心标签,如迭代、...

    JSTL中文帮助文档

    - 在 MVC 框架中,如 Struts、Spring MVC 或 JSF,JSTL 可作为视图层的一部分。 通过 JSTL 中文帮助文档,开发者可以详细了解每个标签的功能、用法和示例,从而更好地掌握 JSTL,提升开发效率。学习和使用 JSTL,...

    数据库jar包文件,jstl,struts包

    数据库jar包文件、jstl和struts包是Java Web开发中的重要组成部分,它们在构建高效、可扩展的Web应用程序中扮演着关键角色。这里我们将深入探讨这些组件以及它们在实际应用中的作用。 首先,MySQL和SQLServer是两种...

    jstl-1.1.2标签库

    JSTL 1.1.2是该库的一个版本,它包含了多种实用的标签,广泛应用于Web应用开发,特别是与Struts等MVC框架配合使用时。 **JSTL的主要组成部分:** 1. **Core(核心)标签库**:提供基本的控制流和数据处理功能,如...

    JSTL API帮助文档

    7. **JSTL与Struts、Spring MVC等框架的集成** JSTL可以与其他MVC框架结合使用,提供更丰富的视图处理能力。 8. **最佳实践** - 保持JSP页面轻量级,尽量避免在页面中写入过多的Java代码。 - 使用EL表达式减少...

    fmt标签的使用,对struts开发的程序员是一个很好的帮助

    幸运的是,Java Standard Tag Library (JSTL) 中的`fmt`标签库提供了一套强大的工具集,能够显著提高Struts开发人员的工作效率,同时也提升了代码的可读性和维护性。 #### JSTL与`fmt`标签库:简化Struts开发 JSTL...

    struts2.0 经典书籍 源码 标签学习合集

    这个压缩包文件包含了关于Struts2.0的经典书籍、源码以及标签的学习资源,对于想要深入理解和使用Struts2.0的人来说,是一份非常宝贵的资料。 首先,让我们从"经典书籍"入手。Struts2.0的书籍通常会涵盖以下知识点...

    pager-taglib_struts2 安装使用

    **Struts2中的Pager Taglib安装与使用指南** 在Java Web开发中,Struts2框架以其强大的MVC架构和丰富的插件库深受开发者喜爱。Pager Taglib是Struts2的一个重要组成部分,它提供了分页功能,使我们能够轻松地处理...

    java javaee struts2 spring hibernate免费学习视频教程

    根据提供的标题、描述、标签及部分内容,我们可以总结出以下与Java、Java EE、Struts2、Spring、Hibernate相关的学习知识点: ### Java基础 - **Java语言特性**:介绍Java的基本语法,包括变量、数据类型、流程...

    jstl的jar包

    在Struts框架中,JSTL常与Struts的Action标签库结合使用,以减少JSP页面上的Java脚本代码,提高代码的可读性和维护性。导入"jstl的jar包"通常意味着开发者正在构建一个基于Struts的Web应用,他们希望利用JSTL提供的...

    struts+ibatis 完整sample,可直接运行

    6. JSP视图页面:使用Struts标签库(struts-tiles或struts2-tags)显示数据,或者通过EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)来访问Action传递过来的数据。 这个示例项目可以...

    struts2+jdbc+jsp增删改查

    8. **视图展示**:JSP页面会显示从数据库获取的学生信息,可能使用JSTL(JavaServer Pages Standard Tag Library)或其他标签库来简化页面代码,如`&lt;c:forEach&gt;`循环遍历学生列表,`&lt;s:textfield&gt;`创建表单输入元素...

    struts学习笔记

    总之,Struts框架结合JSTL和EL表达式,为Java Web开发提供了强大且易用的工具集,使开发者能够更加专注于业务逻辑,而非底层的表示层细节。通过熟练掌握这些工具,初学者可以快速提升Web应用开发能力。

    jstl详细讲解

    总之,JSTL作为JavaWeb开发中的一个重要工具,其丰富的标签集为开发者提供了高效、简洁的页面编程方式,提升了代码的可读性和可维护性。深入理解和熟练掌握JSTL,对于提升JavaWeb开发的技能水平具有重要意义。

    Struts 文章系统

    这个系统的核心特点是其强大的功能集和对多种语言的支持,为用户提供了一个灵活且高效的平台来管理和发布内容。 首先,让我们深入了解一下Struts框架。Struts是Apache软件基金会的一个开源项目,它是一个MVC(Model...

    struts2增删改查

    Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中广泛应用,用于构建可维护、可扩展的Web应用程序。Oracle则是一款高性能的关系型数据库管理系统,常用于大型企业级应用。本教程将围绕Struts2与...

Global site tag (gtag.js) - Google Analytics