-
Jsp九大内置对象?
这道题是我每次面试都可以遇到的,但是每次都记得不怎么全,因为平时用到的不是全部。
request,response,session,application,out,page,pageContext,config,exception
-
写一个单例模式
这道题是我工作笔试以来遇到最多的一个问题。
-
/** * @ProjectName:Test * @ClassName:Singleton * @Description:单例模式 * @date: 2015-3-9上午11:14:47 * @author: 徐凯强 * @version: V1.0 * @date:2015-3-9上午11:14:47 */ public class Singleton { // 声明该类私有的唯一静态全局变量实例 private static Singleton singleton; // 私有的构造方法 private Singleton() { } // 公开的getInstance方法 public static Singleton getInstance() { if (singleton == null) { singleton = new Singleton(); } return singleton; } }
4.servlet声明周期?
每次笔试必须遇到的问题
1,初始化阶段 调用init()方法
2,响应客户请求阶段 调用service()方法
3,终止阶段 调用destroy()方法
5.String,StringBuilder ,StringBuffer区别?
String是不可变对象,频繁改变的字符串不要用String,因为没改变一次会创建一个对象,对系统性能产生影响。
StringBuilder非线程安全,效率高
StringBuffer线程安全,效率低。
使用优先级StringBuilder>StringBuffer>String
6.说一个设计模式?
23种设计模式随便说一个,工厂模式,观察者模式,迭代器模式,外观模式
7.说说常见的异常?
NullPointerException(空指针),ClassNotFoundException(类不存在),ClassCastException(类型强制转换异常),SQLException(SQL异常),IOException(输入输出异常)
8.http中get和post区别?
这个问题在俩家公司的面试中都遇到了。
1.get请求将参数拼接到url中传递,不安全,传输量少
2.post请求将参数放到http消息头传递,安全,传输量大
9.servlet转发重定向区别?
1.转发地址栏不变,重定向地址改变。
2.转发只能是程序内部的页面,重定向可以是程序发布页面。
3.转发request存放的变量不会失效,重定向request存放的变量不会失效
10.jsp指令?
page、include、taglib
11.jsp标签?
<jsp:include/> <jsp:useBean/> <jsp:forward/><jsp:getProperty/><jsp:setProperty/>
12.ibatis中#和$的区别?
#用于变量替换
select * from table where id = #id#
等效于
prepareStement =stmt.createPrepareStement("select * from table where id = ?")
prepareStement.setString(1,'abc');
$ 的作用实际上是字符串拼接
select * from $tableName$
等效于
StringBuffer sb = new StringBuffer(256);
sb.append("select * from").append(tableName);
sb.toString();
1.实现方式
一个是预编译方式,另一个是拼接,一个可以进行类型匹配,另一个不可以。
2.安全性
#可以防止sql注入,$不可以
3.使用场合
#用于引用变量,$用于引用数据库对象,例如表名。
13.Spring中Bean有几种作用域?
singlton,prototype,request,session,gloable session
14.