Struts面试题大全.doc
文本预览下载声明
Struts面试题大全
找兼职上猪八戒网--程序员赚外块的好地方
########## 让生活充满希望,买张彩票是寄托 ##########
########## 软件开发面试题汇总 ##########
1.Struts的工作原理?
在Struts中,用户的请求一般以*.do作为请求服务名,所有的请求均被指向ActionServlet,ActionServlet根据Struts-config.xml中的配置信息,将用户请求封装成一个指定名称的ActionForm,并将此ActionForm传至指定的Action中,由Action完成相应的业务操作。
?
2.Struts的优缺点?
优点:开源;表现与逻辑分离;MVC框架
缺点:大量的标签;ActionForms使用不便,无法进行单元测试
?
3.结合Struts,谈谈对MVC框架的理解?
M:模型--业务处理层
V:视图--表示层
C:控制器
Struts的M:javaBean或EJB的形式提供
Struts的V:Jsp + ActionForm
Struts的C:核心控制器ActionServlet
?
4.Struts的Action是不是线程安全的?如果不是有什么方式可以保证Action的线程安全?
不是线程安全的。只要不声明实例变量就可以保证线程安全;或者对操纵实例变量的方法进行同步。
?
5.Struts提供了几个标签库?
HTML标签:重新包装了html的表单控件。提供了事务跟踪(url重写功能);防止重复提交(如:form标签,link标签);封装Bean的功能。
Bean标签
Logic标签
Template标签
Nested标签
?
6.常用的Struts类有哪些?
ActionServlet:控制核心。
Action:处理用户请求。通常的做法是在Action的execute方法中调用业务层对象,进行业务处理,并将业务处理的结果,返回给不同的ActionForward对象。
ActionForm:封装用户通过表单提交的数据;validate方法验证用户提交的数据。
ActionMapping:代表了struts-config.xml文档中action标签的配置信息。findForward或getInputForward。
ActionForward
ActionErrors
ActionError:错误信息。
ActionMessage:提示信息。
?
7.Struts中都有哪些Action?
主要有Action,DispatchAction,ForwardAction...
?
8.Struts中都有哪些ActionForm?
主要有ActionForm,DynaActionForm(属性配置在struts-config.xml中),LazyValidatorForm(无需ActionForm,无需在struts-config.xml中配置)
?
9.Struts中解决重复提交问题的方法有哪些?
令牌机制
saveToken
resetToken
isTokenValid
?
10.Struts的控制器组件有以下哪几个?
a.ActionForm b.ActionServlet c.Action d.ActionForward
答案:b,c
?
11.Struts有哪些主要配置文件?
a.web.xml b.struts-config.xml c.validation.xml d.validator-rule.xml
答案:a,b
?
12.Struts有哪些常用的标签库?
a.html标签库 b.bean标签库 c.logic标签库 d.c标签库
答案:abc
?
13.ActonForm中的validate()方法起作用,要配置Action中的哪个属性?
a.path b.input c.type d.validate
答案:d
?
14.ActionForm中的name属性要与Action中的哪个属性对应?
a.path b.input c.type d.name
答案:d
?
15.ActionForm的生命周期是在什么范围
a.page b.request c.session d.application
答案:b,c
?
16.用于多模块转发的内部类是?
a.ForwardAction b.IncludeAction c.DispatchAction d.SwitchAction
答案:a
?
17.Struts中的中文转换通常是扩展RequestProcessor类中的哪个方法?
a.processPreprocess() b.processPopulate() c.processMapping() d.processLocale()
答案:a
显示全部