struts框架面试题,struts1和struts2的区别,面试题!!!!!!!!
struts框架面试题,struts1和struts2的区别,面试题!!!!!!!!详细介绍
本文目录一览: 面试题谈谈你对Struts的理解,应该怎么回答?
Struts框架是对MVC模式的封装,为开发者提供了MVC的3个逻辑组成部分,主要由ActionServlet · Action和struts-config.xml配置文件组成控制层,由ActionForm来承担模型层的功能,而struts 的视图层主要由jsp完成;
它处理一次请求的流程:由ActionServlet接受一个请求,然后依据配置文件来判断由哪个Action来处理和由哪个ActionForm来保存数据,再通过Action的返回值来判断应该由哪个jsp来展示数据
大致这样回答就可以了
面试中,struts框架一般会问哪些问题?
工作机制
分版本吧 1的话 就是典型的线程安全问题 2的话主要是他的标签 用起来感觉不是很好 JSTL+EL不错
struts的工作流程。就这么简单 你很清楚的吧struts的工作流程讲出来就算过。这个工作流程不是底层的,而是业务层怎么配置工作。建议网上下载一下面试题库,看看struts部分,面试中确实会出现很多相似题目。
小小struts帮助
你可以在网上搜搜,struts的面试题,这个比较有针对性。看书恐怕来不及
diyjava .com
1 Struts框架
1. Struts框架的整体运行流程
2. ActionServlet在Struts框架中的总体作用功能是什么
3. Struts框架的后缀名一般为.do,后缀后能不能更改,如果能更改的话,如何 4. 如何在Struts-config.xml中配置数据源以及获取数据源
5. Struts-config.xml文件action配置中的attribute属性和name属性有什么区别
6. Struts中的Action是不是线程安全的?如果不是有什么方式可以保证Action的线程安全?如果是,说明原因
7. Action的Execute方法有几个参数,这几个参数的具体作用是什么
8. Action的Execute方法的返回值是什么类型,有几种方式可以返回此类型
9. ActionFrom中对于错误消息的存取是如何存取的,页面上面是如何显示ActionFrom中存放的出错消息
10. 普通的Action对于消息的存取是如何实现的,页面上面是如何显示Action中存放的消息
11. 普通的ActionForm和动态的ActionForm有什么区别,在动态的ActionForm中如何设定一个日期类型的属性
12. 动态ActionForm是以什么方式存取表单控件的值的。要使用动态ActionForm取得一个控件的值是如何取得
13. 普通的Action与DispatchAction的区别是什么
14. Struts框架中常用的有HTML/Bean/Logic标签,这些标签的主要功能是什么
15. HTML标签中的name属性代表什么功能,为什么可以省略不写
16. Struts标签中name和property两个属性的作用和区别
17. 请简述J2EE平台体系中标签的体系结构
18. 请简述自定义标签的步骤
19. 如何在自定义标签中获取ServletContext,HttpSession,
20. Servlet2.4版本中新增加了一个标签为简单标签,要实现简单标签的话,必须实现标签中的哪一个方法,该方法有没有返回值
21. Struts框架如何实现国际化的步骤
22. 如何实现页面中HTML标签的初始值设置
23. Struts框架的综合运用开发过程中,一般会使用ActionForm和JavaBean,这两个Bean能不能通用?如果不能的话请简述原因
24. 如何操作Oracle表中CLOB和BLOB字段
struts一般就是这些问题,能够回答得出来,问题应该不大了吗
struts1和struts2的区别,面试题!!!!!!!!
struts1是Apache Jakarta项目 ,但是它的性能不怎么样,当时WebWork技术很好,但是由于它推出的晚,并且没有APACHE的名气大。所以还有一大部分人用。那时APACHE就想,我这么下去也不是办法,迟早被WEBWORK干掉。于是想了想,就把WEBWORK收购了。在 struts 和WebWork的技术基础上进行了合并,就是全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。因为Struts 2和Struts 1有着太大的变化,但是相对于WebWork,Struts 2只有很小的变化
只讲区别:
1,struts2是在webwork2的基础上发展而来的
2,struts2的耦合度很小 ,不依赖servletAPI 属于无侵入式设计
MVC面试题:有了stuts的mvc为什么还要spring的mvc
不管怎么说 你是去面试的 这样不太好吗 除非你自己想 out 了
springMVC是一项技术,struts的MVC是一种思想,springMVC更加简洁和方便
不知道从哪方面进行回答,因为没接触过spring mvc
你可以反问它,你每天都要拉屎,为什么还要吃饭?
1:spring3 mvc开发效率高于struts mvc
2:spring3 mvc可以认为已经100%零配置
3:strutsmvc是类级别的拦截, 一个类对应一个request上下文,
springmvc是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应
所以说从架构本身上 spring3 mvc就容易实现restful url
而struts mvc的架构实现起来要费劲
因为struts2 action的一个方法可以对应一个url
而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了
4:spring3mvc的方法之间基本上独立的,独享request response数据
请求数据通过参数获取,处理结果通过ModelMap交回给框架
方法之间不共享变量
而strutsmvc搞的就比较乱,虽然方法之间也是独立的,但其所有Action变量是共享的
这不会影响程序运行,却给我们编码 读程序时带来麻烦
5:由于Struts2需要针对每个Request进行封装,把Request,Session等Servlet生命周期的变量封装成一个一个Map,供给每个Action使用,并保证线程安全。所以在原则上,是比较耗费内存的。
有了struts mvc可以不用spring mvc 反之一样,spring mvc不爽的地方就是不如struts 接前台传来的参数方便,struts可以直接定义多个成员变量通过set方法来接参数,多个方法可以共享变量,但spring每个方法只能定义一个对象来接受前台参数而且仅仅是局部变量。
java struts2的面试题,如下,如何解?
让你写代码还是???
不分页 直接用循环显示到一个表中就行了啊
循环次数就是List.length 然后动态画到页面中就行了嘛
分页就控制每页多少个 然后显示到下一页就行了嘛
java常用框架面试题?
您好,对于你的遇到的问题,我很高兴能为你提供帮助,我之前也遇到过哟,以下是我的个人看法,希望能帮助到你,若有错误,还望见谅!。Struts,hibernate,Spring,mybatis,主要这几种,现在流行的是SpringMVC,面试题说不好,网上找,一找一大堆非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
1、什么是Spring?
Spring是个Java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。
2、Spring框架有哪些不同的模块?
核心容器模块、应用上下文模块Application context、AOP模块、JDBC抽象和DAO模块、O/R映射整合模块、Web模块、MVC框架模块。
3、一个简单的Spring应用程序包括什么?
这些应用程序像任何Java应用程序。它们是由多个类组成,每个类执行应用程序内的一个特定的功能。这些类的配置是通过一个XML文件向对方导入依赖。此XML文件描述如何配置类,称为Spring配置文件。
4、如何给Spring容器提供配置元数据?
有三种重要的方法给Spring 容器提供配置元数据:XML配置文件、基于注解的配置、基于Java的配置。
5、在Spring中如何注入一个Java集合?
Spring提供以下几种集合的配置元素:
类型用于注入一列值,允许有相同的值。
类型用于注入一组值,不允许有相同的值。
类型用于注入一组键值对,键和值都可以为任意类型。
类型用于注入一组键值对,键和值都只能为String类型。
6、在Spring框架中如何更有效地使用JDBC?
使用Spring JDBC框架,资源管理和错误处理的代价都会被减轻。所以开发者只需statements和queries从数据存取数据,JDBC也可以在Spring框架提供的模板类的帮助下更有效地被使用,这个模板叫JDBC Template 。
7、如何通过HibernateDaoSupport将Spring和Hibernate结合起来?
用Spring的SessionFactory调用LocalSessionFactory。集成过程分三步:
配置the Hibernate Session Factory、继承HibernateDaoSupport实现一个DAO、在AOP支持的事务中装配。
8、解释一下Spring MVC框架及其控制器
Spring配备构建Web应用的全功能MVC框架。Spring可以很便捷地和其他MVC框架集成,如Struts、Spring的MVC框架用控制反转把业务对象和控制逻辑清晰地隔离。它也允许以声明的方式把请求参数和业务对象绑定。
控制器提供一个访问应用程序的行为,此行为通常通过服务接口实现。控制器解析用户输入并将其转换为一个由视图呈现给用户的模型。Spring用一个非常抽象的方式实现了一个控制层,允许用户创建多种用途的控制器。
J2EE经典面试题及答案
J2EE经典面试题及答案
J2EE,使用Java技术开发企业级应用的一种事实上的工业标准,它是Java技术不断适应和促进企业级应用过程中的产物。下面为各位考生分享的是J2EE经典面试题及答案,希望对大家有所帮助!
1.MVC的各个部分都有那些技术来实现?如何实现?
答:MVC是Model-View-Controller的简写。"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), "View" 是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。
2.J2EE是什么?
答:Je22是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型(enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn tier)组件,web层和组件,Business层和组件,企业信息系统(EIS)层。
3.J2EE是技术还是平台还是框架?
答:J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。
J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。
4.STRUTS的应用(如STRUTS架构)
答:Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。 采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。 Struts有如下的主要功能:
一.包含一个controller servlet,能将用户的请求发送到相应的Action对象。
二.JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。
三.提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。
5.WEB SERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。
答:Web ServiceWeb Service是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。
JAXP(Java API for XML Parsing) 定义了在Java中使用DOM, SAX, XSLT的通用的接口。这样在你的程序中你只要使用这些通用的接口,当你需要改变具体的实现时候也不需要修改代码。
JAXM(Java API for XML Messaging) 是为SOAP通信提供访问方法和传输机制的API。
WSDL是一种 XML 格式,用于将网络服务描述为一组端点,这些端点对包含面向文档信息或面向过程信息的消息进行操作。这种格式首先对操作和消息进行抽象描述,然后将其绑定到具体的网络协议和消息格式上以定义端点。相关的具体端点即组合成为抽象端点(服务)。
SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML编码信息的轻量级协议。
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。
6.C/S 与 B/S 区别:
答:有如下八个方面的不同:
(1)硬件环境不同:
C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.
B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行
(2)对安全要求不同
C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.
B/S 建立在广域网之上, 对安全的控制能力相对弱, 可能面向不可知的用户。
(3)对程序架构不同
C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.
B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟.
(4)软件重用不同
C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.
B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子
(5)系统维护不同
C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统
B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
(6)处理问题不同
C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统
B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.
(7)用户接口不同
C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高
B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.
(8)信息流不同
C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低
B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更像交易中心。
7.什么是JNDI
用Struts2开发和用jsp、servlet开发有什么区别?(面试题,求详细答案,谢谢)
xbwenku1 说的很对
其实在开发上没什么区别就是struts2将MVC已经分好层了,而jsp+servlet还需要自己去维护MVC
具体来说 没什么区别,Struts2 只是实现了 MVC的开发模式,实现了相当的功能为我们开发中省去了不少麻烦,而 jsp,servlet 就需要我们自己去维护MVC的结构,开发麻烦
分层更清晰,更明确,更易编写和维护
你好:
1. Struts 2是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts
2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet
API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts
2有着太大的变化,但是相对于WebWork,Struts 2只有很小的变化。
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
希望可以帮助到你