新浪电话面试印象深刻的一些问题
1.ThreadLocal:
该类提供了线程局部 变量。这些变量不同于它们的普通对应物,因为访问某个变量(通过其get 或set 方法)的每个线程都有自己的局部变量,它独立于变量的初始化副本。ThreadLocal 实例通常是类中的 private static 字段,它们希望将状态与某一个线程(例如,用户 ID 或事务 ID)相关联。
2.Exception 的处理、关系:Exception extends Throwable ;Throwable extends Object implements Serializable;然后记住一些比较常用的Exception类的子类,如:
ClassNotFoundException,DataFormatException,InstantiationException,NamingException,NoSuchFieldException,ParseException,RuntimeException,SAXEcxeption,NoPointerException...
3.Tomcat原理:
Tomcat7特征:
1. 使用随机数去防止跨站脚本攻击;
2. 改变了安全认证中的jessionid的机制,防止session攻击。
3 内存泄露的侦测和防止
4 在war文件外使用别名去存储静态内容
5 对Servlet 3.0,JSP 2.2和JSP-EL 2。2的支持
6 更容易将Tomcat内嵌到应用去中去,比如JBoss
7 异步日志记录 :
直接参考: http://www.iteye.com/news/17928
4.Servlet3.0的特征和应用:
? 可以在POJO或者过滤器filters中使用annotations注释(在web.xml中不再需要再进行设置了)
? 可以将web.xml分块进行管理了。也就是说,用户可以编写多个xml文件,而最终在web.xml中组装它们,这将大大降低web.xml的复杂性增强可读性。比如, struts.jar和spring-mvc.jar每一个都可以有一个web-fragment.xml。开发者不再需要在web.xml中去配置它们了,在web-fragment.xml中的jar文件会自动加载,并且struts/spring-mvc servlets和filters也会自动装配设置。
? 异步处理web的请求----这个特性在tomcat 6 中已经有了,现在在tomcat 7中以Servlet 3标准规范化了,能让使用异步I/O的web应用程序可以移植到不同的web容器中。异步处理使用非阻塞I/O,每次的HTTP连接都不需要对应一个线程。更少的线程可以为更多的连接提供服务。这对于需要长时间计算处理才能返回结果的情景来说是很有用的,比如产生报表,Web Servce调用等。
? 安全的增强---Servlet 3.0现在使用SSL 去加强了会话session的跟踪,代替了原来的cookie和URL重写。
5.Jdk7.0的特征:
模块化,
多语言支持,
开发者生产力,
性能。
参考:http://blog.csdn.net/jonsenelizee/article/details/5174442
6.Spring原理:
7.单例在JVM中怎么样获得两个实例对象
这个问题让哥好尴尬,求大神解答。
8.HTTP协议,head与get区别:
HTTP Reuqest:
一个Http请求包含以下3个部分:HTTP Response :
求解?
10.switch()中的参数可以用String 吗?long?我答:chat 和 int 他:可以用string .jdk7特征。
11.浏览器访问服务器时候,怎么建立连接和释放连接的?
参考:
Tomcat7特征