`

常见关于struts的面试题

    博客分类:
  • j2ee
阅读更多
1. Struts的工作原理
       在Struts中,用户的请求一般以*.do作为请求服务名,所有的*.do请求均被指向ActionSevlet, ActionSevlet根据Struts-config.xml中的配置信息,将用户请求封装成一个指定名称的FormBean,并将此 FormBean传至指定名称的ActionBean,由ActionBean完成相应的业务操作,如文件操作,数据库操作等。每一个*.do均有对应的 FormBean名称和ActionBean名称,这些在Struts-config.xml中配置。

2. Struts优点与缺点
  Struts是开源软件,使开发者能更深入的了解其内部实现机制。
  Struts 优点:业界"标准"(很多成功案例),学习资源丰富。
  Struts的优点主要集中体现在两个方面:Taglib和页面导航。
         a、利用Struts提供的taglib可以大大节约开发时间。
         b、维护扩展比较方便。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。
         c、表现与逻辑分离
         d、表单验证解决了请求数据的验证问题,增强了系统健壮性。
         e、便于团队开发

  Struts缺点:a、大量的使用标签,对于初学者难度较大。
                     b、ActionForms使用不便、无法进行单元测试(StrutsTestCase只能用于集成)

3. Struts提供了几个标签库?都是什么标签库?
   Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。

   HTML 标签      用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单
   Bean 标签      在访问JavaBeans 及其属性,以及定义一个新的bean 时使用
   Logic 标签      管理条件产生的输出和对象集产生的循环
   Template 标签      随着Tiles框架包的出现,此标记已开始减少使用
   Nested 标签      增强对其他的Struts 标签的嵌套使用的能力

  < Html:form>, < html:submit>, < Html:button>, <Html:text>, <Html:select>
  <logic:iterate>, <logic:forward>, <logic:redirect>, <logic:iterate>, <logic:present>, <logic:empty> ... 参考: struts Logic标签说明
  <bean:write>, <bean:message>, <bean:parameter>, <bean:size>
 
   4. Tiles框架是什么?
Tiles框架为创建Web页面提供了一种模板机制,它能将网页的布局和内容分离。


   5.谈谈HashMap和Hashtable的区别。
答: HashMap是轻量级的(线程不安全的,效率高的)集合,Hashtable是重量级的
(线程安全的,效率低的)集合。
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,
因为它是同步的。



6.什么是中间件?
中间件就是程序中可织入的,可重用的,与业务逻辑无关的各种组件。
中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中
间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,
应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助
用户灵活、高效地开发和集成复杂的应用软件。
在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立
的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中
间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
分类:数据访问中间件,远程调用中间件,消息中间件,交易中间件,对象中间件。
举例:
1,RMI(Remote Method Invocations, 远程调用)
第 3 页 共 33 页
2,Load Balancing(负载均衡,将访问负荷分散到各个服务器中)
3,Transparent Fail-over(透明的故障切换)
4,Clustering(集群,用多个小的服务器代替大型机)
5,Back-end-Integration(后端集成,用现有的、新开发的系统如何去集成遗留的系统)
6,Transaction事务(全局/局部)全局事务(分布式事务)局部事务(在同一数据库
联接内的事务)
7,Dynamic Redeployment(动态重新部署,在不停止原系统的情况下,部署新的系统)
8,System Management(系统管理)
9,Threading(多线程处理)
10,Message-oriented Middleware面向消息的中间件(异步的调用编程)
11,Component Life Cycle(组件的生命周期管理)
12,Resource pooling(资源池)
13,Security(安全)
14,Caching(缓存)



7.你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用?
答:
MVC设计模式(应用观察者模式的框架模式)
M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层
(Independent of presentation)。
V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执
行结果。
C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,
接受视图层发出的事件,并重绘视图
MVC框架的一种实现模型
模型二(Servlet-centric):
JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图
和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处
理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。
StrutsMVC框架(Web application frameworks)
Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。
Struts提供了一些组件使用MVC开发应用程序:
Model:Struts 没有提供model 类。这个商业逻辑必须由Web 应用程序的开发者以
JavaBean或EJB的形式提供

View:Struts提供了action form创建form bean, 用于在controller和view间传输数
据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基
础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,
可用于JSP中。
Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来
调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定
义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入
字段形成Action form,然后调用一个Action控制器。Action控制器中提供了model的逻
辑接口。

8.类的核心特性有哪些?
类具有封装性、继承性和多态性。
封装性:
类的封装性为类的成员提供公有、缺省、保护和私有等多级访问权限,目的是隐藏类
中的私有变量和类中方法的实现细节。
继承性:
类的继承性提供从已存在的类创建新类的机制,继承(inheritance)使一个新类自
动拥有被继承类(父类)的全部成员。
多态性:
类的多态性提供类中方法执行的多样性,多态性有两种表现形式:重载和覆盖。



9.、请说出几个常用的异常类
答:NullpointException(空指针异常)
ClassNotFoundException(类找不到异常)
ClassCastException(类型转换异常)
IllegalArgumentException(非法参数异常)
ArithmeticException(算术异常)
NumberFormatException(数据格式异常)
IndexOutOfBoundsException(数组下标越界异常)
IllegalStateException(非法语句异常)
分享到:
评论

相关推荐

    JAVA struts2 框架 面试题

    JAVA Struts2 框架面试题解析 本文将详细解析 JAVA Struts2 框架相关知识点,涵盖异常处理、Servlet 生命周期、集合框架、HashMap 和 Hashtable 的区别、final、finally 和 finalize 的区别、sleep 和 wait 的区别...

    spring、Struts2、hibernate常见面试题

    Spring、Struts2、Hibernate面试题详解 本文将详细解释 Spring、Struts2、Hibernate 面试题中的知识点,涵盖了 MVC 模式、Struts1.2 和 Struts2.0 的区别、单例模式、Servlet 依赖、可测试性、项目中使用 SSH 的...

    Struts2+hibernate+spring的常见面试题

    1、什么是Struts2 ...我们可以创建自己的拦截器实现常见任务。 Struts2中自带了很多的标签,并使用OGNL表达式语言。我们可以创造我们自己的类型转换器来呈现的结果页面。结果页面可以JSP和FreeMarker的模板。

    java面试题,J2EE面试题 笔试题

    6、java常见面试题 7、java程序员面试宝典 8、java面试题及答案 9、java面试题编程篇 10、Oracle面试题 11、Oracle企业面试题集锦 12、Spring面试题 13、SSH面试题 14、Strut+Spring+Hibernate面试题 15、张孝祥整理...

    Struts+Hibernate+Spring面试题合集及答案常见题目经典精选汇总大全.docx

    这些面试题涵盖了Hibernate、Struts和Spring的主要概念、工作原理和最佳实践,深入理解和掌握这些知识点对于Java开发者来说至关重要。在实际面试中,除了基础理论知识,面试官还会关注开发者在项目中如何应用这些...

    Spring,hibernate,struts常见的面试笔试题汇总

    Spring,hibernate,struts常见的面试笔试题汇总

    Struts精华面试题归纳

    在面试中,关于Struts的常见问题可能包括但不限于:Struts如何实现MVC,Action和ActionForm的角色,Struts1与Struts2的区别,Struts2的拦截器工作原理,以及如何配置和使用Struts的验证框架等。了解这些知识点,对于...

    Struts+Hibernate+Spring常见面试题

    【面试题总结】 1. 了解Struts的工作流程和优缺点,理解Action的线程安全性问题。 2. 理解MVC模式,知道Struts如何实现MVC,以及MVC的组成部分。 3. 熟悉Spring的AOP和IOC概念,理解它们在Spring中的应用。 4. 掌握...

    Java常见面试题208道.docx

    面试题包括以下十九部分:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql...

    框架面试题,集合了String,struts2,springmvc

    框架面试题,集合了String,struts2,springmvc 在本文中,我们将详细讨论框架面试题,涵盖了String、struts2和springmvc等多个方面的知识点。 首先,让我们从IOC容器开始。IOC容器是具有依赖注入功能的容器,是...

    SSH面试题,struts,hibernate,Spring面试题

    在IT行业的面试中,SSH(Struts、Hibernate、Spring)框架是常见的面试主题,因为这三大框架在企业级Java应用开发中占据着核心地位。以下是对这些框架的一些关键知识点的详细解释: 1. **Hibernate**: - **工作...

    java基础面试题.pdf

    面试题集共分为十部分来介绍,对于找工作非常有用,主要是java方面的,不仅是java的一些基础知识,还包括常见的一些面试题,如数据结构& 算法& 计算机基础、struts\spring\hibernate\Ejb等。

    struts+spring+hibernate面试题

    在Java Web开发中,Struts、Spring和Hibernate是最常见的三大框架,它们...以上就是关于Struts、Spring和Hibernate面试题的详细解析,涵盖了这三大框架的关键概念和使用技巧,对于理解和解答相关面试问题非常有帮助。

    javastuts2面试题

    关于struts2的常见面试题 非常好!

    SSH2面试试题

    SSH2面试试题主要涵盖Struts 2、Hibernate和Spring这三个框架的相关知识,这些技术是Java企业级应用开发中常用的三大框架。以下是对这些面试题目的详细解析: 1. Struts 2框架来源于WebWork和XWork。WebWork是基于...

    Java基础、Java集合、多线程、JDBC、HTTP、JSP、Servlet、Struts面试题汇总(附答案).docx

    在Java编程中,面试通常会涉及到多个核心概念,包括基础语法、...以上就是Java基础、集合、多线程、JDBC、HTTP等相关知识点的详解,这些内容在面试中非常常见,理解并掌握它们对于成为一名合格的Java开发者至关重要。

    struts2+hirbate+spring面试题

    Struts2、Spring和Hibernate(SSH)是Java企业级开发中的三大主流框架,它们共同构建了一个强大的MVC(模型-视图-...以上内容涵盖了SSH面试中常见的问题,理解并熟练掌握这些知识点对于提高面试成功的机会大有裨益。

    java面试题以及技巧

    │ J2EE综合--Struts常见错误的全面汇总.txt │ java程序员面试资料.zip │ JAVA笔试题(上海释锐).pdf │ MIME简介.txt │ SCJP试题详解.pdf │ SQL面试题_心灵深处.htm │ Struts+Hibernate+Spring轻量级J2EE...

    2010年最完整SSH面试题(Struts+Spring+Hibernate面试题问答23题,选择30题) 问答23题,选择30题(附答案)

    以下是对这些框架在面试中常见的问题及其答案的详细解析: 1. **Hibernate工作原理及为什么要用**: - Hibernate通过读取配置文件和映射信息创建SessionFactory,然后在需要时打开Session,处理事务,进行持久化...

    java最新面试题 hibernate,struts,sql,java,spring

    在IT行业中,尤其是在Java开发领域,面试题常常围绕着核心技术和框架进行,如Hibernate、Struts、SQL、Java和Spring。这些技术是构建J2EE应用程序的基础,它们各自扮演着重要的角色。 首先,让我们深入了解一下Java...

Global site tag (gtag.js) - Google Analytics