JSP基本用法

##JSP:
1.指令:
    作用:配置JSP页面,导入资源文件。
        <%@ 指令名称 属性名1=属性值1 属性名2=属性值2%>
    分类:include、page、taglib.
    page   :配置JSP页面
           *contentType:等同于response.setContentType()
              1.设置响应体的mime类型以及字符集
              2.设置当前页面的编码(高级ide才能自动生效,否则用pageEncoding)
           *import:导包
           *errorPage:当前页面发生异常后自动跳转到指定的页面
           *isErrorPage:标识当前页面是否错误页面
                true: 是,可以使用内置对象exception
                false: 默认值,不可以使用exception
    include:页面包含的。导入页面的资源文件。
    taglib :导入资源
            prefix:前缀 
2.注释:
    1.html注释:
    只可以注释html片段
    2.jsp注释:
    <%-- --%>可以注释所有,所以最好在jsp页面中都使用此注释
3.内置对象:
    不需要创建能直接使用的对象
    一共有九个:
      *pageContext:当前页面共享数据pageContext.setAttribute("key","value")
      *request:一次请求访问的多个资源。
      *session:以会话的多个请求间。
      *application:所有用户间共享数据。
      *response:响应对象。
      *page:当前页面的对象。
      *out:输出对象,数据输出到页面上
      *config:Servlet的配置对象
      *exception:异常对象
## MVC:开发模式
   M:model,javaBean
   V:view,JSP
   C:control,Servlet
## EL(Expression language 表达式语言)
   作用:代替和简化jsp页面中的Java代码。
   使用
     1.运算:
         算数、比较、逻辑运算符。
         空运算符:empty
            判断字符串集合数组对象是否为null并且长度是否为0
     2.获取值:
         1.只能从域对象中获取值。
         2.语法:
           1. ${域名称.键名}
              *域名称:
                1.pageScope        pageContext
                2.requestScope     request
                3.sessionScope     session
                4.application      application(ServletContext)
           2.${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止。
           3.获取对象
              1.对象:${域名称.键名.属性名}
                调用对象的getter方法,即属性名.
              2.List集合:${域对象.键名[索引]}
              3.Map集合:${域名称.键名.key名称}
                         ${域名称。键名["key名称"]}
    empty运算符
    判断对象是否为空或者长度为零.
    ${empty list}
    ${not empty str}
    el隐式对象(11个)
    pageContext:获取jsp中的8个对象
    ${pageContext.request.contextPath}获取虚拟对象
##JSTL
    1.概念:JavaServer pages Tag Library jsp标准标签库
      *是由Apache组织提供的开源的免费的jsp标签
    2.作用:用于简化和替换jsp页面上的Java代码
    3.使用:
      1.导入jar包
      2.taglib: <%@ taglib %>
    4.常用JSTL标签
      1.if       if
        test为必选属性,值为true或者false。为ture则显示标签值,false则不现实标签值
      2.choose    switch
        when      case
        otherwise default 
      3.foreach   for
        属性:
        begin: 开始值
        end:结束值
        var:临时变量
        step:步长
        varStatus:循环状态对象
               index:容器中元素的索引
               count:循环次数,从1开始
##三层架构
    1.界面层(表示层web)                SpringMVC struts2
    2.业务逻辑层(service)                Spring    spring
    3.数据访问层(dao:data access object) MyBatis   hibernate


 

你可能感兴趣的:(JAVA,WEB学习笔记)