JSP知识总结

JSP(Java Server pages)是基于Java语言的动态网页技术,在一个jsp页面中,可以包括指令标识、HTML代码、Javascript 代码、嵌入的Java代码、注释和JSP动作标识等内容。


JSP指令:(<%@ 指令名 属性="x1" 属性2="x2"%>)

1. page

2. include

3. taglib


JSP有9大内置对象


1. out 该对象适合用于向客户端输出各种类型的数据。通常用来向JSP页面输出文本

2. request 处理客户端提交的信息,一般用来获取请求参数,cooike以及客户端相关信息。

3. response 适用于响应客户端请求信息。常用重定向网页,设置HTTP响应报文头和缓冲区配置等等

4. page 适用于操作JSP 页面本身

5. session 适用于同一应用程序中,每个客户端哥哥页面共享数据。常用保存用户信息以及购物车信息等。

6. Exception JSP文件执行发生异常信息

7. application 在同一个应用程序中,各个用户间共享数据。Application对象通常应用在计数器或者是聊天室中。

8. config 适用于读取服务器配置信息

9. pageContext




解疑:

1. pageEncoding 属性和 ContentType属性的区别?
答疑:pageEncoding属性的作用是置顶JSP页面的编码格式,如果默认设置为ISO-8859-1,那么页面中不能编写中文信息,否则会出现乱码。ContentType属性作用是指定服务器处理请求完成后,回应给浏览器的内容类型。

2. Servlet中forward和redirect的区别?
答疑:forward方式:request.getRequestDispatcher("/somePage.jsp").forwardrequest, response);     
   redirect方式:response.sendRedirect("/somePage.jsp");
 
 forward是服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知道,会将request等信息带入下一个jsp;
 redirect则是服务器收到请求后发送一个状态头给客户,客户将再请求一次,这里多了两次网络通信的来往。
 
 区别大约总结如下:
 
 1. 地址栏显示不同,forward还是原来的地址,redirect地址显示新的地址,所以redirect等于客户端向服务器端发起了2次request,也接受了两次response。
 2. 数据共享;forward可以共享request数据,redirect不行
 3. 运用地方不一样,redirect一般用于跳转页面,比如错误页面,比如注销后跳转登录页面等。
 4. 效率,forward高,redirect低
 5. 写法不一样,不用说了晒







你可能感兴趣的:(JAVA-WEB)