【SSH】Struts2学习(四)拦截器、struts2标签
来源:互联网 发布:知豆电动汽车有限公司 编辑:程序博客网 时间:2024/06/04 17:42
一、自定义拦截器
1、拦截器3种创建方式
(1)实现 Interceptor接口
/** * 拦截器第一种创建方式 * * @author Administrator 拦截器生命周期:随项目的启动而创建,随项目关闭而销毁 */public class MyInterceptor implements Interceptor {@Override// 销毁方法public void destroy() {// TODO Auto-generated method stub}@Override// 初始化方法public void init() {// TODO Auto-generated method stub}@Override// 拦截方法public String intercept(ActionInvocation arg0) throws Exception {// TODO Auto-generated method stubreturn null;}}
(2)继承AbstractInterceptor
/** * 拦截器第二种创建方式:继承AbstractInterceptor * @author Administrator * 帮我们空实现了init和destroy方法,我们如果不需要实现这两个方法,就可以只实现intercept方法 */public class MyInterceptor2 extends AbstractInterceptor{@Overridepublic String intercept(ActionInvocation arg0) throws Exception {// TODO Auto-generated method stubreturn null;}}
(3)继承MethodFilterInterceptor
/** * 拦截器第三种创建方式:继承MethodFilterInterceptor 方法过滤拦截器 * @author Administrator * 功能:定制拦截器拦截的方法定制需要拦截的方法 定制哪些方法不需要拦截 */public class MyInterceptor3 extends MethodFilterInterceptor{@Overrideprotected String doIntercept(ActionInvocation invocation) throws Exception {//前处理System.out.println("MyInterceptor3前处理");//放行invocation.invoke();//后处理System.out.println("MyInterceptor3后处理");//不放行,直接跳转一个结果页面,不执行后续的拦截器以及Action,直接交给Result处理页面结果进行页面跳转return "success";}}
2、拦截器配置介绍
struts.xml3、定制拦截方法
struts.xml
4、定义全局结果集
二、Struts2标签
1、Struts2标签结构
2、struts2标签演示
(1)iterator标签 if elseif else标签 property标签配合ognl表达式页面取值
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><%@ taglib prefix="s" uri="/struts-tags"%><!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 here</title></head><body><!-- -----------iterator---------- --><!-- 遍历标签 iterator --><s:iterator value="#list"><s:property /><br /></s:iterator><br /><s:iterator value="#list" var="name"><s:property value="#name" /><br /></s:iterator><s:iterator begin="1" end="100" step="1"><s:property />|</s:iterator><!-- -----------if elseif else---------- --><hr><s:if test="#list.size()==4">list长度为4</s:if><s:elseif test="#list.size()==3">list长度为3</s:elseif><s:else>list长度为其他值</s:else><!-- -----------property配合ognl表达式页面取值---------- --><hr><s:property value="#list.size()" /></body></html>
(2)表单标签等
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="s" uri="/struts-tags" %><!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 here</title></head><body><!-- struts2表单标签 --><!-- 好处1:内置了一套样式 好处2:自动回显,根据栈中的属性theme:指定表单主题xhtml:默认 simple:没有主题--><s:form action="Demo3Action" namespace="/" theme="xhtml"><s:textfield name="name" label="用户名"></s:textfield><s:textfield name="password" label="密码"></s:textfield><s:radio list="{'男','女'}" name="gender" label="性别"></s:radio><s:radio list="#{1:'男',0:'女'}" name="gender" label="性别"></s:radio><s:checkboxlist list="#{2:'抽烟',1:'喝酒',0:'烫头'}" name="habit" label="爱好"></s:checkboxlist><s:select list="#{2:'吃饭',1:'睡觉',0:'打豆豆'}" headerKey="" headerValue="---请选择---" name="point" lable="特长"></s:select><s:file name="photo" label="头像"></s:file><s:textarea name="desc" lable="个人简介"></s:textarea><s:submit value="提交"></s:submit></s:form><s:actionerror/></body></html>
Human life is ephemera, which makes it precious.
生命短暂,所以珍贵。
阅读全文
0 0
- 【SSH】Struts2学习(四)拦截器、struts2标签
- SSH学习(六)Struts2拦截器
- 菜鸟学SSH(四)——Struts2拦截器
- ssh学习:struts2的拦截器实现
- SSH学习之Struts2中的拦截器
- struts2(四)拦截器
- Struts2学习笔记(四)——拦截器
- SSH:Struts2框架(拦截器)
- 【ssh】Struts2自定义拦截器
- SSH学习(四)Struts2类型转换
- struts2应用技术层,拦截器,struts2标签
- struts2入门教程四(拦截器)
- Struts2学习(四)OGNL标签介绍
- Struts2(四)使用Struts2中的拦截器
- Struts2(四)使用Struts2中的拦截器
- struts2拦截器学习
- Struts2拦截器学习
- Struts2拦截器学习
- 【软件工程】数据流图
- Python pandas.read_csv()函数
- LeetCode总结,二分法一般性总结
- [Mysql必知必会系列]Mac 命令行配置 mysql
- Android Paint简单使用
- 【SSH】Struts2学习(四)拦截器、struts2标签
- 远程连接服务器的基本操作
- 【Data Structure/Algorithm】排序之归并排序
- 文件上传表单的视图解析器里都有啥子东东
- 压缩、复制保持目录和文件的属性不变
- 【深度学习】正则化入门
- 判断当前activity是不是在手机运行的的栈顶
- 毕向东讲解(摘)—5.多线程的安全问题(同步代码块)
- 【问题解决】关于找不到mysql服务