java笔试模拟题三

合集下载

java笔试面试题目(3篇)

java笔试面试题目(3篇)

第1篇一、选择题(每题2分,共20分)1. 下列关于Java虚拟机(JVM)的说法,正确的是()。

A. JVM是Java程序的运行环境B. JVM是Java程序的编写环境C. JVM是Java程序的调试环境D. JVM是Java程序的编译环境解析:A。

JVM是Java程序的运行环境,负责将字节码转换为机器码执行。

2. 下列关于Java数据类型的说法,正确的是()。

A. Java中所有数据类型都是引用类型B. Java中基本数据类型包括int、float、char等C. Java中所有数据类型都是基本数据类型D. Java中基本数据类型包括int、float、char等,引用数据类型包括String、Object等解析:D。

Java中基本数据类型包括int、float、char等,引用数据类型包括String、Object等。

3. 下列关于Java面向对象的说法,正确的是()。

A. Java不支持面向对象编程B. Java支持面向对象编程,但不支持继承和多态C. Java支持面向对象编程,包括继承、多态、封装等特性D. Java支持面向对象编程,但封装不是Java面向对象的核心特性解析:C。

Java支持面向对象编程,包括继承、多态、封装等特性。

4. 下列关于Java异常处理的说法,正确的是()。

A. Java异常处理可以通过try-catch语句实现B. Java异常处理可以通过finally语句实现C. Java异常处理可以通过throw语句实现D. 以上说法都不正确解析:A。

Java异常处理可以通过try-catch语句实现。

5. 下列关于Java集合框架的说法,正确的是()。

A. Java集合框架包括List、Set、Map等接口B. Java集合框架包括List、Set、Map等类C. Java集合框架包括List、Set、Map等接口和类D. 以上说法都不正确解析:C。

Java集合框架包括List、Set、Map等接口和类。

最新版精编2020年JAVA程序员笔试模拟考核题库300题(含标准答案)

最新版精编2020年JAVA程序员笔试模拟考核题库300题(含标准答案)

