课程咨询 : 400-900-4590

主页 > 企业上门招聘 > Java大数据笔试题 > Java经典笔试题——(9)
  • Java经典笔试题——(9)

    发布:深圳鸿运彩票网      来源:深圳鸿运彩票网      时间:2016-05-25 02:11

  • Java经典笔试题——(9) 
     Tomcat服务器的默认端口是多少?怎样修改tomcat的端口?

      解答:默认端口为8080,可以通过service.xml的Connector元素的port属性来修改端口。

      112.多线程有几种实现方法,都是什么?同步的方法有几种,都是什么?

      解答:多线程有两种实现方法:继承Thread类或者实现Runnable接口。

      实现同步也有两种方法:一种是同步方法,另一种是同步代码块。

      同步方法是在方法返回类型前面加上synchronized关键字

      同步代码块是synchronized (这里写需要同步的对象){„}

      113.谈一下聚簇索引和非聚簇索引的区别以及各自的优缺点。

      解答:

      聚集索引,表中存储的数据按照索引的顺序存储,检索效率比普通索引高,但对数据新增/修改/删除的影响比较大 非聚集索引,不影响表中的数据存储顺序,检索效率比聚集索引低,对数据新增/修改/删除的影响很小

      114. 死锁的必要条件?怎么克服?

      解答:产生死锁的四个必要条件:

      互斥条件:一个资源每次只能被一个进程使用。

      请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。

      不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。

      循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。

      这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。

      死锁的解决方法:

      a 撤消陷于死锁的全部进程; b逐个撤消陷于死锁的进程,直到死锁不存在; c从陷于死锁的进程中逐个强迫放弃所占用的资源,直至死锁消失。 d从另外一些进程那里强行剥夺足够数量的资源分配给死锁进程,以解除死锁状态

      115.描述重做与回滚的认识;

      解答:重做日志生成日志文件,是为将来恢复数据库使用的.

      回滚段保存未提交数据,是为支持事务而起作用的。

      116.索引组织表,聚蔟表的用途;

      解答:

      索引组织表:数据按主码存储和排序,同索引结构一样,不过数据直接存储于主码后面。适用于信息.检索、空间和OLAP程序。索引组织表的适用情况:

      a.代码查找表。

      b.经常通过主码访问的表。

      c.构建自己的索引结构。

      d.加强数据的共同定位,要数据按特定顺序物理存储。

      e.经常用between„and„对主码或唯一码进行查询。数据物理上分类查询。如一张订单表,按日期装载数据,想查单个客户不同时期的订货和统计情况。

      索引聚簇表:索引聚簇表是表相关的表共享同一数据块中的相同列,并把相关数据存储中同一个数据块上。创建索引聚簇表中最重要的是对SIZE参数有很好的估量,否则聚簇将会降低空间利用,降低效率。

      使用索引聚簇表的注意点:

      a如果表中数据有大量DML操作的话,那么聚簇将不适用,因为会消极地影响到DML性能。

      b聚簇中,全表扫描将受到影响。这是因为将扫描聚簇中不同表的数据,额外增加很多无用的数据。

      c如果经常TRUNCATE表和装载表的话,聚簇将不适用。聚簇中的表无法被TRUNCATE的,这是因为每个块中不只是存储一张表的数据。

      SQL> truncate table emp;

      truncate table emp *

      ERROR at line 1:

      ORA-03292: Table to be truncated is part of a cluster

      d如果大部分是读取操作,且通过聚簇码索引或聚簇表中其他索引来读取的话,聚簇将会比较适用。

      117.消耗资源的SQL的定位方法;

      解答:select sql_text from v$sql where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000);

      SELECT * FROM ( SELECT sql_text,buffer_gets,disk_reads FROM v$sql ORDER BY buffer_gets,disk_reads DESC) WHERE ROWNUM<=10;

      118.对触发器的认识;

      解答:触发器是表上的程序,主要提供数据添加、修改与删除后的程序处理方法,可以用来检查数据及进行数据更新,也可以分担一些前端应用程序撰写的逻辑规则。用场景: 触发器可以查询其他表,而且可以包含复杂的SQL语句。它们主要用于强制复杂的业务规则或要求。

      触发器的主要应用场合概括起来讲有以下几种:

      1).当向一张表中添加或删除记录时,需要在相关表中进行同步操作。比如,当为应用系统添加一个系统用户时,需要同时向权限表中添加该用户的缺省权限,此时就编写系统用户表的触发器在添加记录动作时触发。

      2).当表上某列数据的值与其他表中的数据有联系时。比如,当某客户进行欠款消费,可以


上一篇:Java经典笔试题——(8)

下一篇:鸿运彩票网Java大数据培训题库:第一期

最新开班日期

开班时间 2017/03/27
距离开班时间还剩

1 2 3