正版现货kubernetes in action
73.26元
(需用券)
去购买 >
一. 登录页面中放置如下代码:
员工登录
如果登录出现异常,就会将你设置的异常信息反馈出来.
二. 这个标签需要jsp的标签库支持,代码如下:
三. struts-tags标签库使用struts的filter进行过滤,需要在web.xml中过滤.jsp文件
代码如下:
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
struts2
*.action
*.jsp
最后actionerror需要在验证登录的时候,接收抛出的异常
如果抛出的是UnknownAccountException,
就添加一个actionerror,代码如下:
this.addActionError("用户名错误!");
如果抛出的是IncorrectCredentialsException,
就添加一个actionerror,代码如下:
this.addActionError("密码错误!");
相关代码使用shiro框架进行验证,代码如下:
@Action("userAction_login")public String login() throwsException {
String realCheckcode= (String) ServletActionContext.getRequest().getSession().getAttribute("key");if(StringUtils.isNotBlank(realCheckcode)){if(realCheckcode.equals(checkcode)){//在shiro框架基础开始认证//获取subject对象 认证状态:未认证
Subject subject =SecurityUtils.getSubject();if(subject.isAuthenticated()){return "index";
}else{//认证令牌(用户在登陆页面中输入)
AuthenticationToken token = newUsernamePasswordToken(model.getUsername(), Md5Util.encode(model.getPassword()));//认证-登陆
try{
subject.login(token);//跳转首页//从subject中获取主角对象
User user =(User) subject.getPrincipal();
ServletActionContext.getRequest().getSession().setAttribute("loginUser", user);return "index";
}catch(Exception e) {if(e instanceofUnknownAccountException){//账户错误
this.addActionError("用户名错误!"); //在登陆页面中获取错误信息。 通过strut2标签获取 问题
}if(e instanceofIncorrectCredentialsException){//密码错误
this.addActionError("密码错误!"); //在登陆页面中获取错误信息。 通过strut2标签获取 问题
}
e.printStackTrace();
}
}
}
}return "login";
}
原文链接:https://www.cnblogs.com/qingyundian/p/9260288.html
java 11官方入门(第8版)教材
79.84元
包邮
(需用券)
去购买 >