参数的传递,此例子为方便学习只从MyJsp3.jsp界面中传到Myjsp4.jsp中显示。就目前为止,个人接触的数据交换大概有两种情况:一是从jsp页面中,提交表单给Servlet,Servlet实例化JavaBean,并与数据库交互,然后将所得的结果传回jsp页面;二是直接调用Servlet与数据库交互,取出数据,将数据(参数)传回jsp界面。 此处所说的Servlet在struts中则是Action部分的操作了。
而无论是从jsp页面到jsp页面,还是Servlet(Action)到jsp页面,个人觉得其传参数(数据)的原理是一样的。都是通过request,session。。。来传递。现把相关标签代码帖下:
<MyJsp3.jsp>
- <body>
- 这是第三个JSP界面!<br>
- <!--page使用的是绝对路径-->
-
<html:linkpage="/MyJsp4.jsp">链接</html:link><br>
- <%
-
-
ArrayListlist=newArrayList();
-
list.add("杨龙");
-
list.add("好孩子");
-
list.add("goodbye");
-
session.setAttribute("boys",list);
-
-
-
ArrayListstus=newArrayList();
-
Studentstu1=newStudent();stu1.setStuId("999");stus.add(stu1);
-
Studentstu2=newStudent();stu2.setStuId("888");stus.add(stu2);
-
Studentstu3=newStudent();stu3.setStuId("777");stus.add(stu3);
-
session.setAttribute("stus",stus);
-
-
-
Studentstudent=newStudent();
-
ArrayListmyList=newArrayList();
-
myList.add("1596475");
-
myList.add("1586475");
- student.setList(myList);
-
session.setAttribute("student",student);
-
-
-
HashMaphm=newHashMap();
-
hm.put("param1","0001");
-
hm.put("param2","002");
-
hm.put("param3","003");
-
session.setAttribute("paramList",hm);
- %>
- </body>
<MyJsp4.jsp>
- <body>
- 这是第四个JSP界面!<hr>
- 简单的集合遍历:
-
<logic:iterateid="boy"name="boys">
-
<bean:writename="boy"/>
- </logic:iterate><hr>
- 集合里面含有JavaBean,遍历:
-
<logic:iterateid="stu"name="stus">
-
<bean:writename="stu"property="stuId"/><!--表示遍历的是JavaBean里面的stuId属性-->
- </logic:iterate><hr>
-
- JavaBean里面含有集合的遍历(遍历集合)
-
<logic:iterateid="stu"name="student"property="list"><!--表示遍历的是JavaBean里面的集合-->
-
<bean:writename="stu"/>
- </logic:iterate><hr>
-
- HashMap的遍历(包括key和value)
-
<logic:iterateid="element"name="paramList"><!--遍历每个元素-->
-
<bean:writename="element"property="key"/><!--遍历key-->
-
<bean:writename="element"property="value"/>
- </logic:iterate>
- </body>
Student类的属性如上篇笔记所示。
分享到:
相关推荐
4. **ActionForm**:这是Struts中用于传递请求参数到Action的类,通常包含表单字段的属性和验证逻辑。购物系统可能包含用户登录、商品浏览、购物车添加等表单,每个都有对应的ActionForm。 5. **国际化与本地化**:...
在Struts中,JSP页面通常使用Struts标签库,如logic、bean和html标签,以增强可维护性和可读性。 7. **数据库交互**:为了存储和检索餐具配送的相关信息,系统可能使用了数据库。这可能涉及到SQL查询和JDBC(Java ...
- **易测试性**:Struts2的设计考虑到了单元测试的需求,使得Action和Service层更容易进行单元测试。 - **模块化**:通过插件化的设计,允许开发者根据实际需求选择性地加载所需的功能模块。 - **惯例重于配置**:...
- `struts2-interceptor-plugin`: 包含了一系列预定义的拦截器,如`params`拦截器负责从请求中获取参数并注入到Action,`i18n`拦截器处理国际化,`validation`拦截器进行表单验证。 4. **结果类型包(result types...
本篇文章将探讨如何在Struts2中实现自定义分页标签,这是一项非常实用的功能,尤其对于处理大量数据展示时,能显著提高用户体验。我们将深入源码,了解其工作原理,并提供一个自定义分页标签的实现过程。 首先,...
- `@Param`:用于传递参数,可以避免使用占位符`#{}`。 使用SSM注解式框架的好处在于: - 减少XML配置,提高开发效率。 - 更好的代码可读性和可维护性,注解能直接在代码中看到组件的作用。 - 自动化依赖注入,...
4. JSP和ActionForm:掌握如何在JSP中使用Struts标签与ActionForm进行数据传递。 5. 请求处理:理解Struts如何解析请求参数,调用对应的Action执行业务逻辑,并将结果转发到指定的视图。 6. 错误处理和国际化:了解...
- 在JSP中使用Struts标签库进行页面交互。 - 实现MVC架构,理解各部分职责。 - 处理HTTP请求和响应。 - 测试和调试Struts应用。 此项目对于初学者来说是一次宝贵的实践经验,可以帮助他们更深入地理解和应用Struts...
- JSP页面作为视图,通过Struts标签与ActionForm数据绑定,展示给用户。 - 使用EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)增强页面的可读性和可维护性。 6. **国际化与本地化** ...
4. **ActionContext**:在不依赖 Struts 1.3 的情况下,我们可以利用 `ActionContext` 来传递请求上下文中的信息,例如分页参数可以从请求中获取,然后传递给自定义标签。 5. **标签库(TLD)**:为了使用自定义...
在JSP中,我们可以使用Struts2的标签来创建一个链接,这个标签可以接受一个Action方法作为href属性,同时可以通过params属性传递参数: ```jsp Click Here ``` 在这个例子中,`myAction`是Action的名称,`...
它们可以封装用户输入,并在请求处理过程中作为参数传递。在Struts应用中,你需要定义对应的Form Bean类,与JSP页面上的表单元素相对应。 5. **JSP页面**:在"web"目录下,你将找到JSP文件,它们是用户界面的一部分...
Struts标签库是Java开发Web应用时常用的一个组件,它为开发者提供了丰富的JSP标签,以简化页面逻辑,增强可维护性和减少代码耦合。在Struts框架中,标签库主要分为两大类:Bean标签和Html标签。 1. **Bean标签**: ...
- 设置当前页参数:通过HTTP请求参数传递当前页数。 - 构造查询条件:在DAO层,根据当前页和每页记录数构造分页SQL或HQL(Hibernate查询语言)。 - 执行查询:使用Hibernate Session执行分页查询。 - 返回结果:...
在探讨Struts2与Struts1的区别时,我们需深入理解这两个框架的设计理念、架构模式以及它们在实际应用中的表现差异。以下将从多个角度详细分析这两种流行Java Web框架的不同之处。 ### 1. **Action类的区别** #### ...
ActionForm用于封装请求参数,Action则执行业务逻辑,最后将结果传递给视图。 2. **struts-tiles**: Tiles是Struts的一个扩展,提供了页面布局和组合功能。通过定义模板(Tiles Definition),可以创建可重用的页面...
12. **Struts 2**:作为Struts的后续版本,Struts 2引入了更多现代Web开发的概念,如OGNL(Object-Graph Navigation Language)表达式语言,提供了更强大的动作和结果配置,以及更丰富的标签库。 在开发过程中,...
- `<s:param>`:为其他标签传递参数。 4. **OGNL(Object-Graph Navigation Language)表达式**:OGNL是Struts2中的表达式语言,用于访问和操作对象。错误选项B表示的是在堆栈中的application.name,而非正确的...
- 使用JSP和Struts标签库创建视图页面。 - 运行项目,测试各种功能,如登录、注册、查询等。 通过学习Struts,开发者能够更高效地构建Web应用,减少重复工作,提升代码的可读性和可维护性。Struts实例和入门资料,...