博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts10---拦截器
阅读量:7153 次
发布时间:2019-06-29

本文共 2929 字,大约阅读时间需要 9 分钟。

 

 

 

 

 

01.创建一个登录界面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              My JSP 'index.jsp' starting page    

02.创建对应的struts.xml文件

/interceptor
login

03.创建对应的UserAction

public class UserAction extends ActionSupport{    private  User user;  //验证的对象            //登录的方法    public  String login(){        System.out.println("进入UserAction的login()");          //把前台登录的用户信息保存到session        Map
session = ActionContext.getContext().getSession(); if (user.getName()!=null&&!user.getName().equals("")) { session.put("user", user.getName()); }else { session.put("user", ""); } return SUCCESS; } public User getUser() { return user; } public void setUser(User user) { this.user = user; }}

04.创建对应的user.xml文件

 

  应该是先创建loginAction,之后创建对应的拦截器! 最后把拦截器配置在xml文件中!

/error.jsp
/success.jsp

05.创建对应的LoginAction

public class LoginAction extends ActionSupport {            public  String   login(){        System.out.println("这是LoginAction中的login()");        return  SUCCESS;    }}

06.创建对应的拦截器

public class LoginInterceptor implements Interceptor {    /**     * 在整个拦截器的生命周期中!     * 服务器启动的时候执行一次!     */    @Override    public void init() {        System.out.println("拦截器的init()....................");            }/** * intercept相当于我们filter中的doFilter() *  拦截一次请求,就会执行一次! */    @Override    public String intercept(ActionInvocation invocation) throws Exception {        System.out.println("拦截器的intercept()....................");        System.out.println("当期的执行Action====:"+invocation.getAction());        Map
session = ActionContext.getContext().getSession(); //从session中获取用户的姓名 String name=(String) session.get("user"); if (name!=null&&!name.equals("")) { //说明前台用户有输入 //放行 return invocation.invoke(); }else { return "error"; } } /** * 在整个拦截器的生命周期中! * 服务器关闭的时候执行一次! */ @Override public void destroy() { System.out.println("拦截器的destroy()................."); }}

07.错误界面  ! 省略!

 

转载于:https://www.cnblogs.com/xtdxs/p/7097525.html

你可能感兴趣的文章
jmeter实现Http接口测试介绍
查看>>
iOS 九宫格的实现
查看>>
总结各种width,height,top,left
查看>>
Python基础8_文件处理
查看>>
ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效
查看>>
结对项目开发(石家庄地铁乘车系统)
查看>>
CentOS6.2安装PhpMyadmin3.3.10
查看>>
Java运行环境的搭建---Windows系统
查看>>
定时任务redis锁+自定义lambda优化提取冗余代码
查看>>
linux每日命令(36):wc命令
查看>>
数论基础(附加例题)
查看>>
web应用,http协议简介,web框架
查看>>
递归找零问题
查看>>
纯手工编写的PE可执行程序
查看>>
实验四
查看>>
go标准库的学习-sync互斥
查看>>
FZU.Software Engineering1816 · First Homework -Preparation
查看>>
python学习day-10 模块补充
查看>>
mysql连接慢,修改配置文件
查看>>
数轴染色
查看>>