本节内容几乎所有的内容通过jsp文件就可以展示,不需要Java代码,通过在jsp里面,通过request域在jsp中设置值,然后直接在jsp中展示。复制HeadFirstStruts2chapter04 改名HeadFirstStruts2chapter05修改 web project settings
MyComparator如下:
package com.cruise.comparator;
import java.util.Comparator;
import com.cruise.model.Student;
public class MyComparator implements Comparator{
public int compare(Student s1, Student s2) {
if(s1.getAge()>s2.getAge()){
return 1;
}else if(s1.getAge()
return -1;
}
return 0;
}
}
Student类如下:
package com.cruise.model;
public class Student {
private int id;
private String name;
private int age;
public Student() {
super();
// TODO Auto-generated constructor stub
}
public Student(int id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
dataTag.jsp如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
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=UTF-8">
<title>Insert title heretitle>
head>
<body>
<h>数据标签h>
<hr/>
<a href="data/property.jsp" target="_blank">property标签a><br/>
<a href="data/set.jsp" target="_blank">set标签a><br/>
<a href="data/bean.jsp" target="_blank">bean标签a><br/>
<a href="data/date.jsp" target="_blank">date标签a><br/>
<a href="data/debug.jsp" target="_blank">debug标签a><br/>
<a href="data/url_a.jsp" target="_blank">url_a标签a><br/>
<a href="data/include.jsp" target="_blank">include标签a><br/>
body>
html>
controlTag.jsp如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
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=UTF-8">
<title>Insert title heretitle>
head>
<body>
<h>控制标签h>
<hr/>
<a href="control/ifelse.jsp" target="_blank">ifelse标签a><br/>
<a href="control/iterator.jsp" target="_blank">iterator标签a><br/>
<a href="control/append.jsp" target="_blank">append标签a><br/>
<a href="control/generator.jsp" target="_blank">generator标签a><br/>
<a href="control/merge.jsp" target="_blank">merge标签a><br/>
<a href="control/sort.jsp" target="_blank">sort标签a><br/>
<a href="control/subset.jsp" target="_blank">subset标签a><br/>
body>
html>
struts2的数据标签:启动项目,访问:http://localhost:8080/HeadFirstStruts2chapter05/dataTag.jsp
Property 标签:输出 OGNL 表达式的值;
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
<%
request.setAttribute("name","张三");
%>
head>
<body>
<s:property value="#request.name" /><br/>
<s:property value="#request.name2" default="某某人"/><br/>
<s:property value="#request.name" default="某某人" escapeHtml="false"/><br/>
body>
html>
Set 标签:设置变量;分别在 action,page,request,session application范围内设置值,然后通过取值
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<s:set var="i" value="1">s:set>
<s:property value="#i" /><br/>
<s:set var="a" value="'action范围的值'" scope="action">s:set>
<s:set var="p" value="'page范围的值'" scope="page">s:set>
<s:set var="r" value="'request范围的值'" scope="request">s:set>
<s:set var="s" value="'session范围的值'" scope="session">s:set>
<s:set var="app" value="'application范围的值'" scope="application">s:set>
<s:property value="#a" /><br/>
<s:property value="#attr.p"/><br/>
<s:property value="#request.r"/><br/>
<s:property value="#session.s"/><br/>
<s:property value="#application.app"/><br/>
body>
html>
Bean 标签:定义 javaBean 对象;引用Student的Bean来设置值,然后输出值
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<s:bean name="com.cruise.model.Student" var="student">
<s:param name="name" value="'张三'">s:param>
<s:param name="age" value="10">s:param>
s:bean>
<s:property value="#student.name"/>
<s:property value="#student.age"/>
body>
html>
Date 标签:日期标签;
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
<%
request.setAttribute("date",new Date());
%>
head>
<body>
${date }<br/>
当前日期:<s:date name="#request.date" format="yyyy-MM-dd"/>
body>
html>
Debug 标签:调试标签;查看 request ,session application 等域的值
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<s:debug>s:debug>
body>
html>
Url&a 标签:超链接标签;封装了标签,有两种方式
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<s:url action="hello" namespace="/foreground" id="h">
<s:param name="name" value="'struts2'">s:param>
s:url>
<s:a href="%{h}">超链接s:a>
<s:a action="hello" namespace="/foreground">
<s:param name="name" value="'struts2'">s:param>
超链接2
s:a>
body>
html>
Include 标签:动态包含标签
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<s:include value="head.html">s:include>
body>
html>
Struts2 控制标签见下一节
Ifelse 标签:条件判断标签;
Iterator 标签:遍历标签;
Append 标签:叠加标签;
Generator 标签:分隔标签;
Merge 标签:组合标签;
Sort 标签:排序标签;
Subset 标签:截取标签
第23 .struts2标签-数据标签
最新推荐文章于 2022-07-12 15:48:31 发布