我对登陆界面定义了一个拦截器,然后在action方法里添加了System.out.println(user.getUsername());就没办法获得action运行时间,但是不添加输出语句就可以实现拦截器获得action运行时间

来源:3-3 [Struts2] 统计Action调用时间案例实现

薛定谔de猫

2017-06-26 17:32

public class LoginAction extends ActionSupport {

private User user;

public User getUser() {

return user;

}

public void setUser(User user) {

this.user = user;

}

public String login(){

System.out.println(user.getUsername());

return SUCCESS;

}

@Override

public void validate() {

if(user.getUsername()==null

||"".equals(user.getUsername())){

this.addFieldError("username", "用户名不能为空");

}

}

}


写回答 关注

1回答

  • qq_你不认识_0
    2017-06-30 17:32:54

    如果添加

    System.out.println(user.getUsername())

    这个之后,默认拦截器栈中的参数拦截器生效,如果想让其生效,需要在引用自定义拦截器之前配置默认拦截器.如果不添加这句的话,自定义拦截器生效.

Struts2拦截器浅析

本视频教程将代领大家了解Struts2拦截器的工作原理及配置

37980 学习 · 118 问题

查看课程

相似问题