(Spring习题.doc
文本预览下载声明
阐述Spring工作原理。
1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller. 3.DispatcherServlet请请求提交到目标Controller 4.Controller进行业务逻辑处理后,会返回一个ModelAndView 5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象 6.视图对象负责渲染返回给客户端。 设置注入和构造注入都具有无侵入性的特点。
构造注入:
构造注入避免了烦琐的setter方法的编写,从而使得组件被创建后处于相对稳定状态;
类之间的关联关系仅在构造函数中表达,使得系统层次清晰;
通过构造注入,可以在构造函数中决定依赖关系得注入顺序,优先依赖的先注入;
设置注入:
通过setter方法设定依赖关系显得更加直观,自然;
如果依赖关系(或继承关系)较为复杂,设置注入则更为简洁;
对于某些第三方类库,有求组件必须提供默认的构造函数,此时构造注入就有了局限性,采用设置注入为佳。
?3.Struts中ActionForm有什么作用?ActionForm Bean也是一种JavaBean,除了具有一些JavaBean的常规方法,还包含一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。2、Struts框架利用ActionForm Bean来进行View组件和Controller组件之间表单数据的传递。3、Struts框架把View组件接受到的用户输入的表单数据保存在ActionForm Bean中,把它传递给Controller组件,Controller组件可以对ActionForm Bean中的数据进行修改,JSP文件使用Struts标签读取修改后的ActionForm Bean的信息,重新设置HTML表单。?ActionForm是和页面的Form对应的,也就是接收页面输入的数据一开始保存在ActionForm中EJB 是优良的业务对象分布式框架,EJB容器具有事务管理,安全机制功能;
EJB是重量级的,部署麻烦;
EJB 代码不能脱离EJB 容器;
购买EJB 容器价钱昂贵,启动缓慢;
Spring框架是轻量级的架构,支持EJB并对其实现更加简化,实现了解耦,并脱离了容器;
中断了应用程序的逻辑,使代码变得不完整,不直观。将原本应该代码化的逻辑配置化,增加了出错的机会以及额外的负担。
失去了IDE的支持。调试阶段不直观,后期的bug对应阶段,不容易判断问题所在。
6、模式和框架的区别。
模式(pattern) 就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度。
框架是一种软件,一组组件;
设计模式比框架更抽象
框架比设计模式更加特征化
设计模式是比框架更小的体系结构元素
7、如何在Spring中实现国际化?
添加Spring表单标签库tld文件
在web.xml文件中添加该标签库的引用
创建资源库文件ApplicationResources.properties利用native2ascii工具将目标文件转换为要国际化的语言类别
在applicationContext.xml文件中添加资源库配置
标签化JSP页面中的文字
8、装配集合中常用的四种属性是什么?并列举任意一种的使用方法。
在Spring中可以装配4种集合类型属性:List: java.util.List,arrays
Set:java.util.Set
property name=“addresses”
list/set
valueShandong/value
ref bean=“bar2” /
/list/set
/property
Map:java.util.Map
property name=“barMap”
map
entry key=“key1”
valuevalue1/value
/entry
entry key=“key2”
ref bean=“bean1” /
/entry
/map
/property
props.:java.util.Properties
property name=“barProps”
props
prop key=“key1”value1/prop
prop key=“key2”value2/prop
/props
/property
9、什么是spring?它有什么特点?
Spring是一个轻量级的控制反转(IoC)
显示全部