电信JavaOracle程序设计笔试参考题.doc_第1页
电信JavaOracle程序设计笔试参考题.doc_第2页
电信JavaOracle程序设计笔试参考题.doc_第3页
电信JavaOracle程序设计笔试参考题.doc_第4页
电信JavaOracle程序设计笔试参考题.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 作用域public,private,friendly,protected,以及不写时的区别作用域 当前类 同一package 子孙类 其他package public protected friendly private 2 ArrayList和Vector的区别,从同步性及数据增长两方面说明;HashMap和Hashtable的区别,从历史原因,同步性,值三个方面说明答:就ArrayList与Vector主要从二方面来说. 一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的 二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半 就HashMap与HashTable主要从三方面来说。 一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现 二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的 三.值:只有HashMap可以让你将空值作为一个表的条目的key或value。3 jsp有哪些内置对象?作用分别是什么 ?A request B static C pageContext D session E application F response G spring H servlet 答:JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): request 用户端请求,此请求会包含来自GET/POST请求的参数 response 网页传回用户端的回应 pageContext 网页的属性是在这里管理 session 与请求有关的会话期 application servlet 正在执行的内容 out 用来传送回应的输出 config servlet的构架部件 page JSP网页本身 exception 针对错误网页,未捕捉的例外。4 jsp有哪些动作?作用分别是什么 ?答:JSP共有以下6种基本动作 jsp:include:在页面被请求的时候引入一个文件。 jsp:useBean:寻找或者实例化一个JavaBean。 jsp:setProperty:设置JavaBean的属性。 jsp:getProperty:输出某个JavaBean的属性。 jsp:forward:把请求转到一个新的页面。 jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记。5 web.xml中能未ActionServlet指定一个配置文件,但是在实际的应用开发过程中,可能会有些麻烦。因为许多开发人员都可能同时需要修改配置文件,但是配置文件只能同时被一个人修改,这样肯定会造成一定程度上的资源争夺,势必会影响开发效率和引起开发人员的抱怨。如何解决这个并行开发的问题,并简单写出配置文件格式?6 写出常用的jstl标签有哪几类,每一类至少列举两种(写出名称即可)?通用标签 判断标签 迭代标签 URL相关的标签 查询标签7 写一个java调用存储过程的例子,存储过程proc_out有游标返回,游标中有一个字段name将其取出放入vector即可?8 介绍JAVA中的Collection FrameWork(包括如何写自己的数据结构)?Collection List LinkedList ArrayList Vector Stack Set Map Hashtable HashMap WeakHashMap Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements) Map提供key到value的映射。9 MVC的各个部分都有那些技术来实现?如何实现?答:MVC是ModelViewController的简写。Model 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), View 是应用的表示面(由JSP页面产生),Controller 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。10 详述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属性、国际化的提示和消息。12 简述Partition的适用的情况?在O普通表变为分区表将已存在数据的普通表转变为分区表,没有办法通过修改属性的方式直接转化为分区表,必须通过重建的方式进行转变,一般可以有三种方法,视不同场景使用:用例:方法一:利用原表重建分区表。 CREATE TABLE T (ID NUMBER PRIMARY KEY, TIME DATE); INSERT INTO TSELECT ROWNUM, SYSDATE - ROWNUM FROM DBA_OBJECTS WHERE ROWNUM = 5000;COMMIT;CREATE TABLE T_NEW (ID, TIME) PARTITION BY RANGE (TIME) (PARTITION P1 VALUES LESS THAN (TO_DATE(2000-1-1, YYYY-MM-DD), PARTITION P2 VALUES LESS THAN (TO_DATE(2002-1-1, YYYY-MM-DD), PARTITION P3 VALUES LESS THAN (TO_DATE(2005-1-1, YYYY-MM-DD), PARTITION P4 VALUES LESS THAN (MAXVALUE)AS SELECT ID, TIME FROM T; RENAME T TO T_OLD; RENAME T_NEW TO T; SELECT COUNT(*) FROM T; COUNT(*)-5000 SELECT COUNT(*) FROM T PARTITION (P1); COUNT(*)-2946 SELECT COUNT(*) FROM T PARTITION (P2); COUNT(*)-731 SELECT COUNT(*) FROM T PARTITION (P3); COUNT(*)-1096 优点:方法简单易用,由于采用DDL语句,不会产生UNDO,且只产生少量REDO,效率相对较高,而且建表完成后数据已经在分布到各个分区中了。 不足:对于数据的一致性方面还需要额外的考虑。由于几乎没有办法通过手工锁定T表的方式保证一致性,在执行CREATE TABLE语句和RENAME T_NEW TO T语句直接的修改可能会丢失,如果要保证一致性,需要在执行完语句后对数据进行检查,而这个代价是比较大的。另外在执行两个RENAME语句之间执行的对T的访问会失败。 适用于修改不频繁的表,在闲时进行操作,表的数据量不宜太大。 方法二:使用交换分区的方法。 Drop table t;CREATE TABLE T (ID NUMBER PRIMARY KEY, TIME DATE); INSERT INTO TSELECT ROWNUM, SYSDATE - ROWNUM FROM DBA_OBJECTS WHERE ROWNUM = 5000;COMMIT;CREATE TABLE T_NEW (ID NUMBER PRIMARY KEY, TIME DATE) PARTITION BY RANGE (TIME) (PARTITION P1 VALUES LESS THAN (TO_DATE(2005-9-1, YYYY-MM-DD), PARTITION P2 VALUES LESS THAN (MAXVALUE); ALTER TABLE T_NEW EXCHANGE PARTITION P1 WITH TABLE T; RENAME T TO T_OLD; RENAME T_NEW TO T; 优点:只是对数据字典中分区和表的定义进行了修改,没有数据的修改或复制,效率最高。如果对数据在分区中的分布没有进一步要求的话,实现比较简单。在执行完RENAME操作后,可以检查T_OLD中是否存在数据,如果存在的话,直接将这些数据插入到T中,可以保证对T插入的操作不会丢失。 不足:仍然存在一致性问题,交换分区之后RENAME T_NEW TO T之前,查询、更新和删除会出现错误或访问不到数据。如果要求数据分布到多个分区中,则需要进行分区的SPLIT操作,会增加操作的复杂度,效率也会降低。 适用于包含大数据量的表转到分区表中的一个分区的操作。应尽量在闲时进行操作。 方法三:Oracle9i以上版本,利用在线重定义功能 Drop table t;CREATE TABLE T (ID NUMBER PRIMARY KEY, TIME DATE); INSERT INTO TSELECT ROWNUM, SYSDATE - ROWNUM FROM DBA_OBJECTS WHERE ROWNUM = 5000;COMMIT;EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE(USER, T); PL/SQL 过程已成功完成。 CREATE TABLE T_NEW (ID NUMBER PRIMARY KEY, TIME DATE) PARTITION BY RANGE (TIME) (PARTITION P1 VALUES LESS THAN (TO_DATE(2004-7-1, YYYY-MM-DD), PARTITION P2 VALUES LESS THAN (TO_DATE(2005-1-1, YYYY-MM-DD), PARTITION P3 VALUES LESS THAN (TO_DATE(2005-7-1, YYYY-MM-DD), PARTITION P4 VALUES LESS THAN (MAXVALUE); 表已创建。 EXEC DBMS_REDEFINITION.START_REDEF_TABLE(USER, T, T_NEW); PL/SQL 过程已成功完成。 EXEC DBMS_REDEFINITION.FINISH_REDEF_TABLE(USER, T, T_NEW); PL/SQL 过程已成功完成。 SELECT COUNT(*) FROM T; COUNT(*)-5000 SELECT COUNT(*) FROM T PARTITION (P3); COUNT(*)-1096 优点:保证数据的一致性,在大部分时间内,表T都可以正常进行DML操作。只在切换的瞬间锁表,具有很高的可用性。这种方法具有很强的灵活性,对各种不同的需要都能满足。而且,可以在切换前进行相应的授权并建立各种约束,可以做到切换完成后不再需要任何额外的管理操作。 不足:实现上比上面两种略显复杂。 适用于各种情况。 RACLE里如果遇到特别大的表,可以使用分区的表来改变其应用程序的性能。14 请简述ORACLE中,tnsnames.ora和listener.ora的区别?tnsnames.ora 文件中定义一个或多个网络服务;tnsnames.ora 是提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似NAMES.DIRECTORY_PATH= (TNSNAM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论