Javaweb学习之JSP基础

JSP(Java Server Page) :sun制定的用java编写web应用程序的规范,技术,建立在servlet规范之上

JSP页面组成:注释,模板,元素

注释:

HTML注释:客户端可见
JSP注释:<% -- 注释内容-- %>容器忽略,转译后的java类不可见
Java注释:转译后的Servlet可见,客户端不可见

JSP元素:

1,脚本元素

 除去表达式,语法要求每句后面有分号
<%=a%> == <%out.print(a);%>
<%! %>声明变量时全局的
 <% %>声明变量是局部的

JSP隐藏对象

脚本元素中使用
JSP隐含对象,隐式对象,内置对象
不需要使用者声明创建,由容器维护和管理
全部为JSP保留字

2,指令元素

JSP 指令的语法为:<%@ 指令名称 属性1=“属性值1”属性2="属性值2" … 属性n="属性值n"%>

page指令:在 JSP中的任何地方、以任何顺序,一个页面可以包含任意数量的 page指令
除了import,任何的属性/值对只能出现一次
<%@page 属性1="属性值1" 属性2="属性值2" %>

JSP内置对象

输入输出:request,response,out

作用域通信:session,application,pageContext

Servlet:page,config,

错误对象:exception

注:session保存在一次会话中,一次会话包含多次请求,是一个浏览器与服务器的交互,关闭浏览器,会话结束

放在session作用域的值,跳转一直存在,使用重定向和转发都存在

application存放的值在整个服务器servlet上下文中,服务器停止的时候才会销毁

session和application中的数据都可以通过请求转发和重定向取到其属性值,request只能通过forward取到

在整个应用系统中,多数使用request,只有用户信息使用session,application基本不用

pageContext当前页的上下文,一般不会使用,页面自己可以传值

config一般只会在servlet使用

page:JSP页面本身

exception:针对错误网页,未捕捉的对象


include指令与include动作的区别
 动作可以传参数,指令不能传参数
动作动态包含(编译后的java类不包含内容),指令静态包含(编译后的java类直接包含内容)

你可能感兴趣的:(Javaweb学习之JSP基础)