Java方向企业笔试题 (2)

2009年无锡(国家)软件与服务外包人才引进项目

Java方向笔试题

总评分:

请如实填写以下信息:

一、选择题【不定项】,共30题,每题2分

1.Servlet1中有如下代码:

PrinWriter out=response.getWriter();

out.println(“请大家仔细看题目再回答!”);

假定该Servlet运行的平台是Apache Tomcat 5.0版本。为了可以在浏览器中显示汉字,可以( A D )。(选择两项)

A)在这两行代码前加上代码:

response.setContentType(“text/html;charset=GBK”);

B)已经可以显示汉字,不用添加任何代码。

C)在这两行代码前加上代码:

response.setContentType(“text/html”);

D)在这两行代码前加上代码:

response.setContentType(“text/html;charset=gb2312”);

2.J2EE中,对于ServletRequest接口的获取请求参数的方法的描述,

正确的是( C )。(选择一项)

A)getParameter方法只用于接收POST请求参数,接收GET 请求

参数需要使用getQueryString方法

B)如果一个参数key有多个值,那么getParameter(key)方法会返

回空字符串

C)如果一个参数key有多个值,那么getParameterValues(key)方

法会返回一个包含所有值的字符串数组

D)getParameter方法返回Object对象,使用前要强制类型转换:

如String str=(String)request.getParameter(key)

3.J2EE中,在aa.jsp中有行代码:

<% request.setAttribute(“Co.”,”jb-aptech”); %>

在bb.jsp中有行代码:

<% out.println((String)request.getAttribute(“Co.”)); %>

为了使得在bb.jsp中的如上代码可以显示“jb-aptech”,可以使用(B E )方法。(选择两项)

A)在aa.jsp中使用

把请求提交

到bb.jsp

B)在aa.jsp中使用把页面重定向到

bb.jsp

C)在aa.jsp中使用<% response.sendRedirect(“bb.jsp”); %> 把页面

重定向到bb.jsp

D)在aa.jsp中使用<%@ include file=”bb.jsp”%>包含页面bb.jsp

E)在aa.jsp中使用<%

config.getServletContext().getRequestDispatcher(“/bb.jsp”).forwa

rd(request,response);%>把页面重定向到bb.jsp

4.J2EE中,关于JSP文件中的page指令在JSP文件中出现的位置

和次数,正确的是(B D )。(选择两项)

A)page指令可以在JSP中的任何地方,以任何顺序出现

B)一个JSP文件可以有任意多个page指令

C)一个JSP文件只能有一个page指令

D)在整个JSP文件中,虽然可以有多个page指令,但是任何属

性/值对只能出现一次

5.J2EE中,在web.xml中,有如下代码:

30

以下描述,正确的是( C )。(选择一项)

A)定义了默认的会话超时时长,时长为30秒

B)可以使用HttpSession类的getMaxInactiveInterval()方法把该值

取出来

C)定义了默认的会话超时时长,时长为30小时

D)可以使用Session类的getMaxInactiveInterval()方法把该值取出

6.在J2EE中,当用户在浏览器中输入:

http://localhost:8080/myWebApp/start/,就会调用student这个Servlet,可以在Web.xml中( C )配置。(选择一项)

A)

