面试题

1、JSP 的九大内置对象

答:

名称

类型

描述

pageContext

javax.servlet.jsp.PageContext

表示的是页面上下文环境

request

HttpServletRequest

表示一次用户请求

response

HttpServletResponse

表示一次响应

session

HttpSession

表示一个用户信息

application

ServletContext

表示服务器的上下文环境

page

Object

表示一个页面对象

out

JspWiter

可以使用其输出信息

exception

throwable

表示异常信息

config

ServletConfig

可以获取配置文件的一些信息

 

2、servlet 的生命周期

答:servlet的生命周期就是从servlet出到到销毁的过程,生命周期要有如下几个阶段:加载类-->实例化(为对象分配空间)-->初始化(为对象的属性赋值)-->请求处理(服务阶段)-->销毁

3、oracle 和 MySQL 的分页查询的区别

答:oracle的分页是使用伪列ROWNUM结合子查询实现,mysql的分页使用LIMIT关键字实现

4、get 请求和 post 请求的区别

答:有四点

第一点:GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,POST提交的数据放在HTTP包的Body中

第二点:GET提交的数据大小有限制(URL长度有限制),POST提交的数据没有限制

第三点:GET使用Reuest.QueryString来取得变量值,而POST通过Request.Form来获取变量值

第四点:GET请求提交数据有安全问题,用户名和密码将出现在URL上,他人可以看见。而POST安全

 

3、重载和重写的区别

答:方法的重载和重写都是实现多态的方式,区别有二点

第一点:重载实现的是编译时的多态性,而重写实现的是运行时的多态性。

第二点:重载发生在一个类中,方法名相同,参数列表不同(参数类型不同、参数个数不同或者二者都不同),返回类型可以不同,而重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的参数列表,有兼容的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。

4、视图 是什么?

答:视图是基于 SQL 语句查询结果集的可视化的表

5、jquery 的选择器 有哪些?

答:6个重要的:id选择器,类选择器,元素选择器,组选择器,后代选择器,子选择器

6、原生 ajax 的工作流程

答:1.创建XMLHttpRequest 对象

2.调用open方法获取服务器的连接

3.调用send方法向服务器发起请求

4.注册一个监听器,监听请求返回的状态码

 

7、客户端重定向(跳转)和服务器端重定向(跳转)的区别

答:第一点:客户端重定向地址栏改变,服务器端重定向地址栏不改变

第二点:客户端重定向实际发送了两次请求,原来的内置对象request,reponse不可用。服务器端重定向由当前servlet分发给另外一个servlet就一次请求,原来的内置对象request,reponse可用。

 

8、动态代理和静态代理的区别?

答:

静态代理

  1. 由程序员创建或由特定工具自动生成源代码,再对其编译。在程序运行前,代理类的.class文件就已经存在了
  2. 静态代理通常只代理一个类
  3. 静态代理事先知道要代理的是什么

动态代理

  1. 在程序运行时,运用反射机制动态创建而成
  2. 动态代理是代理一个接口下的多个实现类
  3. 动态代理不知道要代理什么东西,只有在运行时才知道
posted @ 2019-05-12 14:19  上下平中  阅读(120)  评论(0编辑  收藏  举报