java初级工程师面试题
对于Java初级工程师来说,面试前的准备很有必要,Java初级工程师面试中有哪些面试题呢?以下是小编帮你们整理的java初级工程师面试题,一起来学习啦。
java初级工程师面试题(一)
1.如何优化数据库,如何提高数据库的性能?
解答:
1) 硬件调整性能
最有可能影响性能的是磁盘和网络吞吐量,解决办法扩大虚拟内存,并保证有足够可以扩充的空间;把数据库服务器上的不必要服务关闭掉;把数据库服务器和主域服务器分开;把SQL数据库服务器的吞吐量调为最大;在具有一个以上处理器的机器上运行SQL。
2)调整数据库
若对该表的查询频率比较高,则建立索引;建立索引时,想尽对该表的所有查询搜索操作, 按照where选择条件建立索引,尽量为整型键建立为有且只有一个簇集索引,数据在物理上按顺序在数据页上,缩短查找范围,为在查询经常使用的全部列建立非簇集索引,能最大地覆盖查询;但是索引不可太多,执行UPDATE DELETE INSERT语句需要用于维护这些索引的开销量急剧增加;避免在索引中有太多的索引键;避免使用大型数据类型的列为索引;保证每个索引键值有少数行。
3)使用存储过程
应用程序的实现过程中,能够采用存储过程实现的对数据库的操作尽量通过存储过程来实现,因为存储过程是存放在数据库服务器上的一次性被设计、编码、测试,并被再次使用,需要执行该任务的应用可以简单地执行存储过程,并且只返回结果集或者数值,这样不仅可以使程序模块化,同时提高响应速度,减少网络流量,并且通过输入参数接受输入,使得在应用中完成逻辑的一致性实现。
4)应用程序结构和算法
建立查询条件索引仅仅是提高速度的前提条件,响应速度的提高还依赖于对索引的使用。因为人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,特别是对数据量不是特别大的数据库操作时,是否建立索引和使用索引的好坏对程序的响应速度并不大,因此程序员在书写程序时就忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在数据量特别大时或者大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!
2.JS中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么?
解答:alert confirm prompt
3.描述JSP和Servlet的区别、共同点、各自应用的范围
解答:JSP在本质上就是SERVLET,但是两者的创建方式不一样.Servlet完全是JAVA程序代码构成,擅长于流程控制和事务处理,通过Servlet来生成动态网页很不直观.JSP由HTML代码和JSP标签构成,可以方便地编写动态网页.因此在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.
4.在java语言中int 和 Integer 有什么区别
解答:int是基本数据类型,Integer是int的包装类,属于引用类型
5.计算下列结果:
25&3 =
25|3=
解答:25的二进制是11001 , 3的二进制是00011, 按位与的结果是:00001 ,按位或的结果是:11010,因此转成10进制分别为:1 和27
java初级工程师面试题(二)
1.JDK1.5中支持的 for循环的语法
解答:
for(type element : array) { System.out.println(element)} type 集合(不仅仅指Collection,也包含普通的数组)中元素的数据类型 element 遍历到的元素 array 集合对象本身(当然不只是Collection)
2.简述synchronized和java.util.concurrent.locks.Lock的异同?
解答:
主要相同点:Lock能完成synchronized所实现的所有功能 主要不同点:Lock有比synchronized更精确的线程语义和更好的性能。synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且必须在finally从句中释放。
3.如何格式化日期
解答:
Date now=new Date();
SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);
String formatNow=sdf.format(now);
变量formatNow就是格式化好的日期。
4.将字符“12345”转换成long型
解答: String s=”12345″;
long num=Long.valueOf(s).longValue();
5.struts中如何实现国际化,涉及哪些文件?
解答:“国际化”是指一个应用程序在运行时能够根据客户端请求所来自的国家/地区、语言的不同而显示不同的用户界面。Struts框架通过使用标记,以及使用java.util数据包中定义的Locale和ResourceBundle类来支持国际化。java.text.MessageFormat类定义的技术可以支持消息的格式。利用此功能,开发人员不需了解这些类的细节就可进行国际化和设置消息的格式。会涉及到资源文件,不需了解这些类的细节就可进行国际化和设置消息的格式。会涉及到资源文件,struts-config.xml配置文件,web.xml配置文件。
java初级工程师面试题(三)
1.例举在诊断Oracle性能问题时,常用的工具、方法
解答: 1)简单一点的可以用toad及dbartisan这样的工具。
2)纯做性能监测,比较出色的有spolight和emc的I3,这两个软件都比较贵。
3)一些网管系统这方面也不错,如hp的openview。不过定制起来不太容易,且很贵。
4)不用花钱又好用的就是Oracle的statpack了。
5)再有就是自己写脚本了,大多数有经验的DBA都喜欢这样的方式。优点是实用灵活。缺点是如果想出一个性能变化的曲线图等图表,且做的美观就需要些delphi,c++builder或是pb的开发功底了。
2.Oracle启动中,startup nomount、 startup mount 有什么差别?
解答: startup nomount:启动实例,读取参数文件,分配内存空间,启动后台进程,打开跟踪文件和报警文件。startup mount:装载数据库,打开控制文件。nomount方式下还没有读取控制文件,该选项用于在数据库的控制文件全部损坏,需要重新创建数据库控制文件或创建一个新的数据库时使用。mount 选项下并没有打开数据文件,该选项可以用来修改数据库的运行模式或进行数据库恢复。
3.Oracle启动中,spfile.ora、init.ora、spfile.ora 这三个文件正确的先后顺序是什么?
解答:启动数据库,使用startup命令,Oralce将会按照以下顺序在缺省目录中搜索参数文件:spfile.ora , spfile.ora ,init.ora a
4.说明Oracle数据库逻辑备份和物理备份的方式。
解答:Oracle备份包括逻辑备份和物理备份。
1).逻辑备份
数据库的逻辑备份包含读一个数据库记录集和将记录集写入文件。
a.输出(Export)输出可以是整个数据库、指定用户或指定表。
b.输入(Import)输入将输出建立的二进制转储文件读入并执行其命令。
2).物理备份
物理备份包含拷贝构成数据库的文件而不管其逻辑内容。
Oracle支持两种不同类型的物理文件备份:脱机备份(offline backup)和联机备份(online backup)。
a.脱机备份: 脱机备份用在当数据库已正常关闭,数据库处于”offline”时,要备份下列文件:
所有数据文件
所有控制文件
所有联机日志
init.ora(可选的)
b 联机备份:联机备份可用来备份任何运作在ARCHIVELOG方式下的数据库。在这种方式下,联机日志被归档,在数据库内部建立一个所有作业的完整记录。联机备份过程具备强有力的功能。第一,提供了完全的时间点(point-in-time)恢复。第二,在文件系统备份时允许数据库保持打开状态。
看了“java初级工程师面试题”