2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1."对下面的语句序列正确的说法是:int c=’A’/3;c+=’1’%5;System.out.println(c);A. 输出结果:25B. 运行时错误C. 产生编译错误D. 输出结果2答案:A2."定义字符串:String s1=”hello”:对下面程序描述正确的是:If(s1==”hello”) {System.out.println(“s1=\”hello\””);} else {Syst em.out.println(“s1 != hello”);}A. 输出 s1!=helloB. 输出 s1=”helloC. 产生编译错误D. 编译正确运行错误答案:B3.软件设计阶段的输出主要是:A. 伪代码B. 程序C. 模块D. 设计规格说明书答案:D4.不同级别的用户对同一对象拥有不同的访问权限或某个客户端不能直接操作到某个对象,但又必须和那个对象有所互动,这种情况最好使用什么模式?A. Fasade模式B. Bridge模式C. Adapter模式D. Proxy模式答案:D5.栈和队列的共同特点是:A. 都是先进后出B. 只允许在端点处插入和删除元素C. 都是先进先出D. 没有共同点答案:B6.Oracle中数值1234567.89如果放入Number(9,3)类型的变量中,存储的值是:A. 1234567.890B. 1234567.9C. 1234567.89D. 会报Numberic error答案:7.PL/SQL中用来判断FETCH语句是否成功,并且在FETCH语句失败时返回逻辑真的属性是:A. %NOTFOUNDB. %FOUNDC. %ISOPEND. %ROWCOUNT答案:A8."Given the following fragment of code;Double d1=newDouble(1.0);Double d2=newDouble(1.0);Float f=new Float(1.0F);Which results of the following expressions are true?A. d1==d2B. d1.equals(d2)C. d1=fD. f.equals(d1)答案:B9.已知二叉树后序遍历序列是dabec,中序遍历序列是debac,他的前序遍历序列是:A. decabB. deabcC. acbedD. cedba答案:10.在oracle中,语句select ‘test’ || null from dual;的查询结果为:A. 结果是testB. 结果是testnullC. 结果是空D. 结果是NULL答案:A11.如果从流中读取一个大数据量的XML文件并进行解析,最好使用哪种解析器?A. 两种都不可以B. 两种都可以,没有太大区别C. SAXParserD. DOMParser答案:C12.如果你设计了一个类,并且覆盖率equals()方法,哪些方法你还会考虑覆盖?A. clone()B. toString()C. wait()D. finalize()E. hashCode()答案:E13."假设test类运行于多线程环境下,那么关于A处的同步下面描述正确的是?public class Test {List list = new java.util.ArrayList();public void test() {synchronized(list) { // --Alist.add( String.valueOf(System.currentTimeMillis()));}}}A. Test 类为singleton时也没有必要增加synchronizedB. Test方法中必须增加synchronizedC. Test类为singleton时有必要增加synchronizedD. Test 方法中没有必要增加synchronized答案:C14.关于final下面哪些是错误的?A. final可以用来声明抽象类中的方法B. final可以用来声明接口中的方法C. 以上都不对D. final method不能被覆盖E. final class不能被继承答案:B15.类的实例方法表示的是什么?( )A. 类的行为B. 父类对象的行为C. 类的属性D. 类对象的行为答案:D16."类A定义如下:class A {private int x=10;int getX() {return x;}}class B extends A {private int x=15;//需要覆盖getx()方法}在”//需要覆盖getx()方法”后应加上的函数是:A. int getX(float f) {…}B. double getx(float f){…}C. float getx(){…};D. int getx(){…}答案:D17.面向对象的特征答案:(抽象、继承、多态、封装)18.在ORACLE中,关于同义词说法错误的是:A. 可以为存储过程创建同义词B. 同义词可以和表重名C. 共有同义词和私有同义词创建的权限不同D. 同义词只能由创建同义词的用户使用答案:D19.释放SessionBean使用的某些资源或者刷新Entity Bean的缓存的代码一般实现在哪个方法中?A. ejbLoadB. ejbPassivateC. ejbStoreD. ejbRemoveE. ejbActivate答案:B20.JSP内置对象有哪些" A.applicationB.requestC.reponseD.sessionE.OOXX答案:ABCD21.Which modifier should be used to define a constant member variable?A. staticB. finalC. abstractD. No modifier can be used答案:B22.下面哪一个primitive type 和对应的wrapper class 是错误的?ng.IntegerB.g ng.LongC.short ng.ShortD.void ng.V oidE.char[] ng.String答案:E23.下面哪个声明是错误?A. int i=0xFFFFFFFF;B. byte b=01;C. char c=\u0000;D. long l=1234567890LE. int i=’a’;答案:C24."转发HTTP 请求一般有两种方法,response.sendRedirect 和RequestDispatcher.forward,哪种方法可以保存request.setAttribute()中设置的值不丢BA. sendRedirectssB. forwardC. 两个都不能D. 两个都可以答案:25.下列关于Java语言的叙述中,正确的是:A. 源文件名其扩展名为.jarB. Java是不区分大小写的C. 源文件中public类的数据不限D. 源文件名必须与public类型的类名相同答案:D26."下面语句片段的输出结果是什么?()int score=9;switch(score){case 0: System.out.println();default: System.out.println(“Error”);case 1: System.out.println(“Good”); break;case 2: System.out.println(“Best”);}A. ErrorB. 没有输出C. Error,Good,BestD. Error,Good答案:D27."下面程序执行代码到第5行时j的值是:1. public class test {2. public static void main(String args[]) {3. int i = OxFFFFFFF1;4. int j = -i;5.6. }7. }A. 14B. 15C. 0D. 1答案:B28.如果你设计了一个类,并且覆盖了equals()方法,哪些方法你还会考虑覆盖?A. hashCode()B. wait()C. finalize()D. toString()E. clone()答案:A29.下面哪些赋值语句是错误的。

精选2020年JAVA程序员笔试模拟考试题库300题(含答案)

精选2020年JAVA程序员笔试模拟考试题库300题(含答案)

2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.一个正在执行的线程在遇到下列()情况下会终止执行?A. 执行stop()方法;B. 执行wait()方法;C. 执行seleep()方法;D. 其run()方法运行完后。

答案:AD2.下面哪个是合法的布尔值A. “false”B. falseC. 10答案:B3.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。

这样,从浏览器的地址栏中可以看到跳转后的链接地址。

所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。

在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用HttpServletResponse.sendRequest()方法。

4.1. 保证在java应用程序中,一个类Class只有一个实例存在该使用什么设计模式答案:单例5."MyObject哪个方法会影响到这段代码的正确性以及效率?Set set = new java.util.HashSet();set.add( new MyObject(A”));if ( set.contains( new MyObject(A”))) {……}A. hashCodeB. toStringC. cloneD. equals答案:。

最新版精选2020年JAVA程序员笔试模拟考核题库300题(含答案)

最新版精选2020年JAVA程序员笔试模拟考核题库300题(含答案)

2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.EJB2.0 中定义了几种Enterprise Bean答案:Session bean, entity bean, message driven bean2."假设test类运行于多线程环境下,那么关于A处的同步下面描述正确的是?public class Test {List list = new java.util.ArrayList();public void test() {synchronized(list) { // --Alist.add( String.valueOf(System.currentTimeMillis()));}}}A. Test 类为singleton时也没有必要增加synchronizedB. Test方法中必须增加synchronizedC. Test类为singleton时有必要增加synchronizedD. Test 方法中没有必要增加synchronized答案:C3.下面哪些声明是错误的?A. char c = ‘\u0000’;B. int i=’a’;C. byte b=01;D. long l=1234567890L;E. int i=0xFFFFFFFF;答案:4.类的实例方法表示的是什么?( )A. 类的行为B. 父类对象的行为C. 类的属性D. 类对象的行为答案:D5.下面的异常处理说明正确的是( )A. try块只能使用一个catch子句。

B. try块必须同时与catch子句和finally子句一起使用。

C. try块不能单独使用。

D. try块中如果执行了return 语句,则其finally子句不能执行。

java模拟试题及答案

java模拟试题及答案

java模拟试题及答案Java模拟试题及答案一、选择题(每题2分,共20分)1. 下列哪个关键字是Java中用于定义类的方法的?A. classB. publicC. staticD. void答案: B2. Java中的哪个类是所有Java类的根类?A. ObjectB. StringC. SystemD. Main答案: A3. 在Java中,以下哪个是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) {D. if (x > y)答案: A4. Java中的哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. package答案: B5. 下列哪个不是Java的访问修饰符?A. publicB. privateC. protectedD. global答案: D6. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. newD. abstract答案: A7. 在Java中,哪个关键字用于定义一个类为抽象类?A. abstractB. finalC. staticD. void答案: A8. Java中,哪个关键字用于定义一个类为最终类,不能被继承?A. abstractB. finalC. staticD. strictfp答案: B9. 下列哪个是Java中的集合框架?A. AWTB. SwingC. JDBCD. Collections答案: D10. Java中,哪个关键字用于实现异常处理?A. tryB. catchC. finallyD. All of the above答案: D二、简答题(每题5分,共20分)1. 简述Java的垃圾回收机制。

答案: Java的垃圾回收机制是一种自动内存管理功能,用于识别和回收不再使用的对象,从而释放内存。

Java程序设计期末考试模拟试题三及答案

Java程序设计期末考试模拟试题三及答案

《Java程序设计》模拟试题3( 90 分钟)一、选择题(3分/题,共15个,共45分)1. 请说出下列代码的执行结果:public class test {public static void main(String[] args) {Integer a1 = new Integer(20);Integer a2 = new Integer(20);if(a1= =a2)System.out.println("a1= =a2");if(a1.equals(a2))System.out.println("equals");}};A)equalsB)a1= =a2C)什么都不输出D)程序错误答案:A。