/start/*

student

B)

student

/start/*

C)

student

student

student

/start/*

D)

st

student

student

/start/*

7.J2EE中,ServletResponse的( )方法可以返回在应答中写入二进制

数据的对象,( A )方法可以返回应答中发送字符文本的对象.

(选择一项)

A)getOutputStream( )和getWriter( )方法

B)getWriter( )和getOutputStream( )方法

C)getInputStream( ) 和getPrint( ) 方法

D)getStream( ) 和getPrint( ) 方法8.在J2EE中,在web.xml有如下代码段:

webmaster

myaddress@ https://www.360docs.net/doc/719271499.html,

在Servlet中( C )把webmaster的值:myaddress@https://www.360docs.net/doc/719271499.html,取出来。(选择一项)

A)使用RequestDispatcher的getInitParameter( “webmaster”)方法

B)使用ServletContext的getInitParameter( “webmaster”)方法

C)使用ServletConfig的getInitParameter( “webmaster”)方法

D)使用GenericServlet的getInitParameter( “webmaster”)方法

9.察看下列Jsp内容

<%for(int i=0;i<3; i++){%>

out.print(i*2);

<%}%>

当这个Jsp被运行时,其结果是什么( D )(选择一项)

A)此Jsp因为语法错误,无法运行

B)显示出0,2,4

C)显示出0,2,4,6

D)显示出out.print(i*2); out.print(i*2); out.print(i*2);

10.察看下面这个类

public class IfAttributsChanged implements ServletContextAttributeListener{

Public Void attributeAdded(ServletContextAttributeEvent scab){ System.out.println(“加入一个属性”);

}

public void attributeRemoved(ServletContextAttributeEvent scab){ System.out.println(“删除一个属性”);

}

}

关于IfAttributsChanged类的叙述,下列哪一个为真( C )(选择一项)

A)此类可以成功编译

B)此类无法成功编译,原因时缺少attributeChanged()方法。

C)此类无法成功编译,原因时缺少attributeReplaced()方法。

D)此类无法成功编译,原因时缺少attributeUpdated()方法。

11.在Struts1.x框架中,定义如下的Action:

…….

public class TxAction extends DispatchAction {

public ActionForward select(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

//Here Code

}

}

如果需要在执行select方法后,页面跳转到disp.jsp,Here Code处的代码应该是( A C )(选择两项)

A)在struts-config.xml中定义

path=”/disp.jsp”/>,Here Code处代码为return

mapping.findForward(“disp”);

B)Here Code处的代码为return new ActionForward(“/disp.jsp”);

C)Here Code处的代码为response.sendRedirect(“disp.jsp”);return

null;

D)Here Code处的代码为return “disp.jsp”;

E)Here Code处的代码为return new ActionForward(“disp.jsp”);

12.假定Struts-config.xml里有

……

attribute="myForm"

input="/AddUpdate.jsp"

name="txlForm"

parameter="act"

path="/tx"

type="com.txl.struts.action.TxAction" />

……

则( B )可以访问到ActionForm对象(选择一项)

A) request.getAttribute(“txlForm”)

B) request.getAttribute(“myForm”)

C) session.getAttribute(“myForm”)

D) session.getAttribute(“txlForm”)

E) request.getAttribute(“act”);

13.在Struts1.x中,可以使用下述哪些方法来实现中文编码转换?

( A C )(选择两项)

A)直接在Action的方法中使用

request.setCharacterEncoding(“GBK”);

B)继承ActionServlet,覆盖方法process方法,在该方法中添加

代码request.setCharacterEncoding(“GBK”);

C)实现一个过滤器Filter,覆盖方法doFilter(),在该方法中加入

代码request.setCharacterEncoding(“GBK”);

D)在ActionForm的validate方法中加入

request.setCharacterEncoding(“GBK”);

14.关于Hibernate的下述说法正确的是( A B C )(选择三项)

A) 是采用ORM映射机制的持久化层开发工具

B) 负责JA V A对象和关系数据之间的映射

C)内部封装了JDBC访问据书库的操作

D) 是重量级解决方案之一

15.Hibernate所提供的多种ID产生方案中,( A )方案可以保证

即使是不同种类的数据库,也不用修改ID产生的配置信息。(选择一项)

A) native

B) identity

C) sequence

D) uuid

16.假设表titles映射为类Titles,那么查询titles表总记录数的HQL

语句是( C )(选择一项)

A) Select count(*) from titles

B) Select count(a) from titles

C) Select count(*) from Titles

D) Select count(a) from Titles

17.struts2框架中为了处理中文乱码问题,可以采用下列哪些方法?

( C D )(选择两项)

A)JSP页面中设置pageEncoding=utf-8,其它不作设置;

B)JSP页面中设置pageEncoding=GBK,同时在struts.xml中配置

struts.i18n.encoding=GBK;

C)JSP页面中设置pageEncoding=GBK,其它不作设置;

D)JSP页面中设置pageEncoding=utf-8,同时也应该在struts.xml

中设置struts.i18n.encoding=utf-8

18.struts2中有如下的Action来完成单表的CRUD操作:

public class CrudUserAction extends ActionSupport { // 增加

public String create() throws Exception {

……

}

// 查询

public String retrive() throws Exception {

……

}

// 修改

public String update() throws Exception {

……

}

// 删除

public String delete() throws Exception {

……

}

}

为了分别调用Action中的每个方法,应该在struts.xml中设置( C D ):(选择两项)

A)

……

每个方法的调用路径为CrudUser!create.action、CrudUser!retrive.action 等

B)

……

每个方法的调用路径为User_create.action、User_retrive.action等

C)

……

每个方法的调用路径为User_create.action、User_retrive.action等

D)

……

每个方法的调用路径为User_create.action、User_retrive.action等

19.Struts2中希望在Action中为session放入属性islogin,应使用( A

C )代码?(选择两项)

A)request.getSession.setAttribute(“islogin”,…);

B)session.setAttribute(“islogin”,…);

C)ServletActionContext.getRequest().getSession().setAttribute(“islo

gin”,…);

D)ActionContext.getContext().getSession().put(“islogin”,…);

20.在Spring2.5中bean生成的时候默认都是单实例的,假设希望bean

的生成是多实例的,需要做的设置是( A )? (选择一项)

A)

B)

C)

D)

21.Spring2.5中可以使用哪个annotation来声明方法受事务控制

( A )。(选择一项)

A)@Transaction

B)@Trans

C)@Session

D)@Transactional

22.在Spring中使用Hibernate实现DAO层时,一般需要从( D )

类继承,以简化DAO代码的书写。(选择一项)

A)HibernateTemplate

B)HibernateDao

C)HibernateSupport

D)HibernateDaoSupport

23.在Oracle中,( C )过程用来产生用户自定义错误消息。(选

择一项)

A)RAISE_ERROR

B)SQLERRM

C)RAISE_APPLICATION_ERROR

D)RAISE_SERVER_ERROR

24.表(TEACHER)包含下列:( D )(选择一项)

ID NUMBER(7) PK

SALARY NUMBER(7,2)

SUBJECT_ID NUMBER(7) NOT NULL

判断以下两个SQL语句:

(1) SELECT COUNT (DISTINCT SUBJECT_ID) FROM teacher;

(2) SELECT COUNT (SUBJECT_ID) FROM teacher;

下列哪句是正确的:()

A) 语句1将返回老师的总数B) 语句2将返回老师的总

C) 两句都返回老师的总数D) 以上都不对

25.在J2EE中,使用( B C )选项中的代码,可以生成如下

XML文档:(选择两项)

Tony Blair

A)Element people=doc.createElement(“PEOPLE”);

Element person=doc.createElement(“PERSON”);

Element name=doc.createElement(“NAME”);

name.appendChild(doc.createTextNode(“Tony Blair”));

people.appendChild(person);

person.appendChild(name);

doc.appendChild(people);

B)Element people=doc.createElement(“PEOPLE”);

Element person=doc.createElement(“PERSON”);

people.appendChild(person);

Element name=doc.createElement(“NAME”);

name.appendChild(doc.createTextNode(“Tony Blair”));

person.appendChild(name);

doc.appendChild(people);

C)Element people=doc.createElement(“PEOPLE”);

Element person=doc.createElement(“PERSON”);

people.appendChild(person);

Element name=doc.createElement(“NAME”);

name.appendText(doc.createTextNode(“Tony Blair”));

person.appendChild(name);

doc.appendChild(people);

D)Element people=doc.createElement(“PEOPLE”);

Element person=doc.createElement(“PERSON”);

Element name=doc.createElement(“NAME”);

name.appendTextNode(“Tony Blair”);

people.appendChild(person);

person.appendChild(name);

doc.appendChild(people);

26.在如下的Schema片段中定义了一个数据类型

LocationType:

那么下面的XML文档实例片段中符合该Schema定义的是( C )。(选择一项)

A)

Hello

USA

B)

C)

D)

Hello

27.当用命令ls –al查看文件和目录时,欲观看卷过屏幕的内容,应

使用组合键( B )?(选择一项)

A)Shift+Home B)Ctrl+PgUp

C)Alt+PgDn D)Shift+PgUp

28.文件权限读、写、执行的三种标志符号是( A )?

(选择一项)

A)rwx B)xrw

C)rdx D)srw

29.使用Ajax可带来便捷有( A B D )(选择三项)

A)减轻服务器的负担

B)无刷新更新页面

C)可以调用外部数据

D)可以不使用Jvavscript脚本

30.使用Ajax技术访问servlet的时候,为了通过servlet向客户端写

回一段xml,必须作( B )设置。(选择一项)

A)response.setContentType(“text/html;charset=utf-8”);

B)request.setContentType(“text/html;charset=utf-8”);

C)response.setContentType(“text/xml;charset=utf-8”);

D)request.setCharacterEncoding(“utf-8”);

二、简答题(共5题,每题8分)

1、Struts2和Spring集成的时候,是否可以把Action设置成singleton 模式,请简述理由。

答:不可以。因为每个请求会创建一个Action对象,而Struts2的Action 不支持singleton的2、简要叙述Hibernate一级缓存和二级缓存的作用。

答:减少数据库的访问频率,提高访问性能

保证缓存中的对象跟数据库能够同步,保证session不出现死锁

3、什么是singleton模式和DAO模式?

答:singleton模式是保持封装类在运行时只是一个单列

DAO模式是Data Access Object 数据访问对象。

4、简述Spring中DI、IoC和AOP的含义。

答:IOC 控制反转

AOP 面向切面编程

5、请比较Struts1.x和Struts2在多模块开发方面的差异。

答:Struts1和Struts2都是基于MVC的开源框架

Struts1是基于servlet

Struts2是基于webwork

相关文档
最新文档