`
hao861002
  • 浏览: 87409 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

struts复习第四天

阅读更多


Struts的标签

bean,html,logic标签库,在Struts的标签也支持JSP2.0的EL表达式。

bean标签库
<bean:... >
bean标签库,是用来访为JavaBean的属性或者是为Bean的属性赋值,创建JavaBean,类似于JSP中的jsp:useBean动作的功能。
bean标签库中的标签中大部分都有以下的属性
id="xxx" 指定Bean的名字标识,Bean在被读出后将引用保存在以这个id命名的对象中,也就是在JSP中使用的变量的引用。
name="xxxx"指定要读取Bean的名字
property="xxxx"
scope="page|request|session|application"

资源读取标签
<bean:resource>读取资源文件
<bean:cookie>使用这个标签可以对Cookie进行操作
<bean:header>读取header信息

例:
<bean:resource id="indexpage" name="index.jsp"/>
<bean:write name="indexpage"/>

<bean:head id="head" name="user-agent"/>
<bean:write name="head"/>

<bean:cookie id="testcookie" name="/taglib/bean-cookie" value="emptyValue"/>
<%
 if(testcookie.getValue.equals("emptyValue")){
             javax.servlet.http.Cookie cook=new javax.servlet.http.Cookie("/taglib/bean-cookie","taglib cookie");
             cook.setComment("test");
             cook.setMaxAge(3600);
             response.addCookie(cook);
        }
%>

可以将资源写到页面的标签
<bean:write>将Bean的属性加入到输出流中
<bean:write name="xxx"/>name属性是要加入的资源,也就是先前在其他资源标签中的id属性定义的名字

<bean:define>定义变量
例:<bean:define id="test" value="test in Struts">
    <bean:write name="test"/>

<bean:message>读取消息,可以根据key读取消息。
例:
<bean:message key="org.test">

html标签库

<html:form>

对应html中的<form>,使用<html:form>会将表单中的属性自动封装成Form,他的action属性可以直接写struts的配置文件中的path


<html:text>、<html:password>、<html:textarea>、<html:hidden>、<html:submit>
<html:reset>、<html:checkbox>、<html:radio>、<html:select>、<html:option>
以上者写标签的使用是和html中的form相对应的。

<html:options>这个标签用来表示一组选择项
<%
   java.util.ArrayList list=new java.util.ArrayList();
   list.add(new org.apache.struts.util.LabelValueBean("show value","value"));
   list.add(new org.apache.struts.util.LabelValueBean("show value1","value1"));
   pageContext.setAttribute("vlauelist" list);
%>
<html:form action="xxx.do">
   <html:select property="test">
      <html:options collection="valuelist" property="value" labelProperty="label"/>
   </html:select>
</html:form>


Struts的Tiles框架

Tiles是一个框架,他实现了页面的复合视图,页面代码中不仅有数据,也有页面的布局格式。

要在基于Struts应用中使用Tiles框架,就要在struts-config.xml中配置
<plugin className="org.apache.struts.tiles.TilesPlugin">
  <set-property property="definintions-config" value="/WEB-INF/tiles-defs.xml">
  <!--定义tiles布局文件tiles-defs.xml-->
</plugin>

tiles的布局配置文件tiles-defs.xml

<tiles-definitions>
    <!-- 页面基本布局-->
    <definition name="pms_base" path="/common/pms_layout.jsp">
     <put name="title" value="pms title" />
        <put name="header" value="/common/header.jsp" />
        <put name="body"   value="some body page" />
        <put name="footer" value="/common/footer.jsp" />
    </definition>
   <!-- 其他页面定义-->
   <definition name="add" extends="pms_base">
        <put name="title" value="add" />
        <put name="body" value="/person_add.jsp" />
    </definition>
</tiles-definitions>

在struts-config.xml中要把forward的配置更改一下
<action path="/person/toadd"  type="alan.pms.action.PersonAction"
            name="personForm" scope="request"
            parameter="toAdd">
            <forward name="add" path="add"/>
</action>

这样就会使页面加上header.jsp和footer.jsp显示在配置好的页面中

在页面中使用tiles标签时,要引入标签库,<%@taglib uri="/WEB-INF/tiles.tld" prefix="tiles"%>

<tiles:insert page="xxx.jsp">
   <tiles:put name="header" value="header.jsp">
   <tiles:put name="footer" value="footer.jsp">
</tiles:insert>

在struts-config.xml中要把forward的配置更改一下
<action path="/person/toadd"  type="alan.pms.action.PersonAction"
            name="personForm" scope="request"
            parameter="toAdd">
            <forward name="add" path="add"/>
</action>

分享到:
评论

相关推荐

    struts2综合复习习题

    ### Struts2综合复习知识点详解 #### 一、Struts2标记库中迭代标签iterator的()方法是判断当前元素是否是第偶数个元素。 **答案解析:** - 正确答案为 **D.isEven**。 - Struts2中的`&lt;s:iterator&gt;`标签用于迭代...

    个人知识管理系统 Struts2.0 + Spring + Hibernate

    第四次:12小时 第五次:24小时 第六次:3 天 第七次:7 天 之后 :每15天 当然如果没有及时更新复习的话,下一次的复习更新时间会在上一次复习更新后顺延。 由于对页面样式了解不多,所以写出来的样式目前只在IE...

    struts2讲义_吴峻申

    第4章 另一Struts2核心技术:拦截器 47 4.1 拦截器在Struts2中的缺省应用 47 4.2 拦截器原理实现 50 4.3 在Struts2中配置自定义的拦截器 53 4.3.1 扩展拦截器接口的自定义拦截器配置 54 4.3.2 继承抽象拦截器的...

    Struts2.1权威指南光盘源代码第21章

    4. **拦截器(Interceptors)**:拦截器是Struts2的一个强大特性,用于在Action调用前后执行一些通用操作,如日志记录、权限检查、事务管理等。源码中可能会有自定义拦截器的实现。 5. **结果类型(Result Types)*...

    达内学习用的jdbc与struts笔记.pdf

    - 第四天:可能讨论了异常处理、国际化、Tiles框架集成等高级主题。 Struts框架的工作流程: - 用户通过浏览器发起请求。 - 请求被Servlet容器(如Tomcat)接收并转发给Struts的`ActionServlet`。 - `Action...

    个人信息管理系统Struts2 spring hibernate dwr

    第四次:12小时 第五次:24小时 第六次:3 天 第七次:7 天 之后 :每15天 当然如果没有及时更新复习的话,下一次的复习更新时间会在上一次复习更新后顺延。 在Ajax更新复习次数时通常都会第一次失败,再点一次就...

    个人知识管理系统 Struts2 + Spring + Hibernate

    第四次:12小时 第五次:24小时 第六次:3 天 第七次:7 天 之后 :每15天 当然如果没有及时更新复习的话,下一次的复习更新时间会在上一次复习更新后顺延。 由于对页面样式了解不多,所以写出来的样式目前只在IE...

    struts电子书1-8.rar

    1. **入门介绍**:这部分通常会介绍Struts1的基本概念,包括为什么需要Struts,它的核心架构,以及如何搭建第一个Struts项目。 2. **MVC模式**:Struts是MVC模式的一个实现,这一部分可能会详细解释模型、视图和...

    ssh期末复习题.doc

    SSH 期末复习题涉及到的主要知识点包括 Struts 2 框架、Hibernate ORM 和 Java Web 开发中的核心概念。以下是对这些知识点的详细说明: 1. **Struts 2**: - **基础类库**:构建 Struts 2 应用的基础类库包括 `...

    通用的在线考试系统(jsp+struts+hibernate+oracle).rar

    6. 成绩查询:考生可以查看自己的考试成绩及答题情况,便于自我评估和复习。 7. 数据分析:系统提供统计分析功能,帮助教师了解学生的学习情况,优化教学策略。 四、技术实现细节 1. 使用Struts的Action类处理...

    web框架考试复习重点

    5. **易于集成第三方框架**:Spring3与其他框架如Hibernate、Struts2等有着良好的集成性,降低了集成难度。 6. **简化Java EE API的使用**:Spring3对复杂的Java EE API进行了封装,降低了使用难度。 7. **优秀的...

    java面试复习总结.doc.pdf

    Java面试复习总结主要涵盖了几大框架的特性与比较,包括Tapestry、Struts、SpringMVC、Spring、Hibernate和MyBatis。以下是对这些框架的详细解释: 1. **Tapestry**: - Tapestry是一个前端MVC框架,结合了模板...

    JavaEE期末复习模拟题

    12. **MVC框架**:虽然JavaEE本身包含JSF,但还有许多流行的第三方MVC框架,如Spring MVC和Struts,它们提供了更强大的功能和灵活性。 13. **容器**:JavaEE应用通常运行在应用服务器容器中,如Tomcat、Jetty、...

    Java web 期末复习 PPT.zip

    这份"Java Web期末复习PPT.zip"压缩包显然是一份针对Java Web开发的复习资料,包含了从基础到高级的多个主题,旨在帮助学生或开发者系统性地理解和掌握这个领域。让我们逐一深入探讨这些章节的主要知识点。 1. **...

    JavaWeb 视频教程 传智播客 第28天 共28天

    这个“JavaWeb视频教程 传智播客 第28天 共28天”的系列课程,显然是一个完整的JavaWeb学习路径,旨在帮助初学者或有一定基础的学习者深入理解JavaWeb开发的核心概念和技术。 在第28天的课程中,主题是"基础加强2...

    spring学习复习资料

    ### Spring学习复习资料知识点梳理 #### 一、Spring框架概览 - **Spring** 是一个分层的全栈(Full-stack)轻量级开源框架,其核心思想是 IoC(Inversion of Control,控制反转) 和 AOP(Aspect Oriented ...

    Javaee复习超级重点.docx

    2. 服务器上的Servlet接收请求,这是JavaEE应用程序的第一道处理层。 3. Servlet根据请求内容调用相应的JavaBean,JavaBean负责具体的业务逻辑处理,通常包括与数据库的交互。 4. JavaBean通过JDBC(Java Database ...

    2024年JavaWeb应用开发系列中级复习课-理论题.pdf

    对于题目中提到的返回指定日期时间是当月的第几天,涉及到的是`java.sql.Date`或`java.time.LocalDate`等类中的方法。 **详细解释**: - **选项解析**: - **A: MONTH**:这个选项并不适用于返回指定日期时间是...

    Java学习路线图.pdf

    第四部分,4天的时间将专门用来学习Linux操作系统,这对于服务器端的开发和运维非常重要。此外,还包括了一些如JS、HTML、CSS的基础复习,以及SCM(版本控制)、JUnit(单元测试)和设计模式的学习。这些工具和技术...

Global site tag (gtag.js) - Google Analytics