一、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. 多媒体编程基础之RGB和YUV

    一.概念 1.什么是RGB? 对一种颜色进行编码的方法统称为“颜色空间”或“色域”.用最简单的话说,世界上任何一种颜色的“颜色空间”都可定义成一个固定的数字或变量.RGB(红.绿.蓝)只是众多颜色空间 ...

  2. new 、operator new 和 placement new

    一.原生operator new 我们先从原生operator new开始.考虑如下代码,它用来分配5个int型的空间并返回指向他们的指针[1]: int* v = static_cast<in ...

  3. .net验证码生成及使用

    验证码的作用: 几年前,大部分网站.论坛之类的是没有验证码的,因为对于一般用户来说验证码只是增加了用户的操作,降低了用户的体验.但是后来各种灌水机器人.投票机器人.恶意注册机器人层出不穷,大大增加了网 ...

  4. javascript创建对象的相关问题

    javascript创建对象的方法有很多种,一般来说,推荐使用对象字面量来创建对象. 对象构造函数捕捉 使用new Object来创建对象,可能会带来一些问题: var o = new Object( ...

  5. 关于union的那些事儿

    自从当年明月的<明朝的那些事儿>爆红之后,以***那些事儿命名的文章便层出不穷.个人认为,这样的命名通俗但具有吸引力,容易接地气.哈哈,所以我也写了几篇以<***那些事儿>的文 ...

  6. C# 清空sessin

    Session.Abandon();//清除全部Session//清除某个SessionSession["UserName"] = null;Session.Remove(&quo ...

  7. Oracle笔记 六、PL/SQL简单语句块、变量定义

    1.简单SQL语句,HellWorld示例 --输出信息 begin dbms_output.put_line('Oracle Hello World!'); end; 2.变量的定义.使用 --定义 ...

  8. Android 6 Marshmallow USB调试授权

    Google在Android在5.1版之后进行了重大变革,推出了Android 6 Marshmallow,我们先看看当它接上工作站时,有什么样的状况出现. 如图1所示,会弹出一个窗口,[是否允许此计 ...

  9. poj2031 Building a Space Station

    这题目,用G++ WA,用C++ AC. 题目要求,现给出n个球,然后要使每两个球直接或者间接连通,可以在任意两球之间做管道(在表面),最后的要求是,如果使得都连通的话,管道最小长度是多少. 思路简单 ...

  10. Python之路【第七篇】:线程、进程和协程

    Python之路[第七篇]:线程.进程和协程   Python线程 Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. 1 2 3 4 5 6 7 8 9 10 11 12 1 ...