一、Struts标签库。

Struts实际上包含了4个标签库:bean,logic,html,tiles

bean:用来在属性范围中定义或取得属性的,同时可以读取资源文件信息

logic:替代JSTL中的判断和循环

html:替代页面表单,完成自动回填以及错误信息的显示

tiles:美工标签,用来进行页面布局的调整以及样式管理的。

二、各个标签库的实例

下面利用实例来为大家降解三个标签库: beanwrite标签库、logic标签库、iterate标签库

2.1 beanwrite标签

实现效果:

代码:

2.1.1、配置Struts环境

2.1.2、编写bean_write.jsp

	<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
</head>
<body>
<h1>测试beanWrite标签</h1><br>
<hr>
<li>普通字符串</li><br>
hello(标签):<bean:write name="hello"/>
<p>
<li>html文本</li><br>
bj(default):<bean:write name="bj"/>
<br>
bj(filter:"true"):<bean:write name="bj" filter="true"/>
<br>
bj(filter:"false"):<bean:write name="bj" filter="false"/>
<p>
<li>user</li><br> 姓名:<input type="text" name="username" value="<bean:write name='user' property='username'/>"><br>
年龄:<input type="text" name="age" value="<bean:write name='user' property='age'/>"><br>
所属组:<input type="text" name="group" value="<bean:write name='user' property='group.name'/>"><br>
</body>
</html>

2.1.3、编写BeanWriteTestAction.java

	package com.bjpowernode.struts;

	import java.util.Date;

	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;
/**
* 测试beanWrite标签
* @author IT
*
*/
public class BeanWriteTestAction extends Action { @Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//普通字符串
request.setAttribute("hello", "helloword");
//html文本
request.setAttribute("bj", "<font color='red'>北京欢迎你</font>");
//日期
request.setAttribute("today",new Date()); Group group=new Group();
group.setName("动力节点"); User user=new User();
user.setUsername("张三");
user.setAge(22);
user.setGroup(group); request .setAttribute("user", user);
return mapping.findForward("success");
} }

2.1.4、编写实体类

User.java

	package com.bjpowernode.struts;
/**
* User实体
* @author IT
*
*/
public class User {
//用户名字
private String username;
//年龄
private int age;
//组
private Group group; public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public Group getGroup() {
return group;
} public void setGroup(Group group) {
this.group = group;
} }

Group.java

	package com.bjpowernode.struts;
/**
* 组的实体类
* @author IT
*
*/
public class Group {
//组名
private String name; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
}
}

2.1.5、struts-config.xml配置

	<?xml version="1.0" encoding="ISO-8859-1" ?>

	<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd"> <struts-config>
<action-mappings>
<action path="/beanwrite"
type="com.bjpowernode.struts.BeanWriteTestAction"
>
<forward name="success" path="/bean_write.jsp"></forward>
</action>
</action-mappings>
</struts-config>

菜鸟学习Struts——bean标签库的更多相关文章

  1. 【转】Struts1.x系列教程(6):Bean标签库

    转载地址:http://www.blogjava.net/nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/0 ...

  2. struts的标签库出现Failed to load or instantiate TagExtraInfo class

    使用struts的标签库出现Failed to load or instantiate TagExtraInfo class 最近在使用struts标签库的时候,在eclipse开发环境中是正常的,放 ...

  3. 菜鸟学习Struts——总结

    一.原理 客户端请求到ActionSeverlet,ActionSeverlet负责截URL进行分发分发到每一个Action上,Action负责和Model打交道然后把相关信息返回到ActionSev ...

  4. 重温JSP学习笔记--JSTL标签库

    以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...

  5. 学习笔记_Java_day13_JSTL标签库(1、2、3、4、5、6、7、8)

    1.一种标签语言 day13 l  JSTL标签库(重点) l  自定义标签(理解) l  MVC设计模式(重点中的重点) l  Java三层框架(重点中的重点) JSTL标签库 1 什么是JSTL ...

  6. Struts 2 标签库

    <s:if>标签 拥有一个test属性,其表达式的值用来决定标签里内容是否显示 <s:if test="#request.username=='clf'"> ...

  7. 菜鸟学习Struts——简易计算器

    这是学习Struts的一个简单的例子文件结构如下: 1.配置Struts环境 2.新建input.jsp,success.jsp,error.jsp input.jsp代码如下: <%@ pag ...

  8. 菜鸟学习Struts——配置Struts环境

    刚开始学习Struts,它通过采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品. 要用到Struts就要学会配 ...

  9. Struts 2 标签库及使用

    1  Struts 2 基本的标签属性. 1) name:指定表单元素的名称,该属性与Action中定义的属性相对应. 2) value:指定表单元素的值. 3) required:指定表单元素的必填 ...

随机推荐

  1. python-appium练习编写脚本时遇到问题

    遇到问题: 1.安卓4.2及以下系统无法识别resource-id属性 只能用text属性识别 2.输入中文无法识别 脚本最顶部增加#coding=utf-8 3.对象无法识别resource-id属 ...

  2. <路径算法>哈密顿路径变种问题(2016华为软件精英挑战赛初赛)

    原创博客,转载请联系博主! 前言:几天前华为的这个软件精英(算法外包)挑战赛初赛刚刚落幕,其实这次是我第二次参加,只不过去年只入围到了64强(32强是复赛线),最后搞到了一个华为的一顶帽子(感谢交大l ...

  3. Spark Job Scheduling

    最近由于项目需要在研究spark相关的内容,形成了一些技术性文档,发布这记录下,懒得翻译了. There are some spaces the official documents didn't e ...

  4. Flex Alert的匿名回调函数如何得到正确的this

    Flex中经常使用Alert来弹出提示或确认窗口,为了方便省事,会直接用匿名函数作为回调,但有时如果要调用外部的this,你会发现匿名函数中的this无法指向外部父类,可以使用e.target获取pa ...

  5. 使用HTTP协下载文件

    通过发送HTTP请求,下载文件 头文件: #ifndef __HTTP__ #define __HTTP__ #include <stdio.h> #include <stdlib. ...

  6. Android基础总结(9)——网络技术

    这里主要讲的是如何在手机端使用HTTP协议和服务器端进行网络交互,并对服务器返回的数据进行解析,这也是Android最常使用到的网络技术了. 1.WebView的用法 Android提供的WebVie ...

  7. devexpress中应用于girdviw中HtmlDataCellPrepared事件与CellEditorInitialize事件的区别

    HtmlDataCellPrepared 事件为页面展示的时候对页面做的初始化(将id变为name) ​CellEditorInitialize 事件为页面在编辑时(新增.修改)时做的初始化,如将值填 ...

  8. 乱码!Eclipse 的控制台console必须用GBK编码。

    Eclipse 的控制台必须用GBK编码.所以条件1和条件4必须同时满足,否则运行的还是乱码. 条件1,Window  |  Preferences  |  Workspace  |  Text fi ...

  9. JS常用的设计模式(13)——组合模式

    组合模式又叫部分-整体模式,它将所有对象组合成树形结构.使得用户只需要操作最上层的接口,就可以对所有成员做相同的操作. 一个再好不过的例子就是jquery对象,大家都知道1个jquery对象其实是一组 ...

  10. 逻辑回归的分布式实现 [Logistic Regression / Machine Learning / Spark ]

    1- 问题提出 2- 逻辑回归 3- 理论推导 4- Python/Spark实现 # -*- coding: utf-8 -*- from pyspark import SparkContext f ...