This is my Blog!!Welcome to you!!
【分享个人java学习心得和技术问题汇总】

Struts2认识

 

★struts2框架中,从用户发出请求到获得响应整个过程的流转图。要求写出”类名”。p11的图。

流程:

 

 

!!! struts2和servlet的区别:

servlet:控制器非单例(对于每次请求,都会创建1个action对象。防止多线程同步造成的低效)

struts2:又是pojo(原生java类)(容易从web中剥离,用junit作测试)。

 

★struts2 和 struts1的区别:

struts2:又是 pojo(原生java类)(容易从web中剥离,用junit作测试)。

struts1:struts1的控制器从ActionServlet派生,还有formdata对象来向页面传递数据。

 

★什么叫做pojo(plain original java object):原生java类,没有实现任何接口,没有派生任何的父类。

优点:容易测试。

class student {}

 

★junit 4:作用可以替代main函数对java 对象的方法进行测试。

 

 

 

★struts.xml文件:支持分成几个子文件。

 

 

 

★action对象的生命周期与request对象相同

 

★action对象的属性自动保存在 request作用域!

 

★拦截器的作用是:抽取中多个action中的公有功能模块。

 

★拦截器栈的作用是:把几个拦截器串起来。

 

★拦截器和过滤器的区别:

a:拦截器是struts2的一部分。而过滤器是java web程序的通用组件。

b:拦截器只能拦截发向action的请求。 过滤器可以拦截任何请求,包括img,html,jsp等。

c:struts2过滤器先执行,再执行拦截器。

 

★拦截器分两种:

1、action拦截器–> extends AbstractInterceptor

重写 intercept方法。

String result = invocation.invoke();–分界线。执行拦截器后面的action方法,获得返回值。

2、方法拦截器–>可以仅拦截action中的指定方法。

extends MethodFilterInterceptor。

 

★自定义校验器需要让action从ActionSupport派生。

 

★在action中重写validate()方法和validateXXX()方法的区别:

validate():执行所有的action业务方法前都校验.

validateXXX():仅执行actionXXX方法前校验。

只要在validate()或validateXXX()方法中用“addFieldError语句”抛出异常,action的业务方法进不执行,自动返回name=input的结果。

 

★执行顺序validateXXX()–>validate()–>XXX方法。

“如果validateXXX方法抛出异常,validate()方法仍然执行,但XXX方法不执行。”

 

★转换器的作用是:将表单参数转成自定义类型。

 

 

★转换器的文件名 :xwork_conversion.properties

 

★无需转换器,实现快速转换的方法:

 

 

★action中,如何获取request和 session对象?

 

 

★action的结果类型默认是:dipatcher。

 

★dipatcher和redirect和redirectAction和chain的区别:

dipatcher和chain:能保留action的数据

redirect和redirectAction:无法保留action的数据。

 

★action如何向下一个action中传递数据:

a:放action的属性

b:放session中

 

★值栈是:request作用域的一种数据,按先进后出,后进先出的顺序被读取。

 

★如何通过struts2标签从值栈读取数据?

 

 

 

★struts2实现国际化需要哪些配置文件?

struts.xml文件中指定文件名前缀。

还需在src根目录下加:

前缀_zh_CN.properties

前缀_en_US.properties。

如果要对某个action生效,Acton名_前缀_zh_CN.properties,放于action文件夹下。

 

★需要在页面中使用什么标签读取:

可以用<s:fieldText> <s:propery>读取

<s:text>不行。

 

 

 

未经允许不得转载:Java学习 » Struts2认识

分享到:更多 ()

评论 抢沙发