servlet面试知识梳理
2017-08-24 10:33
218 查看
1.servlet定义
简单来说是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。2.servlet的生命周期
Servlet 通过调用 init () 方法进行初始化。Servlet 调用 service() 方法来处理客户端的请求。
Servlet 通过调用 destroy() 方法终止(结束)。
最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的
如下图所示
3.servlet的基本架构
public class ServletName extends HttpServlet{public void doGet(HttpServletRequest req,HttpServletResponse resp) throws ServletException,IOException {
}
public void doPost(HttpServletRequest req,HttpServletResponse resq)throws ServletException,IOException{
}
}
Jsp 页面中的 FORM标签里的method属性为get时调用 doGet(),为 post 时调用 doPost()。
4.servletApi的forward()跟redirect()的区别
前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的
地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量
使用 forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳
转到一个其它服务器上的资源,则必须使用
sendRedirect()方法。
5.Request对象的主要方法
setAttribute(String name,Object):设置名字为 name 的 request 的参数值getAttribute(String name):返回由 name 指定的属性值
getAttributeNames():返回 request 对象所有属性的名字集合,结果是一个枚举的实例
getCookies():返回客户端的所有 Cookie 对象,结果是一个 Cookie 数组
getCharacterEncoding():返回请求中的字符编码方式
getContentLength():返回请求的 Body 的长度
getHeader(String name):获得 HTTP 协议定义的文件头信息
getHeaders(String name):返回指定名字的 request Header 的所有值,结果是一个枚举的
实例
getHeaderNames():返回所以 request Header 的名字,结果是一个枚举的实例
getInputStream():返回请求的输入流,用于获得请求中的数据
getMethod():获得客户端向服务器端传送数据的方法
getParameter(String name):获得客户端传送给服务器端的有 name 指定的参数值
getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的
实例
getParametervalues(String name):获得有 name 指定的参数的所有值
getProtocol():获取客户端向服务器端传送数据所依据的协议名称
getQueryString():获得查询字符串
getRequestURI():获取发出请求字符串的客户端地址
getRemoteAddr():获取客户端的 IP 地址
getRemoteHost():获取客户端的名字
getSession([Boolean create]):返回和请求相关 Session
getServerName():获取服务器的名字
getServletPath():获取客户端所请求的脚本文件的路径
getServerPort():获取服务器的端口号
removeAttribute(String name):删除请求中的一个属性
6.request.getAttribute() 和 request.getParameter() 有何区别?
getParameter 返回的是 String, 用于读取提交的表单中的值;也就是页面穿过来的参数值getAttribute 返回的是 Object,需进行转换,可用 setAttribute 设置成任意对象,使用很灵活,
可随时用;getAttribute()是获取 SESSION 的值
相关文章推荐
- 面试之jsp、Servlet相关知识——生命周期, 区别等
- 03-Servlet 体系结构知识梳理
- 电商之梳理servlet知识---javaweb基础
- 知识梳理之互斥与同步(适用于面试)
- 要学!要会!!要练!!!--程序员笔试面试知识梳理
- servlet 生命周期(面试知识储备)
- Servlet知识梳理
- 面试之jsp、Servlet相关知识——生命周期,区别等
- 面试之jsp、Servlet相关知识——生命周期, 区别等
- PHP 面试知识梳理
- SSM相关知识梳理面试
- 面试之jsp、Servlet相关知识——生命周期, 区别等
- 梳理面试中遇到的HTTP协议相关的问题和知识
- 面试之jsp、Servlet相关知识——生命周期, 区别等
- java-web之servlet基础知识梳理(一)
- 知识梳理之内存(适用于面试)
- 机器学习算法知识梳理--面试