解析:new出来的对象存储在堆中,所以a1和a2指向不同的内存区域,用操作符“==”比较的结果是false,使用equals则是比较内容,所以返回true。

2. 下面哪种注释方法能够支持javadoc命令:(A)/** ……………..**/(B)/*………………..*/(C)//(D)/**………………*/答案:D。

解析:A中是干扰项,没有这种注释。

B中是注释代码块的语法。

C是注释单行代码。

3. 下面关于Applet的说法正确的是:A)Applet也需要main方法B)Applet必须继承java.awt.AppletC)Applet能访问本地文件D)Applet程序不需要编译答案:A。

解析:因为Applet不需要main方法,只需要Applet的容器即可。

B正确。

Applet为了安全性,禁止Applet访问本地文件。

Applet程序需要编译。

4. 下面的说法正确的是:A.Java语言里的线程不是对象B.Applet需要main方法C.Java语言的对象都是ng.Object的子类D.Java支持多重继承答案:C。

解析:Java中线程是Thread对象,A错。

Applet不需要main方法,B 错。

Java笔试题及答案

Java笔试题及答案

Java笔试题及答案一、单项选择题1.Java是从语言改进重新设计;A.AdaB.C++C.PasacalD.BASIC答案:B2.下列语句哪一个正确A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值;package net.study;public class TestConStructor{public TestConStructor{System.out.println"constructor";}public void TestConStructor{System.out.println"not constructor";}public static void mainString args{TestConStructor testConStructor = new TestConStructor;System.out.println"main";testConStructor.TestConStructor;}}4.提供Java存取数据库能力的包是A.java.sqlB.java.awtngD.java.swing 答案:A5.下列运算符合法的是A.&&B.<>C.ifD.:=答案:A详解:java 中没有<> := 这种运算符, if else不算运算符6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}whilea>0;后,C的值是A.0B.1C.-1D.死循环答案:C详解:Do while 中的语句是至少要执行一次的; 执行顺序为:do 中的语句,然后价差while 条件,如果为false,则终止;如果为true,则继续执行Do中的语句,然后再检查while条件,如此循环;7.下列哪一种叙述是正确的A. abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D详解:abstract不能修饰字段;既然是抽象方法,当然是没有实现的方法,根本就没有body部分;8.下列语句正确的是A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A详解:形参可以看成方法中的局部变量; 传递的是对象引用9.下列哪种说法是正确的A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有A.类 ClassB.AppletC.ApplicationD.Servlet2.下列说法正确的有A. 环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括 class pathC. javac一次可同时编译数个Java源文件D. javac.exe能指定编译结果要置于哪个目录directory答案:BCD3.下列标识符不合法的有A.newB.$UsdollarsC.1234D.car.taxi答案:ACD解释:java 变量命名规则:1. 大小写有别,例如 a 和 A是两个变量 2. 长度任意 3. 可以任何字母开始,另外还可以以"_"和"$"开始,一般"$"是很多代码生成器用的,人工写出来的代码不鼓励"_" "$" 4. 除了第一个字符,后面可以跟任何字母,数字,_和$ new 是关键字不行; 不能以数字开头; 不用有“.”这种符号4.下列说法错误的有A.数组是一种对象B.数组属于一种原生类C. int number=={31,23,33,43,35,63}D.数组的大小可以任意改变答案:BCD解释:数组不是原生类:int double boolean float byte short long char ,初始化多大就是多大5.不能用来修饰interface的有A.privateB.publicC.protectedD.static答案:ACD解释:interface 是public的, 加不加都是public6.下列正确的有A. call by value不会改变实际参数的数值B. call by reference能改变实际参数的参考地址C. call by reference不能改变实际参数的参考地址D. call by reference能改变实际参数的内容答案:ACD7.下列说法错误的有A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:CD解释:原来答案中包含A,但是在 JDK1.5中,这样写是不会出错的,只不过会有警告而已;类方法中当然可以条用其它的方法,比如system.out ; 当然你也可以new Object,调用一下object.toString8.下列说法错误的有A. Java面向对象语言容许单独的过程与函数存在B. Java面向对象语言容许单独的方法存在C. Java语言中的方法属于类中的成员memberD. Java语言中的方法必定隶属于某一类对象,调用方法与过程或函数相同答案:ABC解释:java全部完全面向对象的9.下列说法错误的有A.能被java.exe成功运行的java class文件必须有main方法B. J2SDK就是Java APIC. Appletviewer.exe可利用jar选项运行.jar文件D.能被 Appletviewer成功运行的java class文件必须有main方法答案:BCD解释:A正确main方法是入口 BJ2SDK当然不仅仅包含java API C jar选项是java.exe 的选项 D Appletviewer是运行applet的, applet 不用main方法,继承applet类即可;三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同;答案:正确2.Unicode是用16位来表示一个字的;答案:正确3.原生类中的数据类型均可任意转换;答案:错误1.分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句;答案:BOOL : if a or ifaint : if a == 0float : const EXPRESSION EXP = 0.000001if a < EXP && a >-EXPpointer : if a = NULL or ifa == NULL。

