• JSP学习笔记(一)


    JSP页面结构组成
    一、HTML标记符
    二、变量和方法声明
    三、Java程序片
    四、Java表达式
    五、JSP标记
    六、注释

    一、HTML标记符

    省略不讲

    二、变量和方法声明

    1.在<%! %>之间声明变量和方法

    2.声明的变量对整个JSP页面内部有效

    (JSP引擎为每个用户启动一个线程,并且这些线程共享JSP页面的成员变量,这些变量占有内存空间直到JSP引擎关闭才释放) (可以用于登记网站访问人数:您是第xx个访问本站的用户等)

    3.定义的方法对整个JSP页面有效

    4.如果不希望多个用户同时调用方法产生不良的影响,可以使用synchronized修饰方法,即:

    <%! int count = 0;
    	synchronized void setCount() {
    		count++;
    	}
    %>
    

    如果两个线程同时调用count++的话,它自增完后先后进行了赋值,于是做了两次把count=1赋给count,最后count还是1而不是2,而使用synchronized修饰后,其他线程必须等待,直到正在调用方法的线程执行完才可以调用该方法

    三.Java程序片

    1.Java程序片写在<% %>之间

    2.程序片按顺序执行,程序片中的变量为局部变量

    即每个用户线程对局部变量的操作不会影响到其他用户线程

    四.Java表达式

    1.<%=x %>

    2.在JSP中表达式的值为字符串,因为由容器将表达式结果转换成字符串后才发给用户浏览器

    五·.JSP标记

    1.page指令标记

    page指令标记用来定义整个JSP页面的一些属性和这些属性的值(对整个JSP页面有效)

    [1]contentType属性
    Tomcat需要负责告知用户浏览器用什么样的方式来处理所接受到的信息,如:
    <% @ page contentType = "text/html;charset = UTF-8"%>(用html解析器)
    <% @ page contentType = "application/msword"%>(用MS-Word应用程序)
    注意:contentType只允许在一个JSP页面中使用一次,不能重复指定不同的属性值
    [2]language属性
    目前只能取Java
    [3]import属性
    导入Java类
    [4]session属性
    设置是否需要用session,默认是true
    [5]buffer属性

    <% @ page buffer = "24KB"%>
    

    [6]autoFlush属性
    是否在缓冲区满时自动刷新缓冲区
    [7]isThreadSafe属性
    设置是否可以多线程访问,默认true
    [8]info属性
    info的值是一个字符串,其目的是准备一个常用但可能要经常修改的字符串,如:

    <% @ page info = "abc" %>
    

    可以使用getServletInfo来获取info的值

    2.include指令标记

    [1]<% @ include file = "url" %>
    [2]作用是在出现该指令的位置静态插入一个文件
    所谓静态插入,就是将当前JSP页面和插入的文件合并成一个新的JSP页面。因此要保证新合成的页面符合JSP的语法规则,如一个的contentType值是application,另一个是text那么合并后就会因为重复设定了不同的属性值而出现语法错误

    3.include动作标记

    [1]<jsp:include page = "url"/>

    [2]include动作标记是在JSP运行时才处理文件,而include指令是在编译阶段就处理的文件

    4.param动作标记

    <jsp: param name = "" value = "">
    

    与jsp:include一起使用时可以将值传递到要加载的文件中去

    5.forward动作标记

    [1]<jsp:forward page = "url"/>
    [2]从该指令处停止当前页面的执行,转向page指定的页面
    [3]转向后,浏览器地址栏仍然是转向前的地址,用户刷新后会重新执行转向前的JSP页面

    6.注释

    注释分两种:

    1.HTML注释

    <!-- 注释内容 -->
    

    JSP引擎把HTML注释交给用户,因此用户通过浏览器查看JSP源文件可以看到

    2.JSP注释

    <%-- 注释内容 --%>
    

    JSP引擎忽略JSP注释,即在编译JSP页面时忽略JSP注释,所有用户看不到

  • 相关阅读:
    获得二进制有多少个1
    读取txt数据
    int最大值
    oracle——数据表的相关操作——约束——各种约束详解
    oracle——数据表的相关操作——转移表空间
    oracle——数据表的相关操作——删除数据表
    oracle——数据表的数据查询——oracle高级函数
    oracle——数据表的相关操作——更新数据——update操作
    oracle——数据表的数据查询——oracle中的特殊表达式between and、in、like、is null、exists、all、some、any等
    oracle——数据表的数据查询——distinct 关键字、group by 字句、having子句
  • 原文地址:https://www.cnblogs.com/fatmanhappycode/p/12231210.html
Copyright © 2020-2023  润新知