发布时间:2025-12-09 12:00:28 浏览次数:2
一、为什么说JSP也是动态web开发的一项技术呢?这是因为写JSP虽然像是在写HTML,但是JSP允许在页面中嵌套Java代码,或者利用某个标签表示Java代码(EL与jstl)。这就使得我们在写JSP时能够获取请求对象Request和响应对象Response等这样的web开发常用对象,实现与浏览器的交互。
jsp在第一次被访问时会被Web容器翻译成servlet,在执行
过程:
第一次访问—->helloServlet.jsp—->helloServlet_jsp.java—->编译运行(实际运行jsp.java)最终运行class文件;
PS:被翻译后的servlet在Tomcat的work目录中可以找到;
二、page三大指令;
1) page指令
2) include指令
3) taglib指令
三、jsp 九大隐式对象
名称 类型 描述out javax.servlet.jsp.JspWriter 用于页面输出request javax.servlet.http.HttpServletRequest 得到用户请求信息,response javax.servlet.http.HttpServletResponse 服务器向客户端的回应信息config javax.servlet.ServletConfig 服务器配置,可以取得初始化参数session javax.servlet.http.HttpSession 用来保存用户的信息application javax.servlet.ServletContext 所有用户的共享信息page java.lang.Object 指当前页面转换后的Servlet类的实例(在普通类中的this)pageContext javax.servlet.jsp.PageContext JSP的页面容器exception java.lang.Throwable 表示JSP页面所发生的异常,在错误页中才起作用四、jsp有四大作用域 作用分别如下:
pageContext域:当前jsp页面范围
request域:一次请求
session域:一次会话
application域:整个web应用(相当于ServletContext这个域);
五、
1)pageContext是一个域对象
setAttribute(String name,Object obj)
getAttribute(String name)
removeAttrbute(String name)
pageContext可以向指定的其他域中存取数据
setAttribute(String name,Object obj,int scope)
getAttribute(String name,int scope)
removeAttrbute(String name,int scope)
findAttribute(String name)
—依次从pageContext域,request域,session域,application域中获取属性,在某个域中获取后将不在向后寻找;
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>insert title here</title></head><body> <% pageContext.setAttribute("username", "小红帽"); pageContext.setAttribute("username", "大红帽",PageContext.REQUEST_SCOPE); pageContext.setAttribute("username", "小蓝帽",PageContext.SESSION_SCOPE); pageContext.setAttribute("username", "小黄帽",PageContext.APPLICATION_SCOPE); %> <%=pageContext.findAttribute("username") %></body></html>这个地方只打印出来了小红帽 这就是前面所说的 在某个域中获取后将不在向后寻找;因此在取名key值的时候 名字最好不要相同;
155375.html