JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。JSP实际上就是Servlet.
jsp运行原理 浏览器在访问服务器上的Jsp文件时,最终也是访问一个.class文件
jsp页面-->翻译成.java文件 (在java文件中直接将html标签写到页面上) -->编译成.calss文件
小脚本 <% java代码 %>
表达式 <%= 2+3 %> =号后面的内容会被输出
jsp注释<%--注释内容--%> 建议使用跟这个省流量
html注释<!--注释内容--> 会被回写到页面上,不推荐使用
<%@page import="java.util.arratList"%> import引入头文件
<%@page IsErrorPage="true"%> isErrorPage默认是关闭的 开启后可以使用 exception对象来获取
taglib 作用:在JSP页面中导入JSTL标签库。替换jsp中的java代码片段。
Include:两种 能用静态就用静态
静态包含:把其他资源包含到当前页面中 例如:会将两个html文件糅合在一个java文件中
动态包含:不会合并java文件 当代码执行到Include的时候,才会包含另一个文件的内容
<%@taglib url="http://java.sun.com/jsp/jstl/core" prefix="c"%> 作用:在JSP页面中导入JSTL标签库。替换jsp中的java代码片段。
<jsp:forward> 请求转发 <jsp:param> 设置请求参数
实际开发使用的域对象
PageContext : pageConext 存放的数据在当前页面有效。开发时使用较少。
ServletRequest: request 存放的数据在一次请求(转发)内有效。使用非常多。
HttpSession: session 存放的数据在一次会话中有效。使用的比较多。如:存放用户的登录信息
ServletContext: application 存放的数据在整个应用范围内都有效。因为范围太大,应尽量少用。
<!-- 使用隐式对象制定域查找对应的值 -->
${pageScope.xxx}
${requestScope.xxx}
${sessionScope.xxx}
${applicationScope.xxx}