java程序员面试题收集

2023-06-19

第一篇:java程序员面试题收集

java程序员面试题

姓名:

年龄:

工作年限:

1.int和Integer有什么区别?

2.抽象类(abstract class)和接口(interface)有什么异同?

3.List、Set、Map的区别?

4.Spring支持的ORM有哪些,哪些是你用过的?

5.使用Spring可以通过什么方式访问Hibernate或你使用过的任一ORM?

6.请你说明Spring路径“user/info/1”的含义?

7.你要求的工资待遇及你对你自己未来5年的职业规划?

第二篇:java程序员面试题

1、 你怎样理解Struts,又那些配置文件,以及作用? 理解:http://ruixin.iteye.com/blog/899289 配置文件:struts.xml 作用:struts 框架mvc 实现低耦合,便于程序的维护~ 配置文件控制流程的转向 很清晰~ 主要负责具体业务的实现和页面的转向~

2、 怎么样来捕获数据库中的异常?

3、 如何处理网页中的验证信息,如何友好的进行处理?

4、 用javaScript实现java中的监听器功能?

5、 你对对日外包的看法?

6、 数据库连接方式由哪几种?

Jdbc、连接池、hibernate

7、 你清楚哪几种设计模式,谈谈各种设计模式的类结构。

8、 谈谈jsp和sevlet的区别,以及它们性能上的区别。

jsp是servlet的一种简化,jsp编译后是"类servlet"。 servlet 主要是用来处理业务层;

jsp 则是主要负责 表现层。

servlet完全是java程序代码构成,擅长于流程控制和事务处理,而通过servlet来生成动态网页很不直观; 对于静态的html标签,servlet都必须使用页面输出流逐行输出。 Servlet中没有内置对象。 Jsp由html代码和jsp标签构成可以方便地编写动态网页,在struts框架中,jsp位于MVC设计模式的视图层,而servlet位于控制层。

总之,使用jsp只需要完成程序员需要输出到客户端的内容,至于jsp中的java脚本如果镶嵌到一个类中,由jsp容器完成,而servlet则是个完整的java类,这个类的service方法用于生成对客户端的响应

9、 如何来编写存储过程,如何优化存储过程,以及存储过程和TSQL的区别。

10、 提供的培训,CMM-5软件开发流程培训、代码编写规范和业务流程培训、对日语的培训。

1、 为什么要选择这个行业,和计算机专业的相比有什么优势?

2、 Servlet是什么,以及生命周期?

Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。

与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。

3、 怎么理解事务?

4、 怎么理解MVC?

自己做自己的事情,主要强调分层,

5、 同时插入大量数据,使用何种方法优化?Batch

6、 多个有关系得怎么样操作?

7、 你认为你还有什么优点在前面没有提到?

8、 对加班的看法?

9、 与上级意见不一致时怎么样处理?

10、

11、

12、

13、

14、

15、

16、

17、

18、

19、 20、

21、

22、

23、 你如何理解团队精神?

你怎样处理学习新技术和项目开发之间的矛盾? 怎样去学习新技术?

作为一个初级程序员怎么样弥补与有经验程序员之间的差距? 你对索引的理解,索引有几种,什么时候用索引? 对Oracle理解?

怎样优化复杂的查询语句? 你对Jdbc理解?

对Finally块的理解和应用? 游标的理解? ResultSet 重载,重写? 签名

EJB的事务,Hibernate的事务? Struts的标签? 重定向和跳转? A、:效率高,速度快

a.地址栏不改变跳转——服务器端跳转,服务器之间内部转,相同的request,可传参;

b.执行到跳转语句后无条件立刻跳转——之后的代码不再被执行;

注意:如果使用forward跳转,则一定要在跳转之前释放掉全部的资源;

c.使用forward时,request设置的属性依然能保留在下一个页面(setAttribute); d.通过传递参数。

e.地址中的”/”代表是:http://localhost:8080/Test B、response.sendRedirect(“地址”):效率低,速度慢

a.地址栏改变跳转——客户端跳转(其中地址可以是任意的)

b.所有代码执行完毕之后再跳转,跳转语句后面的代码还是会执行,除非在其后面加上return(return)需复杂一些。

<% Response.sendRedirect(“aa.jsp”); boolean b = true;

if(b){ Return; } System.out.println(“aaaaaaaaaa”); %>

c.不能保存request属性——地址改变了,客户端跳转,不同的request d.通过对URL地址的重写传递参数:

response.sendRedirect(“responseDemo04.jsp?id=mldn”);

e.地址中的”/”代表是:http://localhost:8080/

下面是两种比较重要的跳转,我还是与上次的一次,把我做的笔记贴出来:

24、

25、 Hibernate的左联结和右连接,缓存,数据加载? 面向对象如何理解?

