JSP概述(一)

JSP

201677

9:37

 jsp:java server page  JAVA服务器脚本语言

js页面要被web容器翻译成java类,按照servlet规范,所有jsp翻译生成了的类必须实现HttpJspPage接口。而HttpJspPageServlet的子接口。所以所有jsp翻译生成类也会实现Servletjsp本质是Servletjsp重在页面显示,而servlet重在于逻辑处理。

jsp引擎:是web容器编写的类,负责将jsp页面翻译成java类。在web容器/conf/web.xml中进行注册。

Jsp生命周期1、由jsp引擎将jsp页面翻译成java代码2、将java代码编译成class字节码文件3、加载到容器4、由容器实例化对象5、初始化jspInit()6、调用_jspService()7、销毁

 

Jsp网页主要由元素(Element)和模版数据(TemplateDate)两个部分组成:

  • 模版数据是jsp的静态部分, web容器不处理
  • 元素是必须经由web容器解释 ,元素是以xml做为语法基础,并且大小写要一致

 

web容器支持两种不同格式的jsp语法,普通格式和xml兼容格式      

  •  普通jsp语法是设计给开发者用的
  • xml兼容jsp语法是设计用来容易被开发工具使用的

 

jsp脚本元素:

声明:<%!     %>定义jsp类的成员变量、静态变量、和方法

脚本:<%      %>丰富_jspService(),在脚本中定义的变量,全部是_jspService()方法的局部变量。

表达式:<%=     %>丰富下划线_jspService(),相当于out.print()向页面输出内容。注意,后边不能加分号。

jsp注释:

jsp注释:<%-- --%>容器不翻译,只在元代码中可见,最为安全

html注释:<!-- -->容器翻译到客户端,最不安全。

java注释://    /*   */java代码书写的注释,只在服务器端可见。

 

page指令:

contentType:设置mime类型和编码集

pageEncoding:设置编码集,MIME类型默认为text/html

import:导入jsp类中所用到的类。导入多个,中间以逗号分开。

session:默认为true。表示访问该jsp页面时,产生会话对象。

errorPage:表示当前jsp页面如果爆出了运行异常,则跳转指定出错页面

isErrorPage:表示该jsp页面为出错处理页面。定义了exception隐式对象,接收异常对象。

 

过滤器概述:一个中间web组件,用于过滤拦截源数据和目的数据之间的消息

EL表达式 ${userName} 可以获得值,从小的作用域开始找值,找到即停止找值

${sessionScope.userName} 指定搜索的范围,如果没有值,不会去其它范围查找

配置Filter

手动注册: <filter>

             <filter-name>index</filter-name>

            <filter-class>util.IndexFilter</fil ter-class>

    </filter>

   <filter-mapping>

          <filter-name>index</filter-name>

          <url-pattern>/index.jsp</url-pattern>    <%-- 针对路径过滤--%>

        <servlet-name>dd</servlet-name>                  <%-- 针对servlet过滤--%>

<dispatcher>FORWARD</dipathcher>

  </filter-mapping>

 

注解注册:@WebFilter("/*")

 

过滤器的类型:

1REQUEST:表示直接请求,按请求路径进行过滤。 默认方式

2FORWARD: 表示通过内部转发到达目标资源之前,进行过滤。

3INCLUDE: 表示包含指定资源时,进行过滤。

4ERROR:表示发生异常时,进行过滤。

 

过滤器链:当一个请求到达目标资源时,可能会经过多个过滤器。这就形成了过滤器链。过滤器链执行顺序是:先经过<url-pattern>标签,再经过<servlet-name>标签。如果一个请求经过多个<url-pattern>标签,按部署顺序执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值