JSP的学习感觉很晕,马老师通过一个个实例将这些JSP语言的语法,特征就行了描述,一遍走下来感觉很空,没有留下什么东西。先给知识点做一下总结。
JSP本身就是一个servlet,直接在HTML中内嵌JSP代码。
一、Servlet:是一种服务器的java应用程序,具有独立于平台和协议的特征,可以生成动态的Web。它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器的数据库或应用程序)的中间层。Servlet是位于Web服务器内部的服务器端的java应用程序,与传统的从命令行启动的java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的java虚拟机。
Servlet的生命周期:
加载:ClassLoader
实例化:New
初始化:init(ServletConfig)
请求处理:Service doGet doPost
退出服务:destroy()
二、JSP语法:
1.Declaration
基本语法:<%! %>
说明:在此声明的变量、方法都会被保留成唯一的一份,知道jsp程序停止执行。此部分声明的变量会转化为SERVLET的成员变量,函数只能在此处声明。
2.Scriptlet
基本语法:<%程序代码区%>
说明:可以放入任何的Java程序代码,此部分声明的变量为局部变量,在service()方法里
3.表达式
基本语法:<%=… …%>
说明:=后面必须是字符串变量或者可以被转换成字符串的表达式不需要以;结束,只有一行
4.Directive
基本语法:<%@Directive 属性=“属性值”%>
说明:Directive(编译指令)相当于在编译期间的命令
5.Action动作指令
此处参考于:(基本语法应用)http://www.cnblogs.com/jy02414216/archive/2011/02/16/1956106.html
三、JSP内置对象:
1. out:内置对象是一个缓冲的输入流,用来给客户端返回信息。它是javax.servlet.jsp JspWriter的一个实例。
典型应用:向客户端输入内容
2. request内置对象表示的是调用JSP页面的请求。通常,request对象是javax.servlet.http.HttpServletRequest接口的一个实例。
典型应用:通过request.getParameter(“paramName”)可以获得Form提交过来的一个参数值
3. 可以用此对象获取请求的Header、信息、请求的方式(get/post)、请求的参数名称、参数值、客户端的主机名称等。对应类:javax.servlet.http.HttpServletRequest
4. Cookie:
Cookie:存放在客户端中,因此有效期时间以客户端的时间为准,可以自己手动设置
Cookie c=new Cookie(”mycookie”,”name”);
c.setMaxAge(“”);
如果没有指定Cookies对象的有效期,则cookies对象只存在于客户端的内存,当浏览器关闭时,cookies就会失效。
服务器可以向客户端写内容,只能是文本内容,客户端可以阻止服务器写入,只能拿自己webapp写入的东西,Cookie分为两种:属于窗口或者文本,一个servlet/jst设置的cookies能够被同一个路径下面或者子路径下面的serlet/jsp读到(路径=URL)
5. Session:
session是服务器端技术,利用这个技术,服务器可以把与会话相关的数据写到一个代表会话的 session对象中,用来存储用户跨网页程序的变量或对象,只针对单一用户。
session有效期可以自己设置
方法一:在web.xml中使用<session-config>的子标签 <session.timeout>,单位为分钟,主要是针对整个应用的所有session。
方法二:
HttpSession session = request.getSession();
session.setMaxInactiveInterval(“自己想要设置的具体时间”)。
默认情况下关闭浏览器session就失效,但是可以手动设置时间的。
6. application:
Application
用于保存整个WebApplication的生命周期内都可以访问的数据
在API中表现为ServletContext
通过HttpServlet的getServletContext方法可以拿到
通过ServletContext的get/setAttribut方法可以取得设置相关的属性。
7. config
配置对象
8. exception
在处理异常的页面中可以直接访问exception隐式对象
9. page
页面对象
PageContext对象:页面上下文对象。jsp引入一个名为PageContext的类,通过他可以访问页面的许多属性
参考:(JSP九大内置对象的实例)http://blog.csdn.net/lenhan12345/article/details/1566594