26、 EJB中CMP和BMP,SessionBean的机制?

27、

28、

29、 对日外包是否有抵触情绪? 如何减少Servlet的请求? 对设计模式了解多少?作过的项目中用过那些设计模式? 30、

31、

32、

33、

34、

35、

36、

37、

38、

39、 40、

41、

42、

43、

44、

45、 怎样看待团队合作,在团队合作中你扮演什么样的角色,遇到技术难题时怎么解决? Exception的层次结构? EJB对数据库的访问机制? Struts中是否有事务处理? Hibernate的其它功能(除了ORM)? 如何提高数据库中的数据查询效率? 作为项目经理如何对组内成员分工? 描述一下你做过项目的流程。

加班到12点,突然有人来问你技术上的难题,你会如何处理? Oracle的冷备份、热备份 Strurs中怎样实现 Hibernate怎样实现ORM Spring 的事务处理机制

Strurs的验证方式,Javascript的验证的方式

一个是服务器端验证,一个是客户端验证

Struts的工作机制 Delete/trancate的区别

trancate与delete都是删除数据,不同的是trancate是将表的所有数据都删除,而delete可以有选择地删除数据; delete删除数据是记录在日志中的,可以通过其将数据恢复,而trancate则是将整个表截断,其操作是不记录在日志里的。

46、

47、

48、 作为项目组长,你遇到的最大问题是什么?如何解决?

Ajax/内嵌框架实现局部刷新,有什么差别?

Exception/Error的区别,在什么情况下可以抛出RuntimeException 父类不同

知道异常和错误最本质的区别就是异常能被开发人员处理而错误时系统本来自带的,一般无法处理也不需要我们程序员来处理。

在程序运行时候出错而又不是系统原因差生的,一般是由于程序原因产生,比如程序写的不够严谨、完善

典型的RuntimeException

ArithmeticException、ClassCastException、IndexOutOfBoundsException、NullPointerException、UnsupportedOperationException 等.

49、 50、

51、

52、

53、

54、

55、

56、

57、

58、

59、 Orcale 物化视图(MV)

业务处理模块中,是如何处理事务? Sql语句如何优化 数据库右连接

JDBC的连接关闭在哪?

Finally语句块内

错误处理模块是放在哪个层的。 接口能否继承接口。

接口可以继承接口..但是要使用extends~而不是用implements 抽象类能否继承实体类。

抽象类是可以继承实体类,但前提是实体类必须有明确的构造函数 答案很明确,可以继承。

项目中查询时怎么样实现的?

作为项目负责人你是管理这个团队的?

在你做项目过程中遇到些什么问题,是怎么样解决的?

Jquery中的几种选择器:

Javascript如何进行数字和字符串之间的转换?

数字类型转换成String类型用 对象=对象.toString() 方法,字符串转换成数字类型则是对象=Number(对象);

第三篇:Java程序员面试题

北京千渡网讯科技有限公司博宝艺术网http://

Java程序员面试题

1. 下列程序段执行后,t5的结果是_____.

int t1=5,t2=6,t3=7,t4,t5;

t4 = t1

t5 = t4

2.String s = new String("xyz");创建了_____个String Object.

3. 类型转换

 int x=4;

System.out.println(“value is ” +((x>4)?99.9:9)); 输出是______;

4.Boolean类型

boolean a = false;

