struts2 理解

1、web

  •      web前端提交,后台需要的东西:那个类处理,传递过来的参数。
  •      后台处理完毕,需要给前台的数据。页面、json数据、html数据、stream等等。

2、servlet

  • web.xml中含有的信息:类、路径、过滤器等
  • 处理完毕后,返回的页面、数据都在相应的类中处理

从上面的描述中看到servlet的弊端。需要修改的话就直接修改代码。


下面就谈谈struts2

struts2的核心是拦截器,在拦截器中处理各种问题。

filter类的方法:init、destory、config

==============================处理都是根据配置文件来进行

前台传递url地址:在init的方法内,dom读取配置文件、获得对象的信息、根据反射创建对象。建立管理http协议下面对象的类(actionContext,包含httpServletRequest、    httpServletResponse等对象,存放url中的参数)。

                                调用所有dofilter方法后,完成struts2给我们提供的基本功能要求,例如文件上传,验证等,然后完成我们自己的功能,通常就是操作数据库的增删改差功能。

                                方法返回一个标志(strus2中是字符串),要进入的页面或者json等各种数据。  这些也在配置文件中。。。。。。。

 处理完成

好处:怎样就将处理业务与控制事务跳转页面、传递到前台的数据分开。

将需要的创建类对象的信息、返回的数据的信息,都放在了配置文件中。


于是struts就提供了各种返回数据的配置方法,和各种需要返回的数据的插件。例如json的返回


struts2基本

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  核心filter

servletActionContext获得页面基本对象,request、response等。。。。

页面通过什么方式发送:redirect、dispatch等

struts2页面视图配置:struts2-default.xml中,在自己写的package中继承strus2的视图包,我们就能使用转发、重定向等视图发送模式。

struts2常量信息配置文件在:struts2核心包下面的default.xml中。

包的定位:struts2将url分成两部分。第一步:分解url,将URl最后一个/取出来,当成action。第二步:剩下来的url依次取最后/找包,直到找到为止,然后在該包下面找action。注意:nameSpace="/"也是有名字的包,nameSpace=""是默认包

配置文件struts2默认值:

class默认值:actionSupport 命名空间默认值是:nameSpace=”“ result中:name默认值是:success type默认值是:dispatch


struts拦截器

struts将各种拦截器自动实施上去。。。。。默认拦截器<default-interceptor-ref name="defaultInterceptor">


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
   1. struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类。我们可以在web.xml文件中将符合某种特征的所有请求交给这个Servlet处理,这个Servlet再参照一个配置文件(通常为/WEB-INF/struts-config.xml)将各个请求分别分配给不同的action去处理。    一个扩展知识点:struts的配置文件可以有多个,可以按模块配置各自的配置文件,这样可以防止配置文件的过度膨胀;    2. ActionServlet把请求交给action去处理之前,会将请求参数封装成一个formbean对象(就是一个java类,这个类中的每个属性对应一个请求参数),封装成一个什么样的formbean对象呢?看配置文件。    3.要说明的是, ActionServlet把formbean对象传递给action的execute方法之前,可能会调用formbean的validate方法进行校验,只有校验通过后才将这个formbean对象传递给action的execute方法,否则,它将返回一个错误页面,这个错误页面由input属性指定,(看配置文件)作者为什么将这里命名为input属性,而不是error属性,我们后面结合实际的运行效果进行分析。    4.action执行完后要返回显示的结果视图,这个结果视图是用一个ActionForward对象来表示的,actionforward对象通过struts-config.xml配置文件中的配置关联到某个jsp页面,因为程序中使用的是在struts-config.xml配置文件为jsp页面设置的逻辑名,这样可以实现action程序代码与返回的jsp页面名称的解耦。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值