struts1四:常用标签

struts1支持的5种标签:
HTML 标签: 用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单
Bean 标签: 在访问JavaBeans 及其属性,以及定义一个新的bean 时使用
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
Logic 标签: 管理条件产生的输出和对象集产生的循环
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
Template 标签: 随着Tiles框架包的出现,此标记已开始减少使用
Nested 标签: 增强对其他的Struts 标签的嵌套使用的能力

在Action中设置属性并在jsp中取出属性
LoginAction

package com.bjpowernode.struts;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class LoginAction extends Action{

    @Override
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {

        LoginActionForm laf = (LoginActionForm)form;
        if("admin".equals(laf.getUsername()) && "admin".equals(laf.getPassword())){

            request.setAttribute("message", "test message!");
            request.setAttribute("user", createUser("张三", "123456", 29));
            request.setAttribute("userList", createUserList());
            request.setAttribute("userMap", createUserMap());
            return mapping.findForward("success");
        }
        return mapping.findForward("error");
    }

    private User createUser(String username, String password, int age){
        User user = new User();
        user.setUsername(username);
        user.setPassword(password);
        user.setAge(age);
        user.setCreateDate(new Date());
        return user;
    }

    private List<User> createUserList(){
        List<User> userList = new ArrayList<User>();
        userList.add(createUser("李四", "123123", 30));
        userList.add(createUser("王五", "123999", 34));
        userList.add(createUser("赵六", "123123", 39));
        return userList;
    }

    private Map<String, User> createUserMap(){
        Map<String, User> map = new HashMap<String, User>();
        map.put("k1", createUser("map1", "map123", 100));
        map.put("k2", createUser("map2", "map12123", 110));
        map.put("k3", createUser("map3", "map123map", 130));
        return map;
    }
}

跳转后的JSP
login_success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">

    <title>My JSP ‘login_success.jsp‘ starting page</title>

    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->

  </head>

  <body>
    This is my JSP page. Success!!! <br>
    <!-- 普通属性取出 -->
    <bean:write name="message"/><br>
    <!-- 对象类型的属性取出 -->
    <bean:write name="user" property="username"/><br>
    <bean:write name="user" property="password"/><br>
    <bean:write name="user" property="createDate" format="yyyy-MM-dd HH:mm:ss"/><br>
    <hr>
    <!-- List类型的属性取出 -->
    <logic:iterate id="user" name="userList">
        <bean:write name="user" property="username"/><br>
        <bean:write name="user" property="password"/><br>
        <bean:write name="user" property="createDate" format="yyyy-MM-dd HH:mm:ss"/><br>
    </logic:iterate>
    <hr>
    <!-- Map类型的属性取出 -->
    <logic:iterate id="userIteam" name="userMap">
        <bean:write name="userIteam" property="key"/><br>
        <bean:write name="userIteam" property="value.username"/><br>
        <bean:write name="userIteam" property="value.password"/><br>
        <bean:write name="userIteam" property="value.createDate" format="yyyy-MM-dd HH:mm:ss"/><br>
    </logic:iterate>
  </body>
</html>
时间: 2024-10-08 19:35:10

struts1四:常用标签的相关文章

第2天:HTML常用标签

今天学完主要对所学知识点进行了整理. 一.超链接ahref:www.baidu.com(跳转页面):id名(锚点跳到相应div位置):01.rar(压缩包) target:_blank(新窗口打开):_self(当前窗口打开)二.文件路径绝对路径:(1)线上:线上绝对路径(2)线下:完整路径 相对路径:src=../img/bg.jpg(../是上一级目录) 三.HTML常用标签section :版块 用于划分页面上的不同区域,或者划分文章里不同的节 header :页面头部或者版块(secti

HTML常用标签总结

学习前端开发,第一步要学习的绝对是HTML. 什么是HTML? HTML 是(Hyper Text Markup Language)四个单词的缩写,翻译过来就是超文本标记语言, 所以它不是一门编程语言,只是一门标记语言. 学习html的第一步就是需要学习它的标签如何使用.这个没有什么技巧,全靠平时多练习多用,才能达到熟能生巧的境界. Html一共有一百一十多个标签(包含html5的新标签),如果想要全部掌握还真得费不少功夫,但是实际开发中经常用到的也就四五十个,有很多都是不常用的,如果一个不落的

struts2常用标签

Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的代码复用.Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求. Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供了大部分标签,可以在各种表现技术中使用.包括最常用的jsp页面,也可以说Veloc

HTML常用标签及简单网站做法(5.6)

  昨天刚学的东西基本上融化了,今天有学习了很多的HTML通用标签,理解慢一点,有些东西需要静下心来慢慢理解.昨天学的东西觉得自己能理解了,今天一做任务,才发现自己运用到实践中的不多,很多东西还是不太理解,做起来很慢,看到别的同学做的很快,告诉自己不要着急,用心去理解,去一点点弄明白.明天休息,看来自己休息不了了,把自己还不熟练的东西去弄明白.下面是今天学习的一些通用标签,我做了一下总结: HTML常用标签: 一:<a></a> (1)超级链接:<a href="U

CSS常用标签-手打抄录-感谢原未知博主-拜谢了

CSS常用标签 CSS常用标签 一 CSS文字属性 color : #999999; /*文字颜色*/ font-family : 宋体,sans-serif; /*文字字体*/ font-size : 9pt; /*文字大小*/ font-style:itelic; /*文字斜体*/ font-variant:small-caps; /*小字体*/ letter-spacing : 1pt; /*字间距离*/ line-height : 200%; /*设置行高*/ font-weight:b

Struts2常用标签总结

Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的代码复用.Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求. Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供了大部分标签,可以在各种表现技术中使用.包括最常用的jsp页面,也可以说Veloc

Struts2常用标签(转载)--【SSH】

出处:Struts2常用标签总结 Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的代码复用.Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求. Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供了大部分标签,可以在各种表现技术中使用.包括最常

JSTL与EL常用标签(转)

JSTL与EL EL相关概念 JSTL一般要配合EL表达式一起使用,来实现在jsp中不出现java代码段.所以我们先来学习EL表达式 EL主要用于查找作用域中的数据,然后对它们执行简单操作:它不是编程语言,甚至不是脚本编制语言.通常与 JSTL 标记一起作用,能用简单而又方便的符号来表示复杂的行为. EL基本格式 EL表达式的格式:用美元符号($)定界,内容包括在花括号({})中; 例如: ${loginInfoBean.suser} 此外,您可以将多个表达式与静态文本组合在一起以通过字符串并置

HTML常用标签用法及实例

HTML常用标签用法及实例1.<!--1.注释-->2.<!--2.DOCTPYE 声明文档类型-->3.<!--3.a--> <a href="http://www.baidu.com/">百度一下</a><br> <!--超链接标签-->4.<!--4.address <address> 标签定义文档或文章的作者/拥有者的联系信息.如果 <address> 元素位于 &