《2022年2022年浪潮面试题 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年浪潮面试题 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1. 自我介绍?2. 你有什么样的爱好?3. 简述你的一个项目(项目介绍,功能实现,你的职责)?其中会问到一些具体细节。4. Weblogic 应用和部署?它和TomCat 有什么不同?怎样把在TomCat 中的 Web 应用程序部署到 WebLogic 中?Jsp的服务器容器,WebLogic 是甲骨文公司(Oracle)推出的一款web 服务器,主要用于JAVA 开发的 web 系统。把你开发好的工程(比如 hello.war ,hello.jar 或者 hello.ear )从 webapps 目录下 复制出来然后在 weblogic 部署工程 deploy 的时候按 browse 选中
2、你这个复制出来的war包 或者 jar 文件就行了支持面向服务架构的开发和部署l 通过可靠消息传递基础架构为业务提供事件平台l 通过简化、可靠的管理功能降低客户的拥有总成本l 为核心应用提供真正的 “ 零宕机 ” 服务性能:WLS 业界性能评测最好的J2EE 服务器规范支持:l WLS 全面支持 J2EE 的标准规范和其他标准规范 (Web Service , SSL, xml 等) ,同时 BEA 为众多规范组织的制定者之一,积极参与规范的制定l Tomcat 只支持部分 J2EE 标准,应用局限性强 ,不能够安全稳定的支持大并发技术服务支持:l BEA :完善的售后支持l Tomcat :
3、没有售后支持客户群体:l BEA :全球 13000企业级用户的证明l Tomcat :很少企业级用户可扩展性l WLS :集群机制,支持分布式的应用;Tomcat :不支持可靠性l WLS :支持 Failover ;Tomcat :不支持管理l WLS :Web 控制台进行组件、 JDBC、管理和配置; Tomcat :不支持部署l WLS :开发模式下,不用重起部署新Web, EJB 应用; Tomcat :不支持开发工具:l WLS:有自己的开发工具Workshop ,并且主流 IDE 支持;Tomcat :没有自己的开发工具名师资料总结 - - -精品资料欢迎下载 - - - - -
4、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 扩展性l WLS: 可以轻松扩展为支持Portal 、 Integration 的 WebLogic Platform上;Tomcat 不支持把你开发好的工程(比如 hello.war ,hello.jar 或者 hello.ear )从 webapps 目录下 复制出来然后在 weblogic 部署工程 deploy 的时候按 browse 选中你这个复制出来的war包 或者 jar 文件就行了weblogic 是收费的,而且很高。他是
5、EJB 服务器,和websphere 一个档次的 .tomcat 是免费的,但是只实现了servlet/jsp 引擎。不支持 EJB 等企业级应用。 当然apache也有一个开源的Java EE 服务器,名字我不说了。JBOSS 则处于中间,支持Java EE,而且免费。Tomcat 只是一个单纯的动态页面服务器项目。它的最大意义在于它的代码最符合标准,它只是实现一个优雅的动态页面服务器,并没有其它目的JBoss 开源,软件免费,收费的是服务。JBoss 提供全套的开源J2EE 解决方案,整合了若干项目。动态页面服务部分其实就是一个TomcatWeblogic 本身强调的是性能和稳定性等, 是
6、一套完整的商业软件如Dr_juio 所说,WebLogic 和 Tomcat 根本就不是一个等级的。就像用一台服务器和一个CPU 比较WebLogic 和 Tomcat 根本就不是一个等级的.JBoss 也有收费版本的,功能更强大 ,我可以明确的告诉你免费的都或多或少差强人意.Tomcat 还不如 Resin 5. 你都书写过什么样的文档?这些文档都起到什么作用?6. 你使用过的测试方法?使用过什么测试工具?白盒测试是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行, 按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能
7、,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。白盒测试常用工具有:Jtest、VcSmith 、Jcontract、C+ Test、CodeWizard、logiscope。黑盒测试是根据软件的规格对软件进行的测试,这类测试不考虑软件内部的运作原理,因此软件对用户来说就像一个黑盒子。软件测试人员以用户的角度,通过各种输入和观察软件的各种输出结果来发现软件存在的缺陷,而不关心程序具体如何实现的一种软件测试方法。黑盒测试常用工具有:AutoRunner、 winrunner 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
8、 - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 7.如果在项目测试过程中出现问题,你是怎么解决的?8请你谈谈项目管理?以及你是怎么管理项目的?9你认为什么样的程序员才是一个合格的程序员?10叙述一下胖客户端程序的开发过程?11叙述一下MVC 中的业务逻辑层的开发过程?MVC 英文即 Model-View-Controller ,即把一个应用的输入、处理、输出流程按照 Model、View、Controller 的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。视图视图(View)代表用户交互界面,对于Web 应用来说,可
9、以概括为HTML 界面,但有可能为 XHTML 、XML 和 Applet 。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC 设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求, 而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model) 处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。模型模型(Model) :就是业务流程 /状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据, 并返回最终的处理结果。业务模型的设计可以说
10、是MVC 最主要的核心。 目前流行的 EJB 模型就是一个典型的应用例子, 它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件, 但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。 对一个开发者来说,就可以专注于业务模型的设计。MVC 设计模式告诉我们,把应用的模型按一定的规则抽取出来, 抽取的层次很重要, 这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC 并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC 定义了一个
11、顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。控制控制(Controller) 可以理解为从用户接收请求, 将模型与视图匹配在一起, 共同完成用户的请求。 划分控制层的作用也很明显,它清楚地告诉你, 它就是一个名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
12、- - 第 3 页,共 9 页 - - - - - - - - - 分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。 例如, 用户点击一个连接, 控制层接受请求后 , 并不处理业务信息, 它只把用户的信息传递给模型,告诉模型做什么, 选择符合要求的视图返回给用户。 因此,一个模型可能对应多个视图,一个视图可能对应多个模型。模型、视图与控制器的分离, 使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。 因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导
13、致显示的更新。12为什么要把数据库的连接打开/关闭放在中间控制层Servlet 中?servlet 是在 服务器 上运行的小 程序 。这个词是在Java applet 的环境中创造的,Java applet 是一种当作单独文件跟网页一起发送的小程序 ,它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。服务器 上需要一些 程序 ,常常是根据用户输入访问数据库 的程序。这些通常是使用公共网关接口 (CGI(Common Gateway Interface) )应用 程序 完成的。然而,在服务器 上运行 Java,这种程序 可使用 Java 编程语言实现。 在通信量大的
14、服务器上,Javaservlet 的优点在于它们的执行速度更快于CGI 程序 。各个用户请求被激活成单个程序 中的一个线程,而无需 创建单独的进程,这意味着服务器 端处理请求的 系统开销 将明显降低。Servlet 的主要功能在于交互式地浏览和修改数据,生成动态Web 内容。这个过程为:客户端 发送请求至 服务器 端;服务器 将请求信息发送至Servlet Servlet 生成响应内容并将其传给服务器 。响应内容动态生成,通常取决于客户端的请求服务器 将响应返回给客户端Servlet 看起来像是通常的Java 程序 。Servlet 导入特定的属于Java ServletAPI 的包。因为是对
15、象 字节码 ,可动态地从网络加载,可以说Servlet 对 Server 就如同 Applet 对 Client 一样,但是,由于 Servlet 运行于 Server 中, 它们并不需要一个图形用户界面。 从这个角度讲, Servlet也被称为FacelessObject。一个 servlet 就是 Java编程语言中的一个类,它被用来扩展服务器 的性能, 服务器 上驻留着可以通过 “ 请求 -响应 ” 编程模型来访问的应用程序 。虽然 servlet 可以对任何类型的请求产生响应,但通常只用来扩展Web 服务器 的应用程序。只用 Servlet 的成员变量来存放那些不会改变的数据。有些数据
16、在Servlet 生命周期中不发生任何变化,通常是在初始时确定的,这些数据可以使用成员变量保存,如数据库 连接名称、其他资源的路径等13你们是怎么管理项目中的配置文件的?由谁管理?当配置文件有改动的时候,你们是怎么管理的?14你平时都喜欢上哪些网站?15你都看什么的课外书籍?书名、作者、出版社?16你玩过游戏么?是否玩过大型网络游戏?17你是怎么开发自己模块的?怎么样与其他模块整合?3DMAX OpenGL c+ 18你大学里学了哪些课程?平时都参加些什么活动?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
17、 - - - - - 第 4 页,共 9 页 - - - - - - - - - 19你开发的javaBean 怎么样 View 层交互?以及你是怎么样传递信息的?是使用什么传递信息?传递的是什么东西?struts中的 formbean 其实是 domainobject, 负责从页面收集数据并向下层传递,属于你说的传递参数作用是一致的。而真正和DB打交道,与 DB字段一一对应的是dataobject ,它才是与 DB真正打交道的。看 MVC 的示意图 ,MODEL 层是不和 view 层直接打交道的。javabean 是定义在 model 层的,但是 struts里 V-C之间有了一个 bea
18、n,就是说的 formbean,这里的 formbean 是一个 javabean ,可起的作用不是javabean 的功能,应该说是javabean 功能之一,只是传递参数而已。事实上, struts为了能实现 MVC 的功能 不得已而加了一个没有进化好的formbean!你看 struts2里就没有了 formbean javaBean 在 MVC 设计模型中是 model ,又称模型层,在一般的程序中,我们称它为数据层, 就是用来设置数据的属性和一些行为,然后我会提供获取属性和设置属性的get/set 方法JavaBean 是一种 JAVA语言写成的可重用组件。为写成JavaBean,类
19、必须是具体的和公共的,并且具有无参数的构造器 。JavaBean 通过提供符合一致性 设计模式的公共方法将内部域暴露成员属性。众所周知, 属性名称符合这种模式, 其他 Java 类可以通过自身机制发现和操作这些JavaBean 的属性。20、对 MVC 模式的理解与你在应用中的主要职责21、Unix 服务器的类型,linux 名称,型号,版本,基本使用22、编程中的文档,是否有测试,谁测试?是怎样测试的?你们了解哪些并用到哪些测试工具。23、怎样是一个好的编程团队,你怎样与大家相处24、怎样把你的项目移到weblogic 服务器下25、你的项目MVC 实现说明移动医疗的三层结构模型26、 c#
20、与 vbscript 的区别单独文档27、怎样使用数据库连接Bean 怎样使用业务逻辑bean 他们之间关系28、对青鸟课程的看法与评价29、怎样看待开源思想struts是开源软件 。使用 Struts的目的是为了帮助我们减少在运用MVC 设计模型来开发 Web应用的时间。如果我们想混合使用Servlets和 JSP的优点来建立可扩展的应用, struts是一个不错的选择。30、项目为什么没有使用struts 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - -
21、 - - - - - - - struts是开源软件 。使用 Struts的目的是为了帮助我们减少在运用MVC 设计模型来开发 Web应用的时间。如果我们想混合使用Servlets和 JSP的优点来建立可扩展的应用, struts是一个不错的选择。这是将 struts 组件结合在一起的东东:struts-config.xml 。默认值WEB-INFstruts-config.xml。配置文件 可以定义:1.全局转发2.ActionMapping 类 帮助控制器将请求映射到操作3.ActionForm bean 显示模块数据4.JDBC 数据源配置全局转发全局转发用来在JSP页之间创建逻辑名称映
22、射。转发都可以通过对调用操作映射的实例来获得,例如:actionMappingInstace.findForward ( “ logicalName”) ;31、 weblogic 服务器的使用方法32、 oracle web 服务器的使用我现在正在做这个用 Oracle做 Web 服务器有两种方法:(1)Oracle Application server 4. x + Oracle 后台数据库(2)Oracle Web DB + Oracle后台数据库我用的是( 2) ,用( 1)可以建立较复杂的应用,Oracle的相关插件可以支持J2EE ,JSP 和 ASP 等等,属于大型应用( 2)可
23、以实现快速应用开发,实际上(2)是(1)的特殊情况,因为Oracle Web DB 结构实际上是只含有一个PL/SQL插件的 Oracle Application server,如果你的网站规模不大,建议使用(2) 。33、配制文件是怎么同步的?. 启动 Windows 服务: Forefront Identity Manager Service(如果 ForeFront Identity Manager Synchronization Service 没有启动也需启动)。有可能需要重启1. 进入 管理中心应用程序管理服务应用程序管理服务器上的服务,启动服务:用户配置文件同步服务;3. 进入
24、管理中心应用程序管理服务应用程序管理服务应用程序,点击进入:User Profile Service Application,在“ 同步” 组下依次操作:1) 进入 配置同步连接,并创建连接。 (如果没有启动 “Forefront Identity Manager Service ”否则会报错: “MOSS MA not found ”。)注意:【连接名称】不能用中文,否则会报错:“Unable to process Create message” 。(参见: Donaldxu 的博客文章。)2)依次进入配置同步设置和 配置同步计时器作业,并完成配置。3)进入 启动配置文件同步,启动同步服务。
25、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - - - - - - - - 注:在 管理配置文件服务 : User Profile Service Application 页面右侧信息栏可看到同步状态。34、怎样才是团队里的一个很好的队员?怎样做一个有效的项目团队成员?这是一个鲜为人见而又发人深思的问题。长久以来,人们都认为,项目团队出问题了,肯定是项目经理的责任,但责任归责任,原因归原因。毕竟成员不合作, 项目经理管理得最好,也是徒劳。那么, 怎么做一个
26、有效地项目团队成员?我以为, 由于成员是被管理的对象,所以可以从管理的五大职能来分析。首先,从计划方面来说,每个成员作为人力资源,会被配置到具体的工作上,如何实现最优配置,不能光靠上级的知人善任,成员必须了解自己的优点和缺点,主动要求扬长避短,另外,成员作为作业者,最为了解计划盲点和难点,应该提出意见,帮助修改,如此协同完成计划,计划才能高效而合理。再者,从组织方面来说,成员是被组织的对象,但是成员肯定特性各异,要形成和谐而高效的组织,不能光靠领导的英明决策,成员还得自告奋勇、出谋划策,给领导提供决策支持,当然成员还是得作出自我牺牲,积极融入组织。再再者,从激励方面来说, 成员必须得真心诚意的
27、被激励到,不能假意逢迎, 这要求成员首先得有正确的、阳光的需求,并且恰如其分的表现出来,好让上级能针对需求把握尺度来有效激励。另外,从控制方面来说,成员首先要自觉,自身必须遵守规章制度,积极高效的完成任务,然后必须得心悦诚服的被控制到,以立竿见影的效果和热情洋溢的态度来应激上级的控制,同时,要以团队利益为重,主动配合别人的工作,让上级减少无谓的协调。最后,从领导方面来说,成员得把握好分寸的服从领导。既不能阳奉阴违,也不能唯唯诺诺,最好是能提出建设性的意见,改善领导。总而言之,要做一个卓有成效的团队成员,就得以大局为重,将心比心,为他人着想,既配合又指导,既服从又协同,在计划、组织、激励、控制、
28、领导五大职能上,让项目经理行之有效,让团队协调运作。如此,项目团队成员自然是有效的,而且是高效的。用户可以使用JavaBean 将功能、处理、值、数据库访问和其他任何可以用java 代码创造的对象进行打包, 并且其他的开发者可以通过内部的JSP页面、Servlet、其他 JavaBean、applet程序 或者应用来使用这些对象。用户可以认为JavaBean 提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。JavaBean可分为两种:一种是有用户界面(UI,User Interface)的 JavaBean;还有一种是没有用户界面,主要负责处理事务(如数据运算 ,操纵数据库)的Jav
29、aBean。JSP通常访问的是后一种 JavaBean。JavaBean 是可复用的平台独立的软件 组件,开发者可以在软件构造器 工具中对其直接进行可视化操作。软件 构造器 工具可以是Web 页面构造器、可视化应用程序 构造器、 GUI 设计构造器或 服务器应用程序构造器。有时,构造器 工具也可以是一个包含了一些bean 的复合文档 的文档 编辑器 。JavaBean 可以是简单的GUI 要素,如按钮或滚动条;也可以是复杂的可视化软件组件 ,如数据库 视图 ,有些 JavaBean是没有 GUI 表现形式的, 但这些 JavaBean仍然可以使用 应用程序构造器 可视化地进行组合。一个 Jav
30、aBean 和一个 Javaapplet 相似,是一个非常简单的遵循某种严格协议的Java 类。每名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 9 页 - - - - - - - - - 个 JavaBean的功能都可能不一样,但它们都必须支持以下特征。一 个bean 没 有 必 须 继 承 的 特 定 的 基 类 或 接 口 。 可 视 化 的bean 必 须 继 承 的 类 是java.awt.Component,这样它们才能添加到可视化容器中去,非可视化bean
31、则不需要继承这个类。有许多bean,无论是在 应用程序构造器工具中,还是在最后创建好的应用程序中,都具有很强的可视化特征,但这并非每个bean 必须的特征。在使用 Java编程 时,并不是所有 软件 模块都需要转换成bean。Bean比较适合于那些具有可视化操作和定制特性的软件组件 。从基本上说,JavaBean 可以看成是一个黑盒子,即只需要知道其功能而不必管其内部结构的软件 设备。黑盒子只介绍和定义其外部特征和与其他部分的接口,如按钮、窗口、颜色、形状、句柄等。JavaBean 图册 (6 张)通过将系统看成使用黑盒子关联起来的通讯网络,我们可以忽略黑盒子内部的系统细节,从而有效地控制系统
32、的整体性能。作为一个黑盒子的模型,JavaBean有 3 个接口面,可以独立进行开发。1. JavaBean可以调用的方法。2. JavaBean提供的可读写的属性。3. JavaBean向外部发送的或从外部接收的事件。组成一个 JavaBean由 3 部分组成:(1) 属性( properties)JavaBean提供了高层次的属性概念,属性在JavaBean 中不只是传统的面向对象的概念里的属性,它同时还得到了属性读取和属性写入的API 的支持。属性值可以通过调用适当的 bean 方法进行。比如,可能bean 有一个名字属性,这个属性的值可能需要调用String getName()方法读取
33、,而写入属性值可能要需要调用void setName(String str)的方法。每个 JavaBean 属性通常都应该遵循简单的方法命名规则,这样应用程序构造器工具和最终用户才能找到JavaBean提供的属性, 然后查询或修改属性值,对 bean进行操作。JavaBean还可以对属性值的改变作出及时的反应。比如一个显示当前时间的JavaBean,如果改变时钟的时区属性,则时钟会立即重画,显示当前指定时区的时间。(2) 方法( method)JavaBean中的方法就是通常的Java 方法,它可以从其他组件或在脚本环境中调用。默认情况下, 所有 bean 的公有方法都可以被外部调用,但bea
34、n 一般只会引出其公有方法的一个子集。由于 JavaBean 本身是Java 对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean 严格遵守面向对象的类设计逻辑,不让外部世界访问其任何字段(没有public 字段) 。这样,方法调用是接触Bean 的唯一途径。但是和普通类不同的是,对有些Bean 来说,采用调用实例方法的低级机制并不是操作和使用 Bean 的主要途径。 公开 Bean 方法在 Bean 操作中降为辅助地位,因为两个高级Bean特性 -属性和事件是与Bean交互作用的更好方式。因此 Bean 可以提供要让客户使用的public 方法,但应当认识到, Bean 设计人
35、员希望看到绝大部分Bean 的功能反映在属性和事件中,而不是在人工调用和各个方法中。(3) 事件( event)Bean与其他软件组件交流信息的主要方式是发送和接受事件。我们可以将bean的事件名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - 支持功能看作是集成电路中的输入输出引脚:工程师将引脚连接在一起组成系统,让组件进行通讯。 有些引脚用于输入, 有些引脚用于输出, 相当于事件模型中的发送事件和接收事件。事件为 JavaBean 组件提供了一种发送通知给其他组件的方法。在 AWT 事件模型中, 一个事件源可以注册事件监听器对象。当事件源检测到发生了某种事件时,它将调用事件监听器对象中的一个适当的事件处理方法来处理这个事件。由此可见, JavaBean 确实也是普通的Java对象, 只不过它遵循了一些特别的约定而已。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -
限制150内