菜鸟学习Struts——bean标签库
一、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标签库的更多相关文章
- 【转】Struts1.x系列教程(6):Bean标签库
转载地址:http://www.blogjava.net/nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/0 ...
- struts的标签库出现Failed to load or instantiate TagExtraInfo class
使用struts的标签库出现Failed to load or instantiate TagExtraInfo class 最近在使用struts标签库的时候,在eclipse开发环境中是正常的,放 ...
- 菜鸟学习Struts——总结
一.原理 客户端请求到ActionSeverlet,ActionSeverlet负责截URL进行分发分发到每一个Action上,Action负责和Model打交道然后把相关信息返回到ActionSev ...
- 重温JSP学习笔记--JSTL标签库
以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...
- 学习笔记_Java_day13_JSTL标签库(1、2、3、4、5、6、7、8)
1.一种标签语言 day13 l JSTL标签库(重点) l 自定义标签(理解) l MVC设计模式(重点中的重点) l Java三层框架(重点中的重点) JSTL标签库 1 什么是JSTL ...
- Struts 2 标签库
<s:if>标签 拥有一个test属性,其表达式的值用来决定标签里内容是否显示 <s:if test="#request.username=='clf'"> ...
- 菜鸟学习Struts——简易计算器
这是学习Struts的一个简单的例子文件结构如下: 1.配置Struts环境 2.新建input.jsp,success.jsp,error.jsp input.jsp代码如下: <%@ pag ...
- 菜鸟学习Struts——配置Struts环境
刚开始学习Struts,它通过采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品. 要用到Struts就要学会配 ...
- Struts 2 标签库及使用
1 Struts 2 基本的标签属性. 1) name:指定表单元素的名称,该属性与Action中定义的属性相对应. 2) value:指定表单元素的值. 3) required:指定表单元素的必填 ...
随机推荐
- python-appium练习编写脚本时遇到问题
遇到问题: 1.安卓4.2及以下系统无法识别resource-id属性 只能用text属性识别 2.输入中文无法识别 脚本最顶部增加#coding=utf-8 3.对象无法识别resource-id属 ...
- <路径算法>哈密顿路径变种问题(2016华为软件精英挑战赛初赛)
原创博客,转载请联系博主! 前言:几天前华为的这个软件精英(算法外包)挑战赛初赛刚刚落幕,其实这次是我第二次参加,只不过去年只入围到了64强(32强是复赛线),最后搞到了一个华为的一顶帽子(感谢交大l ...
- Spark Job Scheduling
最近由于项目需要在研究spark相关的内容,形成了一些技术性文档,发布这记录下,懒得翻译了. There are some spaces the official documents didn't e ...
- Flex Alert的匿名回调函数如何得到正确的this
Flex中经常使用Alert来弹出提示或确认窗口,为了方便省事,会直接用匿名函数作为回调,但有时如果要调用外部的this,你会发现匿名函数中的this无法指向外部父类,可以使用e.target获取pa ...
- 使用HTTP协下载文件
通过发送HTTP请求,下载文件 头文件: #ifndef __HTTP__ #define __HTTP__ #include <stdio.h> #include <stdlib. ...
- Android基础总结(9)——网络技术
这里主要讲的是如何在手机端使用HTTP协议和服务器端进行网络交互,并对服务器返回的数据进行解析,这也是Android最常使用到的网络技术了. 1.WebView的用法 Android提供的WebVie ...
- devexpress中应用于girdviw中HtmlDataCellPrepared事件与CellEditorInitialize事件的区别
HtmlDataCellPrepared 事件为页面展示的时候对页面做的初始化(将id变为name) CellEditorInitialize 事件为页面在编辑时(新增.修改)时做的初始化,如将值填 ...
- 乱码!Eclipse 的控制台console必须用GBK编码。
Eclipse 的控制台必须用GBK编码.所以条件1和条件4必须同时满足,否则运行的还是乱码. 条件1,Window | Preferences | Workspace | Text fi ...
- JS常用的设计模式(13)——组合模式
组合模式又叫部分-整体模式,它将所有对象组合成树形结构.使得用户只需要操作最上层的接口,就可以对所有成员做相同的操作. 一个再好不过的例子就是jquery对象,大家都知道1个jquery对象其实是一组 ...
- 逻辑回归的分布式实现 [Logistic Regression / Machine Learning / Spark ]
1- 问题提出 2- 逻辑回归 3- 理论推导 4- Python/Spark实现 # -*- coding: utf-8 -*- from pyspark import SparkContext f ...