一、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. 图像JPEG格式介绍

    1 JPG格式介绍 JPEG (Joint PhotographicExperts GROUP)是由国际标准组织和国际电话电报咨询委员会为静态图像所建立的第一个国际数字图像压缩标准,也是至今一直在使用 ...

  2. 关于NopCommerce3.6版的@Html.Widget(“home_page_top”)的说明

    以首页幻灯片为例子,首页幻灯片是在插件Nop.Plugin.Widgets.NivoSlider里面实现的 首页视图位置 这里其实是加载插件里面的视图内容,具体实现在插件实现 这个是扩展方法,就是执行 ...

  3. Apache FtpServer扩展【动手实现自己的业务】

    Apache FtpServer是当下最热门的走ftp协议的用于用户上传下载的服务器. 官网http://mina.apache.org/ftpserver-project/   一般来说,用的话,去 ...

  4. PMP考试--价值工程法

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 ValueEngineering,简称VE,是降低成本提高经济效益的有效方法,价值工 ...

  5. socket学习笔记——线程(聊天程序)

    server.c #include <stdio.h> #include <pthread.h> #include <semaphore.h> #include & ...

  6. linux中django+apache配置

    配置apahce通过mod_wsgi访问django代码,最终通过版本说明: Apache/2.0.63 (Unix) DAV/2 mod_wsgi/3.5 Python/2.6.6 下面讲述一波三折 ...

  7. bash中正则表达式

    工作中需要用bash的地方不是很多,之前只是大致了解过,每每用到都得去网上查询,遂决定以后将所用到的正则用法在这里统一收藏,便于学习. 1.echo 'inet addr:10.1.1.1  Bcas ...

  8. 洛谷P1113 杂物

    P1113 杂务 251通过 441提交 题目提供者该用户不存在 标签图论递推 难度普及/提高- 提交该题 讨论 题解 记录 最新讨论 为什么会只有10分? 题目描述 John的农场在给奶牛挤奶前有很 ...

  9. vyatta的fork开源版本

    https://www.reddit.com/r/networking/comments/3dvwfy/who_here_is_using_vyos/ Vyatta came in two flavo ...

  10. python 标准库获取网络信息

    c语言ioctl定义的常量 /usr/include/x86_64-linux-gnu/bits/ioctls.h /* Copyright (C) 1996-2015 Free Software F ...