Java程序设计13套模拟试题(含参考答案附期末复习要点)

Java程序设计13套模拟试题(含参考答案附期末复习要点)

《Java程序设计》模拟练习一一.选择题(每题2分,共20分)1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(b )。

A. .javaB. .classC. .htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( a )。

A. 3B. 3. 5C. 4D. 53、下列哪种方法在Applet生命周期中只执行一次(a )A.init B.startC.stop D.run4、类Cycle的main()方法为:public static void main(String args[]){(args[0]);}则运行时如果命令行语句为java Cycle one two three,则输出结果为(b)A CycleB oneC twoD three5、下面哪一个是Thread类中的静态方法( d)A.start() B . stop()C . run()D . sleep(long m)6、关于下列语句哪个答案是正确的(a )A 不能编译成功B 可以编译成功,输出trueC 可以编译成功,但无输出D 以上均不对7、声明公用的abstract方法的正确格式是( c)A public abstract void add() {}B public abstract add();C public abstract void add();D public virtual add();8、下列程序结果正确的是(b )public class Test {public static void main (String args []) {Ad a1=new Ad();Ad a2=new Ad();}}class Ad{static int total = 10;public int add(int i){total=total+i;return total;}}A 11,12B 11,13C 11,11D 12,129、基于的一个程序中包含一个Panel,Panel其中包含一个Label,在Frame和Panel中分别有下面的一些语句://Frame里面的语句setFont( new Font(" Serif", Font. ITALIC, 18 );setBackground( Color. cyan );//Panel中的语句setBackground( Color. white );setForeground( Color. magenta );请问Label用什么颜色和字体显示(a)A. Background = white; foreground = magenta; font = Serif Italic style, 18 pointB. Background = cyan; foreground = black; font = Serif Italic style,18 pointC. Background = cyan; foreground = black; font = system default style for labelsD. Background = white; foreground = magenta; font = system default style for labels10、语句for(int x=0,y=0;(y!=0)&&(x<4);x++)的执行次数是( b )A 无限次B 一次也不执行C 执行4次D 执行3次二.简答题(每题4分,共20分)1. 对比分析Java与其它高级语言的编译和运行过程,说明Java具有平台独立性的原因?2.简述创建线程体的两种方式3.说明对象的基本概念和主要特征4.什么是JDBC5.方法重写和方法重载的特征分别是什么?举例说明三.判断题(每题1分,共10分)1.Java中的的字符使用的是16 位的Unicode 编码。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java寒假笔试模拟题三姓名:________学号:___________一、单项选择题:1.Struts是一个开源的Web开发框架,它是由哪个组织进行维护的?( c )。

