你不可不知的struts2参数处理机制

struts2是一个优秀的框架,他的出现让我们和Servlet说good bye,从此以后我们用Action类即可完成以前复杂,冗余的操作。

我们知道在Servlet时代,我们通过request获取到参数,我们还需要进行一系列封装和处理,最终将其传递,而struts2已经帮我们解决了这些问题,让我们更专注于业务,而非这类重复的、机械性的代码的书写。下面我介绍三种参数处理机制。



  准备工作:

1、struts.xml


2、web.xml



3、hello.jsp



4、form1.jsp




一、成功跑起来,说明struts2已经自动帮我们将form表达提交的数据封装成了属性,这就是所谓的属性驱动机制





二、struts2的对象驱动机制

实际开发中,form表单提交的数据会有很多,所以要在Action中写属性的话,get和set方法将写得很多,不太适合开发,所以衍生出了所谓的对象驱动机制


首先建立一个User实体类


form表单


然后书写Action类



跑起来的效果:


说明数据已经封装到对象之中了。


三、模型驱动机制

    由于使用对象驱动时,form表单的name需要书写出对象.属性的格式,不太妥当,进而产生了模型驱动机制,者是基于对象驱动的,称之为改良版对象驱动。


Action类



form表达填写正常的name即可

运行结果




敲黑板:1、在开发中,一般使用第三种模型驱动机制用来获取参数并封装成对象,需要注意的是,需要给Action类实现一个ModelDriven<>接口,并且重写它的方法,返回需要封装的对象。

               2、这三种获取参数的底层都是OGNL所完成的

       

猜你喜欢

转载自blog.csdn.net/pbrlovejava/article/details/80302582