Struts2入门

来源:互联网 发布:java.nio.file.path 编辑:程序博客网 时间:2024/04/30 01:30

Struts2入门
1.Struts2简介
Struts2是兼容了Webwork(核心思想)和Struts1的MVC框架
核心控制器: 版本2.1.3前:filterDispathcer
2.1.3后:strutsPrepareAndExecuteFilter
2.Struts执行流程
用户发送请求——服务器转发请求信息——Struts
①先经过Struts2核心控制器strutsPrepareAndExecuteFilter
②核心控制器根据具体请求 将其交给业务逻辑(二级)控制器
③业务逻辑控制器调用model处理返回result
④读取Struts.xml根据业务逻辑控制器处理后返回的结果响应给用户对应的页面或结果
3.使用步骤
①添加jar包(至少8个)
②编写视图页面
③编写web.xml
④编写Action类
⑤编写Struts.xml
⑥部署运行
4.Action常量
SUCCESS 程序正常
NONE 正常结束 但不返回用户任何提示
ERROR 处理结果失败
INPUT 表示需要更多用户输入才能顺利执行
LOGIN 表示正常登录才能顺利执行
注意:
出现No result defined for action action.LoginAction and result input
说明没有input定义
5.Struts2访问Servlet API对象
在Action类中
解耦方式
ActionContext.getContext().getSession().put(“username”, username);
耦合方式
ServletActionContext.getRequest().getSession().setAttribute(“username”, username);
6.数据校验
继承ActionSupport类
重写validate()方法进行数据校验
@Override
public void validate(){
if (getUsername().length()==0) {
this.addFieldError(“name”, “用户名不能为空”);
}else if(getPassword().length()==0){
this.addFieldError(“pwd”, “密码不能为空”);
}
}
页面显示错误信息



        ![这里写图片描述](http://img.blog.csdn.net/20171012113806069?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhvdWppYWhhb3hpb25n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)