zoukankan      html  css  js  c++  java
  • jsp脚本&指令&动作标签简介

    jsp是java服务器页面,运行在服务器端,本质上就是一个servlet,产生的java文件和class保留在tomcat的word目录下.

    jsp脚本格式:

        1.<%..%> java代码片段

        2.<%=..%> 输出表达式 相当于out.print();

        3.<%!...%> 声明成员

    jsp的指令

        作用:声明jsp页面的一些属性和动作
        格式:
            <%@指令名称 属性="值" 属性="值"%>
        jsp指令的分类:
            page:主要声明jsp页面的一些属性(一般IDE工具都会帮我们生成)
            include:静态包含.
                     代码展示:
            taglib:导入标签库
        注意:
            一个页面中可以出现多个指令
            指令可以放在任意位置,一般都放在jsp页面最上面.

    指令详细:

    page指令:

        重要属性:3个
            contentType:设置响应流的编码,及通知浏览器用什么编码打开.设置文件的mimetype
            pageEncoding:设置页面的编码
            import:导入所需要的包
            contentType和pageEncoding联系:
                若两者都出现的时候,各自使用各自的编码
                若只出现一者,两个都使用出现的这个编码
                若两者都不出现,使用服务器默认的编码 tomcat7使用的iso-8859-1
        了解属性:
            language:当前jsp页面里面可以嵌套的语言
            buffer:设置jsp页面的流的缓冲区的大小
            autoFlush:是否自动刷新
            extends:声明当前jsp的页面继承于那个类.必须继承的是httpservlet 及其子类
            session:设置jsp页面是否可以使用session内置对象
            isELIgnored:是否忽略el表达式
            errorPage:当前jsp页面出现异常的时候要跳转到的jsp页面
            isErrorPage:当前jsp页面是否是一个错误页面
                若值为true,可以使用jsp页面的一个内置对象 exception

    page指令代码:

    ![page][1]
    ![600错误页面][2]
    ![运行结果][3]

    include指令:

        静态包含,就是将其他页面或者servlet的内容包含进来,一起进行编译运行.生成一个java文件.
        格式:
            <%@include file="相对路径或者是内部路径" %>
        例如:
            <%@include file="/jsp/include/i1.jsp" %>
            
        路径:
            相对路径:
                ./或者什么都不写 当前路径
                上一级路径  ../
            绝对路径:
                带协议和主机的绝对路径
                不带协议和主机的绝对路径
                    /项目名/资源
                        
            内部路径:
                不带协议和主机的绝对路径去掉项目名
                    请求转发 静态包含 动态包含

    include指令展示:

      ![include][4]
      http://suyibkftp.oss-cn-qingdao.aliyuncs.com/%E5%8D%9A%E5%AE%A2%E6%96%87%E7%AB%A0%E5%9B%BE/jsp/i1.jsp.png
      ![i2][6]
      ![运行结果][7]

    taglib指令:导入标签库:    

        格式:
            <%@taglib prefix="前缀名" uri="名称空间" %>
        若导入之后
            <前缀名:标签 .. >
        例如 导入jstl标签库:
            <c:if test="">输出内容</c:if>

    jsp的动作标签:

        <jsp:forward>:请求转发  相当于java中  request.getRequestDispatcher(..).forward(..);
            <jsp:forward page="内部路径"></jsp:forward>
        <jsp:include>:动态包含
            就是将被包含页面或者servlet的运行结果包含到当前页面中.

    一般只会在model1设计模式中使用(缺点:阅读起来不方便,维护比较困难)
        <jsp:useBean>接受值 相当于  User u=new User() new对象
                 <jsp:useBean id="u" class="com.itheima.domain.User"></jsp:useBean>

            <jsp:setProperty>相当于  u.setName(...) 设置参数
             <jsp:setProperty property="name" name="u"/>
             <jsp:setProperty property="password" name="u"/>

        <jsp:getProperty>打印值 打印参数
            <jsp:getProperty property="name" name="u"/>
    ![jsp:动态标签][8]
  • 相关阅读:
    105.UDP通信实现广播
    104.tcp多线程读写实现群聊
    103.tcp通信实现远程控制
    102.tcp实现多线程连接与群聊
    101.自动注入
    100.dll调用
    99.遍历进程并直接写入内存
    98.TCP通信传输文件
    97.TCP通信
    96.udp通信
  • 原文地址:https://www.cnblogs.com/sybk/p/10004756.html
Copyright © 2011-2022 走看看