Jsp面试题笔试题集
Jsp面试题笔试题集
在JSP中可以使用如下方式包含纯HTML:
但是如果data.inc中包含JSP CODE ,我们可以使用:
如何执行一个线程安全的JSP
只需增加如下指令
JSP如何处理HTML FORM中的数据
通过内置的request对象即可,如下:
String item = request.getParameter( item );
int howMany = new Integer(request.getParameter( units )).intvalue();
%>
在JSP如何包含一个静态文件
静态包含如下:
动态包含如下:
在JSP中如何使用注释
主要有四中方法:
1。
2。//
3。/**与**/
4。
在JSP中如何执行浏览重定向
使用如下方式即可:response.sendRedirect( );
也能物理地改变HTTP HEADER属性,如下:
response.setStatus(HttpServletResponse.SC_MOVED_PER MANENTLY);
String newLocn= /newpath/index.html
response.setHeader( Location ,newLocn);
%>
如何防止在JSP或SERVLET中的输出不被BROWSER保存在CACHE中
把如下脚本加入到JSP文件的开始即可:
response.setHeader( Cache-Control , no-store ); //HTTP 1.1
response.setHeader( Pragma , no-cache ); //HTTP 1.0
response.setDateHeader ( Expires , 0); //prevents caching at the proxy server
%>
在JSP中如何设置COOKIE
COOKIE是作为HTTP HEADER的一部分被发送的,如下方法即可设置:
Cookie mycookie = new Cookie( aName , avalue );
response.addCookie(mycookie);
%>
在JSP中如何删除一个COOKIE
Cookie killMyCookie = new Cookie( mycookie , null);
killMyCookie.setMaxAge(0);
killMyCookie.setPath( / );
response.addCookie(killMyCookie);
%>
在一个JSP的请求处理中如何停止JSP的执行
如下例:
if (request.getParameter( wen ) != null)
// do something
else
return;
%>
在JSP中如何定义方法
你可以定义方法,但是你不能直接访问JSP的内置对象,而是通过参数的方法传递。如下:
public String howBadFrom(HttpServletRequest req)
HttpSession ses = req.getSession();
return req.getRemoteHost();
%>
out.print( in general,lao lee is not baddie );
%>
如果BROWSER已关闭了COOKIES,在JSP中我如何打开SESSION来跟踪
使用URL重写即可,如下:
hello1.jsp
Integer num = new Integer(100);
session.putvalue( num ,num);
String url =response.encodeURL( hello2.jsp );
%>
>hello2.jsp
hello2.jsp
Integer i= (Integer )session.getvalue( num );
out.println( Num value in session is +i.intvalue());
%>
在JSP中能发送EMAIL吗
可以使用SUN的专用包:https://www.doczj.com/doc/8c3074806.html,.smtp包。如下脚本使用SmtpClient类发送EMAIL。
String from=
String to= ,
try
SmtpClient client = new SmtpClient( mail.xxxxx.xxx ); client.from(from);
client.to(to);
PrintStream message = client.startMessage(); message.println( To: + to);
message.println( Subject: Sending email from JSP! ); message.println( This was sent from a JSP page! ); message.println();
message.println( Cool! );
message.println();
message.println( Good Boy );
message.println( I m in https://www.doczj.com/doc/8c3074806.html, );
message.println();
client.closeServer();
catch (IOException e)
System.out.println( ERROR SENDING EMAIL: +e);
%>
在SERVLET中我能调用一个JSP错误页吗
当然没问题,如下展示了如何在一个SERVLET控制逻辑单元内调用一个JSP错误页面。
protected void sendErrorRedirect(HttpServletRequest request,
HttpServletResponse response, String errorPageURL,
Throwable e)
throws ServletException, IOException
request.setAttribute ( javax.servlet.jsp.jspException , e);
getServletConfig().getServletContext().
getRequestDispatcher(errorPageURL).forward(request,
response);
public void doPost(HttpServletRequest request,HttpServletResponse response)
try
// do something
catch (Exception ex)
try
sendErrorRedirect(request,response,
/jsp/MyErrorPage.jsp ,ex);
catch (Exception e)
e.printStackTrace();
JSP和APPLET如何通讯
JSP如何与EJB SessionBean通讯
下面的代码段作了很好的示范
foo.AccountHome, foo.Account %>
//定义一个对SessionBeanHome接口实例的全局引用
AccountHome accHome=null;
public void jspInit()
//获得Home接口实例
InitialContext cntxt = new InitialContext( );
Object ref= cntxt.lookup( java:comp/env/ejb/AccountEJB );
accHome = (AccountHome)PortableRemoteObject.narrow(ref,AccountHo me.class);
%>
//实例化SessionBean
Account acct = accHome.create();
//调用远程方法
acct.doWhatever( );
// 如此等等
%>
当我使用一个结果集时,如何防止字段为null 的字域显示在我的HTML输入文本域中
可以定义一个简单的函数来达到目的,如下:
String blanknull(String s)
return (s == null) : s;
%>
然后在JSP的FORM中,可以这样使用
>
如何中SERVLET或JSP下载一个文件(如:binary,text,executable)
现提供两个解决方案:
A:使用HTTP,如
点击下载网络恐龙图片(这个地址是假的)
B:在Servlet中,通过设置ContentType和使用java.io包的Stream等类可作到.例如:
response.setContentType( application/x-msword );
然后想输出缓冲中写一些东东即可。
使用useBean标志初始化BEAN时如何接受初始化参数
使用如下两标签即可:
1、写一个方法实现下述功能,返回一个包含某一字符串中所有奇数位字符的字符串。例如:ahbhchdheh 返回结果abcde xaybz 返回结果xyz
2、数据库题:有一学生表student(student_id,student_name)和一张图书借阅表books_loaned(student_id,book_number),请通过sql语句查找出从未借过一本书的学生的列表(请使用not exist关键字)
3、html javascript题:请在下面的html中添加一个文本输入框(age)和一个提交按钮,同时添加javascript判断:当输入age大于80时,给出javascript提示信息。
如何混合使用Jsp和SSI #include
在JSP中可以使用如下方式包含纯HTML:
但是如果data.inc中包含JSP CODE ,我们可以使用:
如何执行一个线程安全的JSP
只需增加如下指令
JSP如何处理HTML FORM中的数据
通过内置的request对象即可,如下:
String item = request.getParameter( item );
int howMany = new
Integer(request.getParameter( units )).intvalue();
%>
在JSP如何包含一个静态文件
静态包含如下:
动态包含如下:
在JSP中如何使用注释
主要有四中方法:
1。
2。//
3。/**与**/
4。
在JSP中如何执行浏览重定向
使用如下方式即可:response.sendRedirect( );
也能物理地改变HTTP HEADER属性,如下:
response.setStatus(HttpServletResponse.SC_MOVED_PER MANENTLY);
String newLocn= /newpath/index.html
response.setHeader( Location ,newLocn);
%>
如何防止在JSP或SERVLET中的输出不被BROWSER保存在CACHE中
把如下脚本加入到JSP文件的开始即可:
response.setHeader( Cache-Control , no-store ); //HTTP 1.1
response.setHeader( Pragma , no-cache ); //HTTP 1.0
response.setDateHeader ( Expires , 0); //prevents caching at the proxy server
%>
在JSP中如何设置COOKIE
COOKIE是作为HTTP HEADER的一部分被发送的,如下方法即可设置:
Cookie mycookie = new Cookie( aName , avalue );
response.addCookie(mycookie);
%>
在JSP中如何删除一个COOKIE
Cookie killMyCookie = new Cookie( mycookie , null);
killMyCookie.setMaxAge(0);
killMyCookie.setPath( / );
response.addCookie(killMyCookie);
%>
在一个JSP的请求处理中如何停止JSP的执行
如下例:
if (request.getParameter( wen ) != null)
// do something
else
return;
%>
在JSP中如何定义方法
你可以定义方法,但是你不能直接访问JSP的内置对象,而是通过参数的方法传递。如下:
public String howBadFrom(HttpServletRequest req)
HttpSession ses = req.getSession();
return req.getRemoteHost();
%>
out.print( in general,lao lee is not baddie );
%>
如果BROWSER已关闭了COOKIES,在JSP中我如何打开SESSION来跟踪
使用URL重写即可,如下:
hello1.jsp
Integer num = new Integer(100);
session.putvalue( num ,num);
String url =response.encodeURL( hello2.jsp );
java-web开发人员面试题及答案 java 面试题 一.选择题(每题1 分) 1. jsp 有几个内置对象?()(单选) A 5 个 B 6 个 C 9 个 D 8 个 2.在JAVA 中,如何跳出当前的多重嵌套循环?()(多选) A break B return C forward D finally 3.四种会话跟踪技术,哪个范围最大?()(单选) A page B request C session D application 4. java中有几种方法可以实现一个线程?()(单选) A 1种 B 2种 C 3种 D 4种 5. 同步有几种实现方法()(单选) A 4种 B 2种 C 3种 D 1种 6. xml有哪些解析技术?()(多选) A DOM B SAX C STAX D JDOM 7. 下列说法正确的是()(多选) A 构造器Constructor可被继承 B String类不可以继承 C判断两个对象值相同用“==” D char型变量中能不能存贮一个中文汉字 8.下面说法错误的是()(单选) A Vector是线程安全的 B float f=3.4是正确的 C C tringBuffer的长度是可变的 D D tringBuffer的长度是不可变的 9. 下列关于集合的说法正确的是()(多选) A A ist 的具体实现包括ArrayList和Vector B B ap 集合类用于存储元素对(称作"键"和"值"),其中每个键映射到一个值 C C et的元素是有序的 D D ashtable 是线程安全的。 10. 下列关于线程说法正确的是()(多选) A调用sleep不会释放对象锁。 B调用wait方法导致本线程放弃对象锁 C当一个线程进入一个对象的一个synchronized方法后,其它线程不可进入此对象的其它方法 D notify():唤醒全部处于等待状态的线程。 11. 给定JSP 程序源码如下,该JSP 运行后输出的结果是()。(单选) <%int Count=1;%> Count:<%=++Count%> A Count:1 B Count:2 C 1:2 D Count: 12 在J2EE 中的一个JSP文件中,有表达式<%=2+3%>,它将输出()(单选) a)2+3 b)5 c)23 d)不会输出,因为表达式是错误的
java笔试题及答案.doc java笔试题及答案 有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly 2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口) 答:匿名的内部类是没有名字的内部类。不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Sta ti cNestedC las s 和Inner Clas s 的不同答: Nes tedC lass (一般是C+ +的说法),In ne rClass (—般是JAVA的说法)。J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(I
nn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象 4、和的区别 答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and ) 5、Coll ect ion 和Col lect ions 的区别 答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List. Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作 6、什么时候用assert 答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,a ssertion 就是在程序中的一条语句,它对一个boolea n表 达式进行检查,一个正确程序必须保证这个bool ean表达 式的值为tr ue;如果该值为fal se,说明程序己经处于不正确的状态下,系统将给出警告或退出。一般来说,
JSP企业面试题及答案(选择题) 一、单项选择题: 1.下列哪个不是HTML的常用标记。() A. B.
C. D.
2.创建表单的HTML代码是() A. B. C. D. 3.在html中绘制表格时,()标记是表格中的换行标记。 A. B. C. D. 4.使用JavaScript语言中Document的()方法可以在页面上输出字符。 A. document.write() B. document.print() C. document.out() D. document.flush() 5.在HTML中引用外部JavaScript文件中的正确代码为()。 A. B. C. D. 6.在javaScrpt中window对象的()方法用于打开一个新窗口。 A. openWindow() B. window() C. open() D. close() 7.在javaScrpt中window对象的()方法用于关闭当前窗口。 A. open() B. confirm() C. alert() D. close() 8.Tomcat服务器的默认端口为()。 A. 8888 B. 8001 C. 8080 D. 80 9.Eclipse是Java开发的(). A.开发工具包 B.IDE(集成开发环境) C.应用程序服务器 D.Web服务器 10.JSP中的隐式注释为()。 A. // 注释内容 B. C. <%--注释内容--%> D. /* 注释内容 */ 11.在J2EE中,重定向到另一个页面,以下()语句是正确的。 A.request.sendRedirect("https://www.doczj.com/doc/8c3074806.html,"); B.request.sendRedirect(); C.response.sendRedirect(); D.response.sendRedirect("https://www.doczj.com/doc/8c3074806.html,"); 12.假设在helloapp应用中有一个HelloServlet类,它位于org.javathinker 包下,那么这个类的class文件应该放在()目录下。 A. helloapp/HelloServlet.class B. helloapp/WEB-INF/HelloServlet.class C. helloapp/WEB-INF/classes/HelloServlet.class D. helloapp/WEB-INF/classes/org/javathinker/HelloServlet.class 13.在Servlet中,response.getWriter()返回的是() A. JspWriter对象 B. PrintWriter对象java笔试题含答案 班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略
B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong
B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double
百一测评——Java经典面试题 带答案 职业技能题库&在线云笔试平台https://www.doczj.com/doc/8c3074806.html, 试卷名称:Java经典面试题带答案 试卷描述:java笔试题目、招聘笔试、微信考试、在线考试 试卷链接:https://www.doczj.com/doc/8c3074806.html,/store/open/paperInfo/41651 试卷限时:50分 一.单项选择题 每题分值:2.5分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 1.[单选]Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.[单选]下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确
职业技能题库&在线云笔试平台https://www.doczj.com/doc/8c3074806.html, 答案:B 3.[单选]下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名 C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.[单选]提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.doczj.com/doc/8c3074806.html,ng D.java.swing 答案:A 5.[单选]下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 6.[单选]执行如下程序代码 a=0;c=0;
职业技能题库&在线云笔试平台https://www.doczj.com/doc/8c3074806.html, do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环 答案:C 7.[单选]下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.[单选]下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象
JSP网页开发面试题及答案v1.1 JSP网页开发面试题及答案v1.1 1.浏览器jsp,html之间的关系 1.JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览 2.在大多数Browser/Server结构的Web应用中,浏览器直接通过HTML或者JSP的形式与用户交互,响应用户的请求 3.JSP在服务器上执行,并将执行结果输出到客户端浏览器,我们可以说基本上与浏览器无关 2.自定义标签要继承哪个类 这个类可以继承TagSupport或者BodyTagSupport,两者的差别是前者适用于没有主体的标签,而后者适用于有主体的标签。如果选择继承TagSupport,可以实现doStartTag和doEndTag两个方法实现Tag 的功能,如果选择继承BodyTagSupport,可以实现doAfterBody这个方法。 3.如果用JSP开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。 Application 4.doPost,doGet的区别? 1。当你直接访问一个servlet时,调用的是doGet方法。 2。如果你的html里面规定了method访问哪个方法,则调用该方法。 3。get和post提交的数据量是不一样的.get好像最多只能在url后跟8K, post没这个限制 5.jsp乱码如何解决,几种解决方案。? 一、JSP页面显示乱码 二、表单提交中文时出现乱码 三、数据库连接时出现乱码 6.四种会话跟踪技术 会话跟踪是为了跟踪用户于service之间的多次交互. 1.cookie 也就是我们常见的在C盘/文件夹下有一个COOKIE目录 2.session 比Cookie安全.不可见.但占用srevice资源 3.url重写.这是在用户的IE禁止Cookie的时候采用的方法。因为不管是Cookie还是 session 都要借助 4.隐藏域 7.你认为哪种分页效率最高? JSP ,MYSQL,SQL2005. SQL2005效率高: 因为mysql的分页还是先查出所有的记录,再从起始位置开始查出所需要的记录,而SQL2005不
javaWeb面试题(含答案) 1、jsp和servlet的区别、共同点、各自应用的围?? JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。JSP编译后是“类servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层. 2、cookie和session的作用、区别、应用围,session的工作原理??? Cookie:主要用在保存客户端,其值在客户端与服务端之间传送,不安全,存储的数据量有限。 Session:保存在服务端,每一个session在服务端有一个sessionID作一个标识。存储的数据量大,安全性高。占用服务端的存资源。 3、jstl是什么?优点有哪些?? JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)组成。优点有: 1、在应用程序服务器之间提供了一致的接口,最大程序地提高了WEB应用在各应用服务器之间的移植。 2、简化了JSP和WEB应用程序的开发。 3、以一种统一的方式减少了JSP中的scriptlet代码数量,可以达到没有任何scriptlet 代码的程序。在我们公司的项目中是不允许有任何的scriptlet代码出现在JSP中。 4、允许JSP设计工具与WEB应用程序开发的进一步集成。相信不久就会有支持JSTL的IDE 开发工具出现。 4、j2ee的优越性主要表现在哪些方面?MVC模式 a、 J2EE基于JAVA 技术,与平台无关 b、 J2EE拥有开放标准,许多大型公司实现了对该规支持的应用服务器。如BEA ,IBM,ORACLE
北大青鸟推荐:Java精选笔试题(含答案解析) 北大青鸟推荐:Java精选笔试题(含答案解析)如果你是计算机专业出生,但是还没有找到工作的话,你就得补补技术了,一些关于面试、笔试的题要多刷一刷。有可能你知道答案,但是由于语言组织能力有所欠缺,所以面试官的印象不是很好,下面分享一些Java精选的鄙视题,希望对面试这者有帮助。 1,volatile关键字是否能保证线程安全?() 答案:否 volatile关键字用在多线程同步中,可保证读取的可见性,JVM只是保证从主内存加载到线程工作内存的值是最新的读取值,而非cache中。但多个线程对volatile的写操作,无法保证线程安全。 假如线程1,线程2 在进行read,load 操作中,发现主内存中count的值都是5,那么都会加载这个最新的值,在线程1对count进行修改之后,会write到主内存中,主内存中的count变量就会变为6;线程2由于已经进行read,load操作,在进行运算之后,也会更新主内存count的变量值为6;导致两个线程及时volatile关键字修改之后,还是会存在并发的情况。 2,下面哪个流类属于面向字符的输入流( ) A、BufferedWriter B、FileInputStream C、ObjectInputStream D、InputStreamReader 答案:D Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式。
面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和OutputStream的子类。 面向字符的操作为以字符为单位对数据进行操作,在读的时候将二进制数据转为字符,在写的时候将字符转为二进制数据,这些类都是Reader和Writer的子类。 3,Java能不能不通过构造函数创建对象() A、能 B、不能 答案:A Java创建对象的几种方式: (1) 用new语句创建对象,这是最常见的创建对象的方法。 (2) 运用反射手段,调用https://www.doczj.com/doc/8c3074806.html,ng.Class或者https://www.doczj.com/doc/8c3074806.html,ng.reflect.Constructor类的newInstance()实例方法。 (3) 调用对象的clone()方法。 (4) 运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。 (1)和(2)都会明确的显式的调用构造函数;(3)是在内存上对已有对象的影印,所以不会调用构造函数;(4)是从文件中还原类的对象,也不会调用构造函数。 4,下列哪个叙述是正确的() A.子类继承父类的构造方法。 B.abstract类的子类必须是非abstract类。 C.子类继承的方法只能操作子类继承和隐藏的成员变量。 D.子类重写或新增的方法也能直接操作被子类隐藏的成员变量。 答案:C 子类是不继承父类的构造方法的,而是必须调用其父类的构造方法。
最新Servlet面试题 1.销毁一个session对象,应当调用下面哪一个方法() A. session.invalidate() B. session.expunge() C. session.destroy() D. session.end() 2.以下哪个说法是正确的?(多选)( ) A. 每个Http请求对应一个单独的ActionServlet实例 B. 对于每个请求访问HelloAction的Http请求,struts框架只创建一个单独的HelloAction实例 C. 每个子应用对应一个单独的RequestProcessor实例 D. 每个子应用对应一个单独的web.xml文件 3. 在J2EE中,Servlet从实例化到消亡是一个生命周期。下列描述不正确的是()。 A. 在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束 Servlet就消亡了 B. init()方法是容器调用的Servlet实例的第一个方法 C. 在包容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost 方法之前,包容器不会调用Servlet实例的其他方法 D. 在Servlet实例消亡之前,包容器调用Servlet实例的destroy()方法 4. 编写Servlet 的doPost方法时,需要抛出异常为()。 A. ServletException, IOException B. ServletException, RemoteException C. HttpServletException, IOException D. HttpServletException, RemoteException 5. 在Servlet里,能实现重定向的两个方法是()。 A. 运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法 B. 运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法 C. 运用javax.servlet.RequestDispatcher接口的forward方法 D. 运用javax.servlet.ResponseDispatcher接口的forward方法 6. HTTP协议的全称是()。 A. Hyper Transport Text Protocol B. Hyper text Transport Protocol C. Hyper Transfer Text Protocol D. Hyper text Transfer Protocol 7. MVC设计模式包含模型层、视图层和控制器层,在下列组件中扮演控制器角色的是()。 A. Servlet B. JSP C. JavaBean D. HTML 8. 在javax.servlet.http.*API中,HttpServlet的()方法用来处理客户端的请求。 A. Init()
华为java笔试面试题 华为Java笔试题+数据库题 一、单项选择题 1.Java是从( B)语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确(B ) A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 3.下列说法正确的有(C ) A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 4.提供Java存取数据库能力的包是( A) A.java.sql B.java.awt C.https://www.doczj.com/doc/8c3074806.html,ng D.java.swing 5.下列运算符合法的是( A) A.&& B.<> C.if D.:= 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是(C ) A.0 B.1 C.-1 D.死循环 7.下列哪一种叙述是正确的( D) A. abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 8.下列语句正确的是( C) A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 9.下列哪种说法是正确的(A ) A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 二、多项选择题 1.Java程序的种类有(BCD ) A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有( BCD) A.环境变量可在编译source code时指定
JSTL,EL面试题 ###1. 为什么要用自定义标签? ①Jsp中写代码比较混乱,难以维护 ②把一些重复的功能都抽取出来,方便复用。 ###2. 自定义标签分为几个步骤. 1.编写标签处理器类(SimpleTagSupport的实现类) 重写doTag() 2.编写标签库文件(WEB-INF/xxx.tld) 整个文件的定义: 标签的定义: 3.在jsp页面使用标签: 导入标签库(xxx.tld/) 使用标签 ###3. 自定义标签类要继承哪个类? SimpleTagSupport类 sim·ple tag s?'p?rt ###4. 怎么配置自定义标签的属性 在.tld文件标签中添加, 通过标签设定自定义标签的标签名。 ###5. 为什么要用EL表达式,有什么好处 1.在页面中用js脚本和jsp表达式来获取数据显示比较麻烦 a:需要条件判断 b:可能需要强转 2.好处是EL表达式简单易用,默认可访问所有的JSP隐藏对象。 ###6. EL表达式的语法是什么? 美元符号加大括号---> ${ EL表达式} ###7. EL有哪两种访问格式,有什么区别? EL 提供“.“和“[ ]“两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如. 或- 等并非字母或数字的符号,就一定要使用“[ ]“。例如:
${ user. My-Name}应当改为${user["My-Name"]} 如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。例如: ${https://www.doczj.com/doc/8c3074806.html,er[data]}中data 是一个变量。 ###8. EL表达式中有哪些隐藏对象,举几个例子? pageContext : JSP页面的上下文 param : 参数 paramValues : 参数值 header : 头信息 headerValues : 头的值 cookie : 缓存 initParam : 初始化参数 ###9. EL表达式中怎么样拿到request,session里面的值? 例: 可以通过它的隐藏对象RequestScope来获取到Request范围的属性名称所对应的值。 可以通过它的隐藏对象sessionScope来获取到session范围的属性名称所对应的值。###10. EL表达式怎么样拿到用户请求的参数? 可以用${https://www.doczj.com/doc/8c3074806.html,} 来获取用户请求的参数 ###11. EL表达式怎么样得到上下文路径? ${pageContext.request.contextPath} ###12. EL表达式怎么样拿到request? RequestScope ###13. JSTL全称是什么? java服务器页面标准标签库 (JavaServer Pages Standard Tag Library) ###14. JSTL是怎么使用的? 将jstl.jar、standard.jar 复制到Tomcat 的WEB-INF\lib 中. 若要在JSP 网页中使用JSTL 时,一定要先做下面这行声明: < %@ taglib prefix="c" uri="https://www.doczj.com/doc/8c3074806.html,/jsp/jstl/core" %>
Java企业面试题填空题及标准答案 Java企业面试题填空题及答案
————————————————————————————————作者:————————————————————————————————日期:
Java填空题 1 一个Java源程序是由若干个类组成。 2 class 是Java的关键字,用来定义类。 3 Java应用程序中有多个类时,java命令后的类名必须是包含了main 方法的那个类的名字。 4 一个Java应用程序必须且只有一个类含有main 方法。 5 在一个Java应用程序中main方法必须被说明为public static void 。 6 Java中所有程序都使用方法,应用程序以main 方法开始。 7 Java源文件中有多个类,但只能有一个类是public 类。 8 Java源程序编译后生成的字节码文件扩展名为class 。 9 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。 10 Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。 11 关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把这类词作为名字来用。 12 使用关键字boolean 来定义逻辑变量。 13 关键字就是Java语言中已经被赋予特定意义的一些单词。 14 结构化程序设计的基本数据类型包括逻辑类型、整数类型、字符类型、浮点类型。 15 Java中byte型数组在内存中的存储形式是补码。 16 对于int型变量,内存分配 4 个字节。 17 对于byte型变量,内存分配 1 个字节。 18 对于long型变量,内存分配8 个字节。 19 对于short型变量,内存分配 2 个字节。 20 结构化程序设计的基本数据类型包括整数类型、逻辑类型、字符类型、浮点类型。 21 使用关键字char 来定义字符变量。 22 结构化程序设计的基本数据类型包括字符类型、逻辑类型、整数类型、浮点类型。 23 java中,浮点型变量的类型有float和double 两种。 24 对于float型变量,内存分配 4 个字节。 25 对于double型变量,内存分配8 个字节。 26 结构化程序设计的基本数据类型包括浮点类型、逻辑类型、整数类型、字符类型。 27 Java使用Unicode 字符集。 28 混合运算中不同类型的数据先转化为同一类型,然后运算,其中不包括逻辑类型和字符类型。 29 混合运算中不同类型的数据先转化为同一类型,然后运算,其中不包括字符类型、逻辑类型。 30 当把级别高的变量的值赋予级别低的变量时,必须使用强制类型转换。 31 Java中关系运算符的运算结果是boolean 型。 32 Java中逻辑运算符的操作元必须是boolean 型数据。 33 整数类型数据在内存中以二进制的方式表示。 34 Java语言的控制语句有3种类型,即条件语句、循环语句、和转移语句。 35 Java中有两种类型的控制语句即if和switch 。 36 Java语言的控制语句有3种类型,即条件语句、循环语句、和转移语句。
面试题 第三章 CSS常用的选择器有几种。(答案见附录) 1、标记选择器 2、类别选择器 3、ID选择器 HTML中的换行标记是什么。(答案见附录) 第五章 在Java 1.6中,byte、long和String类型是否可以作为switch语句的判断表达式?(答案见附录) Switch语句中的判断表达式的类型是int,因此,传递给switch和case语句的参 数类型必须低于int类型。支持类型包括int、short、char和byte,但是long类型 不可以,而String类型在Java 1.6和之前的版本中都不支持。 可以通过哪几种方式创建字符串?(答案见附录) 在Java中使用String类来声明和创建字符串。要创建字符串,可以通过多种方式实现。 通过String类的构造方法可以创建字符串对象,例如: String str = new String(“good”); 也可以通过为字符串变量赋值的方式来实例化字符串对象,例如: String str = “good”; 在Java中还可以通过方法调用来实例化字符串对象,例如 int x = 100 ; String str = String.valueOf(x) ; 第六章 1、如何执行一个线程安全的jsp。 只需要增加如下指令: <%@page isThreadSafe=”false”%> 2、include指令与动作标识的区别。 include指令是JSP提供的页面包含指令,它可以将一个JSP页面包含到另一个JSP 页面中实现JSP页面的重用,include指令是静态包含,即被包含文件中所有内容会被原样包含到该JSP页面中。 即使被包含文件中有JSP代码,在包含时也不会被编译执行。将两个页面组合成一个页面后编译处理,最后返回结果页面。
2017年最新Java经典笔试面试题笔试题目及答案 2017年最新Java经典笔试面试题 2017年最新Java经典笔试面试题 想要成为java程序员可不是容易的事情,下面YJBYS小编为大家精心搜集了关于Java 经典笔试的面试题,欢迎大家参考借鉴,希望可以帮助到大家! 一.选择题(共50题,每题1.5分,共75分。多选题选不全或选错都不得分。) 1. 以下属于面向对象的特征的是(C,D)。(两项) A) 重载 B) 重写 C) 封装 D) 继承 2. 以下代码运行输出是(C) public class Person{ private String name=”Person”; int age=0; } public class Child extends Person{
public String grade; public static void main(String[] args){ Person p = new Child(); System.out.println(https://www.doczj.com/doc/8c3074806.html,); } } A) 输出:Person B) 没有输出 C) 编译出错 D) 运行出错 3. 在使用super 和this关键字时,以下描述正确的是(A) A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过 B) super()和this()不一定要放在构造方法内第一行 C) this()和super()可以同时出现在一个构造函数中
D) this()和super()可以在static环境中使用,包括static方法和static语句块 4. 以下对封装的描述正确的是(D) A) 只能对一个类中的方法进行封装,不能对属性进行封装 B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用 C) 封装的意义不大,因此在编码时尽量不要使用 D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性 5. 以下对继承的描述错误的是(A) A) Java中的继承允许一个子类继承多个父类 B) 父类更具有通用性,子类更具体 C) Java中的继承存在着传递性 D) 当实例化子类时会递归调用父类中的构造方法 6. 以下程序的运行结果是(D) class Person{ public Person(){ System.out.println(“this is a Person”);
常见的java面试笔试题大汇总 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 https://www.doczj.com/doc/8c3074806.html,ng.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的
最全最详细的PHP面试题(带有答案) 1 php面试题及答案(原创)收藏 基础题: 1.表单中get与post提交方法的区别? 答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息. 2.session与cookie的区别? 答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 cookie:用来存储连续訪問一个頁面时所使用,是存储在客户端,对于Cookie来说是存储在用户WIN的Temp目录中的。 两者都可通过时间来设置时间长短 3.数据库中的事务是什么? 答:事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成, 事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。 简述题: 1、用PHP打印出前一天的时间格式是2006-5-10 22:21:21(2分)**************** 答:echo date('Y-m-d H:i:s', strtotime('-1 days')); 2、echo(),print(),print_r()的区别(3分) 答:echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用) print()只能打印出简单类型变量的值(如int,string) print_r()可以打印出复杂类型变量的值(如数组,对象) echo 输出一个或者多个字符串 3、能够使HTML和PHP分离开使用的模板(1分) 答:Smarty,Dwoo,TinyButStrong,Template Lite,Savant,phemplate,XTemplate 5、使用哪些工具进行版本控制?(1分) 答:cvs,svn,vss; 6、如何实现字符串翻转?(3分) 答:echo strrev($a); 7、优化MYSQL数据库的方法。(4分,多写多得) 答: 1、选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如'省份,性别',最好设置为ENUM 2、使用连接(JOIN)来代替子查询: 3、使用联合(UNION)来代替手动创建的临时表 4、事务处理:
java笔试题目及答案分析 Java上市公司笔试题目及答案分析 一、选择题(不定项选题) 1下面说法正确的是( C ) A.Java中包的主要作用是实现跨平台功能 B.package语句只能放在import语句后 C.包(package)是由一组类(class) 和接口(inter'face)组成 D.无 2不能用来修饰interface的有(ACD ) Aprivate Bpublic Cprotected Dstatic 3在Java语言中,下列关于字符编码和国际化的叙述,哪些是正确的(CD) A每个中文字符占用2个字节,每个英文字符占用1个字节 B假设数据库中的字符是以GBK编码的,那么显示数据库数据的网页也必须是GBK编码的。 CJava的char类型,通常以UTF-16 Big Endian的方式保存一个字符。 D实现国际化应用常用的手段是利用ResourceBundle类 解析: 1.不同的编码格式,字符所占用的字节数是不一样的。如GBK中每个中文占用2个字 节,UTF-8中则是变长编码,可能占用3个字节或者4个字节。因此A不正确。 2.不同的编码方式之间是可以转换的,如果数据库GBK编码,页面上可以使用任意 支持汉字编码的编码方式显示都可以,只要在向页面传输的数据过程中进行编码的转换即可。如:数据库是GBK,页面上是UTF-8,那么可以这样转换:实例代码以java语法编写 4下面代码的执行结果是(C ) public class TestDemo { public static void main(String[] args) { System.out.println(test1());
Java经典面试笔试题及答案 1.什么是对象序列化,为什么要使用? 所谓对象序列化就是把一个对象以二进制流的方式保存到硬盘上。好处:方便远程调用。 2.值传递与引用传递的区别? 所谓值传递就是把一个对象的值传给一个新的变量,但是系统会给这个新的变量开辟一个新的内存空间。不会改变原有的值所谓引用传递就是把一个对象在堆中保存的数据传递给一个变量,此时新的变量与原有的变量对应同一个内存存储空间,当新的变量修改对象的属性时,内存中的数据也会修改。 3.接口与抽象类的区别? 1:接口里面不可以实现方法体,抽象类可以实现方法体。 2:接口可以多继承接口,抽象类不可以。 3:接口需要被子类实现,抽象类是要被子类继承(单一继承)。 4:接口中只能有公有的方法和属性而且必须赋初始值,抽象类中可以有私有方法和属性. 5: 接口中不能存在静态方法,但属性可以和final,抽象类中方法中可以有静态方法,属性也可以。 4.谈谈继承,为什么要使用继承? 所谓继承就是找出几个类中共同的部分,提取出来作为父类。而子类只需要继承父类,就可以共享父类的方法。 使用继承能够减少重复的代码。 5.方法重载的好处?
所谓重载就是在一个类中可以定义多个相同的方法,但是方法的参数类型和参数的个数以及顺序要不同。 重载的好处就是能够让我们很快的掌握该方法的功能,我们只要要记住该方法就能很快的理解该方法的参数以及参数的作用 6.项目中印象最深的部分? 我觉得在该项目中我体现到了反射技术的强大之处,原来我一直不清楚反射是一种什么样的技术,只知道一些概念上的知识,经过这个项目之后,终于知道该怎样灵活运用反射,以及在什么时候运用。 谈谈你对面向对象的理解与认识? 我觉得使用面向对象这种思维的方式比较符合我们人类的思想,不需要去学习一些什么新的思考方式,就按照现实生活做的一些故事就能让人理解该内容的知识以及他们的作用。 我的看法就是: 1:当加入新的功能的时候不会修改原有的代码。(面向接口编程) 2: 当我们写的一个类可以重复的运用在其他项目中。(代码的复用性) 3:当写一个新类的时候要考虑到他的可扩展性。(灵活性) 7.谈谈集合框架? 集合框架分为三部分,第一部分是collection接口,第二部分是Map接口、第三部分是collections帮助类 首先说一下collection接口,collection接口下面的接口分为set 接口、list接口,在往下面就是他们一些实现类。