您的位置:首页 > Web前端 > JavaScript

JSP概述(一)

2016-07-10 17:58 344 查看
JSP
2016年7月7日
9:37
 jsp:java server page 
JAVA服务器脚本语言
js页面要被web容器翻译成java类,按照servlet规范,所有jsp翻译生成了的类必须实现HttpJspPage接口。而HttpJspPage是Servlet的子接口。所以所有jsp翻译生成类也会实现Servlet,jsp本质是Servlet;jsp重在页面显示,而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("/*")
 
过滤器的类型:
1、REQUEST:表示直接请求,按请求路径进行过滤。
默认方式
2、FORWARD:
表示通过内部转发到达目标资源之前,进行过滤。
3、INCLUDE:
表示包含指定资源时,进行过滤。
4、ERROR:表示发生异常时,进行过滤。
 
过滤器链:当一个请求到达目标资源时,可能会经过多个过滤器。这就形成了过滤器链。过滤器链执行顺序是:先经过<url-pattern>标签,再经过<servlet-name>标签。如果一个请求经过多个<url-pattern>标签,按部署顺序执行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java web jsp