jsp内置/隐式对象(9个)与el表达式

out:用于页面输出

request:得到用户请求的信息

response:服务器向客户端的回应信息

config:服务器的配置,可以取得初始化参数

session:用来保存客户的信息

applicati:所有用户的共享信息

pageContext:jsp页面容器

exception:jsp页面发生的异常,在错误页面才可以使用

 

out对象:负责往页面输出,往客户端输出内容

out缓冲区默认8kb 可以设置成0 代表关闭out缓冲区 内容直接写到respons缓冲 器(buffer)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


   aaaaaaa
   <%
   out.write("bbbbbbb");
   response.getWriter().write("cccccc");
   %>
   <%="dddddd" %>


 顺序为:cabd 先走response缓冲区,在走out缓冲区,当servlet执行结束时,关闭out缓冲区把它们拿下来放在response缓冲区的底下,就形成了cabd(仅提供给自己看 - -)

pageContext范围只是仅仅在本页当中 它是一个域对象!

格式:

setAttribute(String name,Object obj)

getAttribute(String name)

removeAttrbute(String name)

 

pageContext可以向指定的其他域中存取数据

setAttribute(String name,Object obj,int scope)(int值:指的范围)

getAttribute(String name,int scope)

removeAttrbute(String name,int scope)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	<%
	pageContext.setAttribute("goods", "奶瓶");
	/*向request域中设置值*/
	pageContext.setAttribute("goods","脑袋",pageContext.REQUEST_SCOPE);
	/*向Session域中设置值*/
	pageContext.setAttribute("goods","方便面",pageContext.SESSION_SCOPE);
	/*向application域中设置值*/
	pageContext.setAttribute("goods","快乐水",pageContext.APPLICATION_SCOPE);
	%>
	
	<%
	     从request域中取值
	  System.out.println(pageContext.getAttribute("goods",pageContext.REQUEST_SCOPE));
	     从Session域中取值
	  System.out.println(pageContext.getAttribute("goods",pageContext.SESSION_SCOPE));
	     从application域中取值
	  System.out.println(pageContext.getAttribute("goods",pageContext.APPLICATION_SCOPE));
	   
	%>
	


  

findAttribute(String name)(所以尽量键的name别重复!)

---依次从pageContext域,request域,session域,application域中获取属性,在某个域中获取后将不在向后寻找

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	<%
	pageContext.setAttribute("goods", "奶瓶");
	/*向request域中设置值*/
	pageContext.setAttribute("goods","脑袋",pageContext.REQUEST_SCOPE);
	/*向Session域中设置值*/
	pageContext.setAttribute("goods","方便面",pageContext.SESSION_SCOPE);
	/*向application域中设置值*/
	pageContext.setAttribute("goods","快乐水",pageContext.APPLICATION_SCOPE);
	%>

	<%
	  String name=(String)pageContext.findAttribute("goods");
	  System.out.println(name);
	%>
	


四大作用域的总结:

pageContext域:当前jsp页面范围

request域:一次请求

session域:一次会话

application域:整个web应用

 

 

所有的 EL 都是以 ${ 为起始,以 } 为结尾

<%@page import="java.util.ArrayList"%>
<%@page import="com.oracle.domain.User"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	<%
	pageContext.setAttribute("name","张三");
	/*向域中存储对象*/
        User user=new User();
        user.setName("张三");
        user.setAge(2);
        request.setAttribute("user",user);
        /*向域中存储集合*/
        User user2=new User();
        user2.setName("李四");
        user2.setAge(3);
        ArrayList arr=new ArrayList();
        arr.add(user);
        arr.add(user2);
        application.setAttribute("list",arr);
        
	%>
	
    ${name}
    
    ${user.name}... ${user.age}
    ${list[0].name}
    ${list[1].age}
    
    ${pageContext.request.contextPath}
    
${1+2 } ${empty name} ${name==null?"用户名不存在":"用户名已存在"}

  

转载于:https://www.cnblogs.com/awdsjk/p/11153113.html

你可能感兴趣的:(java,数据库)