if (a = true){

System.out.println(true);

} else {

System.out.println(false);结果是______;

5. int i = 5;

Integer iInteger = new Integer(i);

Integer jInteger = new Integer(i);

System.out.println(i == iInteger);

System.out.println(iInteger == jInteger);输出结果是______;

6.

TreeSet map = new TreeSet();

map.add("one");

map.add("two");

map.add("three");

map.add("four");

map.add("one");

Iterator it = map.iterator();

while (it.hasNext() ) {

System.out.print( it.next() + " " );

}

输出结果是 ________________________________________;

7

class Polish {

public static void main(String[] args) {

int x = 4;

StringBuffer sb = new StringBuffer("..fedcba");

sb.delete(3,6);

sb.insert(3, "az");

if(sb.length() > 6)x = sb.indexOf("b");

sb.delete((x-3), (x-2));

System.out.println(sb);

北京千渡网讯科技有限公司博宝艺术网http://

}

}

结果是: ____________

8. class Emu {

static String s = "-";

public static void main(String[] args) {

try {

throw new Exception();

} catch (Exception e) {

try {

try { throw new Exception();

} catch (Exception ex) { s += "ic "; }

throw new Exception();

} catch (Exception x) { s += "mc "; }

finally { s += "mf "; }

} finally { s += "of "; }

System.out.println(s);结果是:______________________

9..抽象类和接口的区别

10.写一个方法,实现字符串的反转,如:输入abc,输出cba

11.short s1 =1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

12.下列哪些集合能够改变其容量大小,同时能够根据索引访问其元素,并且访问方法是非线形安全的?

A. java.util.HashSet

B. java.util.LinkedHashSet

C. java.util.List

D. java.util.ArrayList

E. java.util.Vector

F. java.util.PriorityQueue

13.下列关于泛型的说法,错误的是()

A、泛型是一种参数化类型

B、可以取代继承机制。

C、避免了运行时进行类型转换可能的潜在性错误

D、增强了程序的灵活性和安全性

14. 下面关于System.out的说法哪些是正确?

A. System.out是1个PrintStream。

B. System.out是1个OutputStream。

C. System.out是1个FilterOutputStream。

D. System.out不是1个PrintStream。

E. System.out在异常时,将抛出IOException

15.String与StringBuffer的区别?

第四篇:JAVA程序员面试题(5)

2008-06-12 10:43

1. JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?

JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。

2. 四种会话跟踪技术.

会话作用域ServletsJSP 页面描述 page否是代表与一个页面相关的对象和属性。一个页面由一个编译好的 Java servlet 类(可以带有任何的 include 指令,但是没有 include 动作)表示。这既包括 servlet 又包括被编译成 servlet 的 JSP 页面 request是是代表与 Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个 Web 组件(由于 forward 指令和 include 动作的关系) session是是代表与用于某个 Web 客户机的一个用户体验相关的对象和属性。一个 Web 会话可以也经常会跨越多个客户机请求 application是是代表与整个 Web 应用程序相关的对象和属性。这实质上是跨越整个 Web 应用程序,包括多个页面、请求和会话的一个全局作用域

3. Request对象的主要方法:

setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值

getAttributeNames():返回request对象所有属性的名字集合,结果是一个枚举的实例

getCookies():返回客户端的所有Cookie对象,结果是一个Cookie数组

getCharacterEncoding():返回请求中的字符编码方式

getContentLength():返回请求的Body的长度

getHeader(String name):获得HTTP协议定义的文件头信息

getHeaders(String name):返回指定名字的request Header的所有值,结果是一个枚举的实例

getHeaderNames():返回所以request Header的名字,结果是一个枚举的实例 getInputStream():返回请求的输入流,用于获得请求中的数据

getMethod():获得客户端向服务器端传送数据的方法

getParameter(String name):获得客户端传送给服务器端的有name指定的参数值 getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例

getParameterValues(String name):获得有name指定的参数的所有值

getProtocol():获取客户端向服务器端传送数据所依据的协议名称

getQueryString():获得查询字符串

getRequestURI():获取发出请求字符串的客户端地址

getRemoteAddr():获取客户端的IP地址

getRemoteHost():获取客户端的名字

getSession([Boolean create]):返回和请求相关Session

getServerName():获取服务器的名字

getServletPath():获取客户端所请求的脚本文件的路径

getServerPort():获取服务器的端口号

removeAttribute(String name):删除请求中的一个属性

4. J2EE是技术还是平台还是框架?

J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。

J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。

5. 我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何

输出一个某种编码的字符串?

Public String translate (String str) { String tempStr = "";

try {

tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");

tempStr = tempStr.trim();

}

catch (Exception e) {

System.err.println(e.getMessage());

}

return tempStr;

}

6. 简述逻辑操作(&,|,^)与条件操作(&&,||)的区别 ?

区别主要答两点:a.条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型 b.逻辑操作不会产生短路

7. XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方

式?

a: 两种形式 dtd schema,b: 本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的),c:有DOM,SAX,STAX等 DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问 SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问 STAX:Streaming API for XML (StAX)

8. 简述synchronized和java.util.concurrent.locks.Lock的异同 ?

主要相同点:Lock能完成synchronized所实现的所有功能主要不同点:Lock有比synchronized更精确的线程语义和更好的性能。synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且必须在finally从句中释放。

9. EJB的角色和三个对象

一个完整的基于EJB的分布式计算结构由六个角色组成,这六个角色可以由不同的开发商提供,每个角色所作的工作必须遵循Sun公司提供的EJB规范,以保证彼此之间的兼容性。这六个角色分别是EJB组件开发者(Enterprise Bean Provider) 、应用组合

者(Application Assembler)、部署者(Deployer)、EJB 服务器提供者(EJB Server Provider)、EJB 容器提供者(EJB Container Provider)、系统管理员(System Administrator)

三个对象是Remote(Local)接口、Home(LocalHome)接口,Bean类

10. EJB容器提供的服务

主要提供声明周期管理、代码产生、持续性管理、安全、事务管理、锁和并发行管理等服务。

11. EJB规范规定EJB中禁止的操作有哪些?

1.不能操作线程和线程API(线程API指非线程对象的方法如notify,wait等),2.不能操作awt,3.不能实现服务器功能,4.不能对静态属生存取,5.不能使用IO操作直接存取文件系统,6.不能加载本地库.,7.不能将this作为变量和返回,8.不能循环调用。

12. remote接口和home接口主要作用

remote接口定义了业务方法,用于EJB客户端调用业务方法。 home接口是EJB工厂用于创建和移除查找EJB实例

13. bean 实例的生命周期

对于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在缓冲池管理,而对于Entity Bean和Statefull Session Bean存在Cache管理,通常包含创建实例,设置上下文、创建EJB Object(create)、业务方法调用、remove等过程,对于存在缓冲池管理的Bean,在create之后实例并不从内存清除,而是采用缓冲池调度机制不断重用实例,而对于存在Cache管理的Bean则通过激活和去激活机制保持Bean的状态并限制内存中实例数量。

14. EJB的激活机制

以Stateful Session Bean 为例:其Cache大小决定了内存中可以同时存在的Bean实例的数量,根据MRU或NRU算法,实例在激活和去激活状态之间迁移,激活机制是当客户端调用某个EJB实例业务方法时,如果对应EJB Object发现自己没有绑定对应的Bean实例则从其去激活Bean存储中(通过序列化机制存储实例)回复(激活)此实例。状态变迁前会调用对应的ejbActive和ejbPassivate方法。

15.EJB的几种类型

会话(Session)Bean ,实体(Entity)Bean 消息驱动的(Message Driven)Bean 会话Bean又可分为有状态(Stateful)和无状态(Stateless)两种实体Bean可分为Bean管理的持续性(BMP)和容器管理的持续性(CMP)两种

第五篇:java程序员面试题(综合)

Java人员测试题(请用答题纸填写) 第一部分 前台编程 JavaScript Ajax等 (15分)

1. 脚本写在和中有什么区别?(5分)

2.请用html和javascript简要实现以下功能:页面中放置一个“测试”按钮和命名为“name”的文本输入框,点击该按钮后,如果该文本输入框没有内容,弹出“请输入姓名”提示信息,否则显示文本输入框的内容。(5分)

3. 什么是Ajax,简要说明Ajax优缺点.(5分)

第二部分 后台编程 Java Jsp等(35分)

1. 请简要说明什么是Java,Java Bean,EJB,Servlet,Jsp(5分)

2. 请写一段在页面上显示“hello,welcome!”的servlet代码(5分)

3.Jsp中常用对象除了request外还有哪些?请写出5个以上. (5分)

4. 请简要说明jsp中文乱码问题比较好的解决办法(5分)

5. 在Jsp中有几种方式调用java类,他们之间的区别是?( 5分)

6.如何在JSP里定向(或跳转)到另外一个web页? 请写出至少2种方法。(5分 )

7. 请列举jsp页面抛出的常见的Exception,并说明原因及纠错办法.(5分)

第三部分 数据库开发等(25分)

现在有两张表:部门表dept( dept_id 部门编号,dept_name 部门名称) , 雇员表emp(emp_id 雇员编号,emp_name 雇员姓名,age 年龄,dept_id所属部门编号)。以上字段除年龄为整数类型外,其余为字符串类型。

1.请利用jdbc和jsp技术实现以下功能:在页面中显示所有年龄大于22岁的雇员信息,信息包括:雇员编号、雇员姓名、年龄、所属部门名称。所有记录按年龄从大到小排序。 注意:请说明采用哪种数据库实现。(15分)

2.请写sql语句:按年龄从大到小排序,查询年龄排在第5到第10位、部门是技术部的雇员记录,信息仅包括雇员表所有字段。(5分)

3. 请简要说明在tomcat或weblogic中如何配置数据库连接池(5分)

第四部分 综合(20分)

1. Apache和Tomcat有什么异同,两者如何整合? (5分)

2. tomcat中,jar包放在WEB-INF/lib下与放在%Tomcat%/common/lib下有何区别? (5分)

3. 解释MVC、Struts、hibernate,解释*.do (5分)

4. 描述XML、SAX、DOM、XSL、JDOM. (5分)

第五部分 其他(5分)

1. 如何看待工作和加班? 是否有过加班经历?必要时能否为项目主动义务加班? (请认真如实填写)(5分)

第六部分 其他(20分)

1. 什么是数据库事务? Commit, rollback是什么意思? (10分)

2. 有无asp/php开发基础或开发能力? 是否愿意根据项目需要参与asp/php的学习和开发?( 请认真如实填写) (10分)

上一篇:关于花季的作文1100字下一篇:pdca护理管理中的应用

本站热搜

    相关推荐