JAVA/JSP经典面试题汇总

2014-07-30 20:02:00|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:Java, JSP|来源:唯设编程网

81 、页面间对象传递的方法

答: request , session , application , cookie 等

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

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

83 、四种会话跟踪技术

答: 会话作用域 ServletsJSP  页面描述

page 否是代表与一个页面相关的对象和属性。一个页面由一个编译好的  Java servlet  类(可以带有任何的  include  指令,但是没有  include  动作)表示。这既包括  servlet  又包括被编译成  servlet  的  JSP  页面

request 是是代表与  Web  客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个  Web  组件(由于  forward  指令和  include  动作的关系)

session 是是代表与用于某个  Web  客户机的一个用户体验相关的对象和属性。一个  Web  会话可以也经常会跨越多个客户机请求

application 是是代表与整个  Web  应用程序相关的对象和属性。这实质上是跨越整个  Web  应用程序,包括多个页面、请求和会话的一个全局作用域

84 、 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) :删除请求中的一个属性

85 、我们在 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;

}

86 、 Servlet 执行时一般实现哪几个方法?

答:

public void init(ServletConfig config)

public ServletConfig getServletConfig()

public String getServletInfo()

public void service(ServletRequest request,ServletResponse response)

public void destroy()

JDBC 、 JDO 方面

87 、 Class.forName 的作用 ? 为什么要用 ?

答: 调用该访问返回一个以字符串指定类名的类的对象。

88 、 Jdo 是什么 ?

答: JDO 是 Java 对象持久化的新的规范,为 java data object 的简称 , 也是一个用于存取某种数据仓库中的对象的标准化 API 。 JDO 提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如 JDBC API 的使用)。这些繁琐的例行工作已经转移到 JDO 产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外, JDO 很灵活,因为它可以在任何数据底层上运行。 JDBC 只是面向关系数据库( RDBMS)JDO 更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、 XML 以及对象数据库( ODBMS )等等,使得应用可移植性更强。

89 、说出数据连接池的工作机制是什么 ?

答: J2EE 服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。

90 、 Jdo 是什么 ?

答: JDO 是 Java 对象持久化的新的规范,为 java data object 的简称 , 也是一个用于存取某种数据仓库中的对象的标准化 API 。 JDO 提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如 JDBC API 的使用)。这些繁琐的例行工作已经转移到 JDO 产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外, JDO 很灵活,因为它可以在任何数据底层上运行。 JDBC 只是面向关系数据库( RDBMS ) JDO 更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、 XML 以及对象数据库( ODBMS )等等,使得应用可移植性更强。

发表评论0条 】
网友评论(共?条评论)..
JAVA/JSP经典面试题汇总