Servlet常用方法

Servlet是在服务器端运行的Java程序,可以接收客户端请求request并做 出响应response

Servlet生命周期:


        实例化:Servlet 容器创建 Servlet 的实例

        初始化:该容器调用 init ( ServletConfig ) 方法        执行一次

        服务:如果请求 Servlet,则容器调用 service() 方法        反复执行        

        销毁:销毁实例之前调用 destroy() 方法        执行一次

Servlet常用方法


        Servlet接口:

void init(ServletConfig config)

由 Servlet 容器调用,完成Servlet对象的初始化
void destroy ( )由 Servlet 容器调用,释放Servlet对象所使用的资源。

       ServletConfig接口:在Servlet初始化过程中获取配置信息 一个Servlet只有一个ServletConfig对象

String getInitParameter (String name )获取web.xml中设置的以name命名的初始化参数值
ServletContext getServletContext( )返回Servlet的上下文对象引用

ServletContext接口;使用Context容器进行通信

void setAttribute (String name, Object object )设置名称为name的属性
Object getAttribute (String name )获取名称为name的属性
String getRealPath (String path )返回参数所代表目录的真实路径

ServletRequest接口;

void setAttribute (String name, Object object ) 在请求中 保存名字是name的属性

Object getAttribute ( String name ) 获取请求中保存的名字为name的属性

void removeAttribute (String name)清除请求中名字为name的属性

void setCharacterEncoding (String charset )设置请求字符集

String getParameter ( String name )返回请求中名字为name的属性

String[ ] getParameterValues (String name ),获取请求中同名但多个数据的的属性

RequestDispatcher getRequestDispatcher( String path )转发(直接跳转一次,带数据,带数据可以用)

void sendRedirect(String location) 重定向,不会带数据。

void encodeURL ( String url ),带cookie的重定向,代替上面的void sendRedirect(String location)

HttpServletRequest接口:

String getContextPath( ) 返回请求URI中表示请求上下文的路径,上下文路径是请求URI的开 始部分

Cookie[ ] getCookies( ) 返回客户端在此次请求中发送的所有cookie对象

HttpSession getSession( ) 返回和此次请求相关联的session,如果没有给客户端分配session, 则创建一个新的session

HttpSession接口

        session对象常用方法:

 String getId() 获取sessionid

void setMaxInactiveInterval(int interval) 设定session的非活动时间

int getMaxInactiveInterval() 获取session的有效非活动时间(以秒 为单位)

void invalidate() 设置session对象失效

void setAttribute(String key, Object value) 以key/value的形式保存对象值

Object getAttribute(String key) 通过key获取对象值

void removeAttribute(String key) 从session中删除指定名称(key)所对 应的对象

ServletResponse接口

PrintWriter getWriter ( ) 返回PrintWriter对象,用于向客户端发送文本 String

getCharacterEncoding ( ) 返回在响应中发送的正文所使用的字符编码

void setCharacterEncoding (String charset ) 设置响应的字符编码

void setContentType ( String type ) 设置发送到客户端的响应的内容类型,此时响应 的状态属于尚未提交”text/html;charset=UTF-8”

HttpServletResponse接口

void addCookie ( Cookie cookie ) 增加一个cookie到响应中,这个方法可多次调用,设置 多个cookie void addHeader ( String name,String value ) 将一个名称为name,值为value的响应报头添加到响应中

void sendRedirect(String location) 发送一个临时的重定向响应到客户端,以便客户端访问 新的URL

void encodeURL ( String url ) 使用session ID对用于重定向的URL进行编码

B/S:Browser/Server浏览器/服务器

C/S Client/Server 客户端/服务器

区别

B/S:不需要客户端,体积小;维护成本低;兼容性强,只需要运行在浏览器上;性能较低;比较安全;

C/S:需要安装客户端,客户端体积大;运行比较稳定;客户端不太安全;兼容性低;不同操作系统需要重写客户端,且功能版本可能有差异;

Cookie、Session的区别

cookie:  

1responce.setCookie 

2addCookie ( Cookie cookie ) 增加一个cookie到响应中,

3Cookie[ ] getCookies( ) 返回客户端在此次请求中发送的所有cookie对象

储存到浏览器上

只能存字符串类型(不同语言之间的交流只能通过字符串)

生命周期取决于浏览器

不安全

session:

存到服务器上

存放object类型

responce.setCookie,服务器告诉浏览器要存的数据,向浏览器发出响应

request.getCookie,

生命周期取决于服务器

安全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值