A.BEAB.JBossC.ApacheD.Sybase2.如果在Web应用程序中添加struts2框架的支持,需要在配置哪个类作为struts2的核心控制器( a )。

A.FilterDispatcherB.StrutsServletC.ApplicationContextListenerD.SessionFactory3.Struts2的核心控制器需要在哪个配置文件中进行配置( b )A.struts.xmlB.web.xmlC.applicationContext.xmlD.webwork.xml4.关于开发人员自己创建的Action,以下说法正确的是( c )A.Struts2中的Action必须继承Action类B.Struts2中的Action必须实现Action接口C.Struts2中的Action无需实现或者继承任何类或接口D.Struts2中的Action必须继承ActionSupport类解释:Struts 2的Action无须实现任何接口或继承任何类型,普通的POJO类就可以用做Action类,但是,我们为了方便实现Action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类,并重载(Override)此类里的String execute()方法,因为ActionSupport已经实现了Action接口,还实现了Validateable 接口,提供了数据校验功能。

通过继承该ActionSupport类,可以简化Struts 2的Action开发。

5.以下关于Struts2配置文件中package元素说法错误的是( d ).A.package元素的name属性不可以重复B.package元素可以进行继承C.package元素可以声明为抽象(abstract=”true”)D.package元素可以嵌套6.以下关于Struts2配置文件中action元素说法错误的是( a ).A.任何一个action的name属性都不可以相同B.action元素可以没有class属性C.action元素中拥有method属性D.action元素的子元素可以配置interceptor-ref7.Struts2进行数据收集和类型转换的工作,是由以下哪个负责完成的( a )。

A.FilterDispatcherB.ActionInvocationC.defaultStack中配置的InterceptorD.ServletActionContext8.Struts2中的Action默认是否是线程安全的( a )。

A.是线程安全的B.不是线程安全的9.以下关于Struts2访问url的说法,正确的是( c )。

A.Struts2的Action访问url后缀必须是.actionB.Struts2的Action访问url后缀必须是.action或者.doC.Struts2的Action访问url可以随意设置其后缀D.Struts2的Action后缀在web.xml中进行配置10.Struts2中result的type属性为( c )时,表示url进行重定向。

A.dispatcher B.plain C.redirect D.forward解释:chain:用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息.dispatcher:用来转向页面,通常处理JSP.特指服务器端跳转freemaker:处理FreeMarker模板.httpheader:控制特殊HTTP行为的结果类型.redirect:重定向到一个URL,被跳转的页面中丢失传递的信息,如request.特指客户端跳转redirectAction:重定向到一个Action,跳转的页面中丢失传递的信息.stream:向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据.velocity:处理Velocity模板.xslt:处理XML/XLST模板.plainText:显示原始文件内容,例如文件源代码.重点说一下redirect和redirectAction的区别:(1)使用redirect需要后缀名,使用redirect-action可以不需要后缀名.(2)type="redirect"的值可以转到其它命名空间下的action,而redirect-action只能转到同一命名空下的action,因此它可以省略.do的后缀直接写action的名称.11.Struts2中result的type属性为( a )时,表示进行Servlet API中forward内部跳转。

A.dispatcher B.plain C.redirect D.forward12.下面关于struts2标签库说法正确的是( b )。

A.Struts2的标签库使用的是jstl标签库B.直接访问的Jsp中使用Struts2的标签库,FilterDispatcher应该也对JSP进行拦截C.Struts2的标签中只支持el表达式D.Struts2的标签库中没有关于ui的标签13.在struts2的action中,以下哪种方式无法访问到HttpServletRequest( d )。

A.通过ServletActionContext获得HttpServletRequestB.通过实现ServletRequestAware接口C.通过ActionContext获得HttpServletRequestD.通过RequestFactory获得HttpServletRequest 14.关于Struts2的ActionSupport辅助类,以下哪个功能是它所不提供的( c )。

A.对数据进行校验B.输出信息提供国际化支持C.自定义类型转换D.定义了部分返回结果字符串的常量15.以下关于Struts2的Action中处理请求的方法,说法正确的是( a )。

A.返回类型必须是字符串类型B.方法名必须是execute方法C.方法必须有一个传入参数D.方法不能throws任何异常二、填空题(具体要求。

本大题共8道小题,每空2分,共30分)1.Struts2的配置文件默认的文件名是(struts.xml ),可以在通过( include )标签将其他Struts2配置文件导入进来。

2.Struts2配置文件中,关于Action配置的标签名是(action ),其中指定访问路径的属性是( name ),指定处理类的属性是( class )。

3.Action默认执行的方法名称是( execute ),如果希望指定自定义方法,则在action的配置信息中加入( method )属性。

4.Struts2配置文件中表示包的标签是( package ),设定包内action的访问命名空间的属性是( namespace )。

5.Struts2中使用了( ognl )表达式语言,负责对对象数据访问进行支持,该表达式语言中文字面翻译为“对象图导航语言”。

如果Action中存在可访问的变量User,变量名为user,在表现层通过该表达式语言访问user的id属性,则该表达式写为( user.id )。

6.Struts2的标签库为表现层控制数据显示提供了很多的帮助,其中负责输出信息的标签是( property ),负责进行遍历的标签是( Iterator )。

(直接书写标签名即可,无需加入"<s:"等前缀)7.使用Struts2开发过程中,需要编写一个自定义拦截器,则需要实现( Interceptor )接口(只写类名即可)。

8.Struts2配置文件中,表示返回结果的是result标签。

其中type 属性表示其返回结果的类型。

如果希望内部跳转至另一个Action,则type的值为( chain )。

三、简答题(具体要求。

本大题共4道小题,共25分)1.请编写一个Action类和一段配置信息,负责处理登录操作的请求。

提交表单中登录名name属性为username,密码为password。

要求:使用struts2提供的数据接收功能自动接收数据,判断用户名密码是否均为briup,成功则跳转至/WEB-INF/pages/success.jsp页面并将用户名放入到HttpSession中,键名为"user"。

如果验证失败则跳转至/WEB-INF/pages/error.jsp。

(action配置信息,只写action和result部分即可)(10分)2.为了保护不允许直接访问的jsp资源,开发者将所有jsp页面放入到/WEB-INF/pages目录下。

如今有一个需求,希望通过struts2通配符的方式可以直接访问/WEB-INF/pages/admin/目录下的jsp资源。

例如:访问static_index.action 时,相当于访问/WEB-INF/pages/admin/index.jsp。

访问 static_top.action时,相当于访问/WEB-INF/pages/admin/top.jsp。

请使用struts2配置文件中,action通配符的技巧完成改攻能。

(只写action result配置即可) (5分)3.Struts2框架是一个MVC思想的实现,请用自己的语言简述一下MVC 思想。

(5分)4.请用自己的语言简单描述一下,使用了struts2后,当系统接收到一个客户端请求时的处理流程。

相关文档
最新文档