频道栏目
首页 > 资讯 > Jsp > 正文

jsp基础学习之特点、执行过程、语法、注释等

18-05-14        来源:[db:作者]  
收藏   我要投稿

jsp特点

1)jsp的运行必须交给tomcat服务器!!!!

tomcat的work目录: tomcat服务器存放jsp运行时的临时文件

2)jsp页面既可以写html代码,也可以写java代码。
    (html页面不能写java代码 。而jsp页面可以写java代码)

<%
    //写java代码
    //获取当前时间
    SimpleDateFormat sdf = new SimpleDateFormat();
    String curDate = sdf.format(new Date());
    //输出内容到浏览器
    out.write("当前时间为2:"+curDate);
 %>

Jsp的执行过程

问题: 访问http://localhost:8080/day12/01.hello.jsp 如何显示效果?

1)访问到01.hello.jsp页面,tomcat扫描到jsp文件,在%tomcat%/work把jsp文件翻译成java源文件
    (01.hello.jsp   ->   _01_hello_jsp.java) (翻译)
2)tomcat服务器把java源文件编译成class字节码文件 (编译)
    (_01_hello_jsp.java  ->  _01_hello_jsp.class)
3)tomcat服务器构造_01_hello_jsp类对象
4)tomcat服务器调用_01_hello_jsp类里面方法,返回内容显示到浏览器。

Jsp语法

语法:<%=变量或表达式%>

作用: 向浏览器输出变量的值或表达式计算的结果
    注意:     
        1)表达式的原理就是翻译成out.print(“变量” );通过该方法向浏览器写出内容
        2)表达式后面不需要带分号结束。

Jsp的脚本

语法:<%java代码 %>

作用: 执行java代码    
    注意:
        1)原理把脚本中java代码原封不动拷贝到_jspService方法中执行。
 脚本中不能声明方法

Jsp的声明

语法:<%! 变量或方法 %>

作用: 声明jsp的变量或方法
注意:
    1)变量翻译成成员变量,方法翻译成成员方法。
可以声明方法
 
 <%
    for(int i=1;i<=6;i++){  
  %>
    >标题<%=i %>>
 <%
  }
  %>

jsp的注释

语法: <%!– jsp注释 –%>

注意;
    1)html的注释会被翻译和执行。而jsp的注释不能被翻译和执行。

include指令

作用: 在当前页面用于包含其他页面

语法: <%@include file="common/header.jsp"%>
注意:
    1)原理是把被包含的页面(header.jsp)的内容翻译到包含页面(index.jsp)中,合并成翻译成一                  个java源文件,再编译运行!!,这种包含叫静态包含(源码包含)
    2)如果使用静态包含,被包含页面中不需要出现全局的html标签了!!!(如html、head、                     body)

page指令

作用: 告诉tomcat服务器如何翻译jsp文件

<%@ page 
    language="java"   --告诉服务器使用什么动态语言来翻译jsp文件
    import="java.util.*" --告诉服务器java文件使用什么包
                    导入包,多个包之间用逗号分割
    pageencoding="utf-8"  --告诉服务器使用什么编码翻译jsp文件(成java文件)
    contenttype="text/html; charset=utf-8" 服务器发送浏览器的数据类型和内容编码
        注意:在开发工具中,以后只需要设置pageencoding即可解决中文乱码问题
    errorpage="error.jsp" 指定当前jsp页面的错误处理页面。
    iserrorpage="false" 指定当前页面是否为错误处理页面。false,不是错误处理页面,则不能使用                                exception内置对象;true,是错误处理页面,可以使用exception内置对象。
    buffer="8kb" jsp页面的缓存区大小
    session="true" 是否开启session功能。false,不能用session内置对象;true,可以使用session内                             置对象。
    iselignored="false" 是否忽略el表达式。
%>

配置全局的错误处理页面:

 

    500
    /common/500.jsp

 
    404
    /common/404.html

9大内置对象

内置对象名          类型
  request      httpservletrequest
response      httpservletresponse
config        servletconfig
application        servletcontext
 session         httpsession
exception        throwable
page            object(this)
out             jspwriter
pagecontext     pagecontext 

out对象

out对象类型,jspwriter类,相当于带缓存的printwriter

printwriter:

    wrier(内容): 直接向浏览器写出内容。

jspwriter

    writer(内容): 向jsp缓冲区写出内容

当满足以下条件之一,缓冲区内容写出:

                    1)缓冲区满了
                    2)刷新缓存区
                    3)关闭缓存区
                    4)执行完毕jsp页面

<%@ page language="java" import="java.util.*" pageencoding="utf-8" buffer="1kb"%><%
    for(int i=1;i<=1024;i++){
        out.write("a");
    }
    //查看缓存区大小
    system.out.println("当前缓存区大小:"+out.getbuffersize());
    //查看缓存区剩余大小
    system.out.println("缓存区剩余大小:"+out.getremaining());
    //刷新缓存
    //out.flush();
    response.getwriter().write("123");
 %>

pagecontext对象

pagecontext对象的类型是pagecontext,叫jsp的上下文对象

可以获取其他八个内置对象

jspwriter out =pagecontext.getout();
httpservletrequest rquest =     pagecontext.getrequest();

本身是一个域对象

servletcontext context域
httpservletrequet  request域
httpsession    session域     --servlet学习的
pagecontext   page域        --jsp学习的

作用: 保存数据和获取数据,用于共享数据

保存数据

1)默认情况下,保存到page域
pagecontext.setattribute("name");
2)可以向四个域对象保存数据
pagecontext.setattribute("name",域范围常量)



//保存数据。默认情况下,保存在page域中
    pagecontext.setattribute("message","page's message");
    pagecontext.setattribute("message","request's messsage",pagecontext.request_scope);//保存到request域中

    request.setattribute("message","request's message"); 等价于上面的代码

    pagecontext.setattribute("message","session's messsage",pagecontext.session_scope);//保存到sessio域中
    pagecontext.setattribute("message","application's messsage",pagecontext.application_scope);//保存到context域中

获取数据

1)默认情况下,从page域获取
    pagecontext.getattribute("name")
2)可以从四个域中获取数据
    pagecontext.getattribute("name",域范围常量)

    域范围常量:
            pagecontext.page_scope
            pagecontext.request_scope
            pagecontext..session_scope
            pagecontext.application_scope
3)自动在四个域中搜索数据
    pagecontext.findattribute("name");
    顺序: page域 -> request域 -> session域- > context域(application域)

 <%--
          原则: 
        1)在哪个域中保存数据,就必须从哪个域取出数据!!!
     --%>
    <%=pagecontext.getattribute("message",pagecontext.page_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.request_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.session_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.application_scope) %>

    

<%-- findattribute(): 在四个域自动搜索数据 顺序: page域 -> request域 -> session域 -> context域 --%> <%=pagecontext.findattribute("message") %> <% //转发 // request.getrequestdispatcher("/03.pagecontext2.jsp").forward(request,response); //重定向 response.sendredirect(request.getcontextpath()+"/03.pagecontext2.jsp"); %>

jsp中的四个域对象

四个域对象:

pagecontext      page域              
request          request域
session          session域
application       context域

域对象作用

保存数据 和 获取数据 ,用于数据共享。

域对象方法

setattribute("name",object) 保存数据
getattribute("name")  获取数据
removeattribute("name") 清除数据

域对象作用范围

page域: 只能在当前jsp页面中使用(当前页面)
request域: 只能在同一个请求中使用(转发)
session域: 只能在同一个会话(session对象)中使用(私有的)
context域: 只能在同一个web应用中使用。(全局的)

el表达式

el作用

jsp的核心语法: jsp表达式 <%=%>和 jsp脚本<% %>。

以后开发jsp的原则: 尽量在jsp页面中少写甚至不写java代码。

使用el表达式替换掉jsp表达式

el表达式作用: 向浏览器输出域对象中的变量值或表达式计算的结果!!!

语法: ${变量或表达式}

el语法

1)输出基本数据类型变量
        1.1 从四个域获取
                        ${name}
        1.2 指定域获取
                        ${pagescope.name}
        域范围: pagescoep / requestscope / sessionscope / applicationscope

   <%
 string name = "rose";  
 //放入域中
 //pagecontext.setattribute("name",name);
 pagecontext.setattribute("name",name,pagecontext.request_scope); 
  %>(必须保存在域中才能用el表达式获取到)
  <%=name %>
  

  <%--
  1)从四个域自动搜索
   --%>
  el表达式: ${name }
  <%--
    ${name } 等价于
        <%=pagecontext.findattribute("name")%>
   --%>
   <%--
    2) 从指定的域中获取数据
    --%>
    el表达式: ${pagescope.name }
    <%--
        ${pagescope.name } 等价于
         <%= pagecontext.getattribute("name",pagecontext.page_scope)%>

     --%>

 2)输出对象的属性值
            student
    3)输出集合对象
           list  和 map
    4)el表达式计算

el输出不同类型的数据

 <%--
    1)el输出对象的属性    
 --%>
 <%
    //保存数据
    student student = new student("eric",20);
    //放入域中
    pagecontext.setattribute("student",student);

    //list
    list  list = new arraylist();
    list.add(new student("rose",18));
    list.add(new student("jack",28));
    list.add(new student("lucy",38));
    //放入域中
    pagecontext.setattribute("list",list);

    //map
    map map = new hashmap();
    map.put("100",new student("mark",20));
    map.put("101",new student("maxwell",30));
    map.put("102",new student("narci",40));
    //放入域中
    pagecontext.setattribute("map",map);

  %>

  <%--使用el获取对象 --%>
  ${student.name} - ${student.age }
  <%--
   ${student.name} 等价于     (点相对于调用getxx()方法)
      <%=((student)pagecontext.findattribute("student")).getname()%>
   --%>
<%--使用el获取list对象 --%> ${list[0].name } - ${list[0].age } ${list[1].name } - ${list[1].age } ${list[2].name } - ${list[2].age } <%-- list[0]等价于 (中括号相对于调用get(参数)方法) ((list)pagecontext.findattribute("list")).get(0) --%>
<%--使用el获取map对象 --%> ${map['100'].name } - ${map['100'].age } ${map['101'].name } - ${map['101'].age } ${map['102'].name } - ${map['102'].age }

el表达式计算

 <%--
    1)算术表达式
      +  -  *  /
 --%>
 ${10+5 }

 ${10*5 }
 

<%-- 2)比较运算 > < >= <= == != --%> ${10>5 }
${10<5 }
${10!=10 }
<%-- 3)逻辑运算 && || ! --%> ${true && false }
${true || false }
${!false }

<%-- 4)判空 null 或 空字符串: empty --%> <% //string name = "eric"; //string name = null; string name = ""; pagecontext.setattribute("name",name); %> 判断null: ${name==null }
判断空字符: ${name=="" }
判空: ${name==null || name=="" } 另一种判空写法: ${empty name }

jsp标签

jsp标签的作用

jsp标签作用:替换jsp脚本。

1)流程判断(if for循环)

2)跳转页面(转发,重定向)

3)。。。。。

jsp标签分类

1)内置标签(动作标签): 不需要在jsp页面导入标签
2)jstl标签: 需要在jsp页面中导入标签
3)自定义标签 : 开发者自行定义,需要在jsp页面导入标签

动作标签

转发标签:

参数标签:

包含标签:

  <%--转发 --%>
<%
    //request.getrequestdispatcher("/09.action2.jspname=eric").forward(request,response);
 %>
<%-- 参数 --%>
<%--

    
    

  --%>

  <%--包含 --%>
  <%--
 
    
    
 --%>
 <%@include file="common/header.jsp" %>
  主页的内容

原理: 包含与被包含的页面先各自翻译成java源文件,然后再运行时合并在一起。(先翻译再合并),动态包含

静态包含 vs 动态包含的区别?

1) 语法不同
静态包含语法: <%@inclue file="被包含的页面"%>
动态包含语法: 

2)参数传递不同
静态包含不能向被包含页面传递参数
动态包含可以向被包含页面传递参数

3)原理不同
静态包含: 先合并再翻译
动态包含: 先翻译再合并

jstl标签

jstl (全名:java standard tag libarary - java标准标签库 )

核心标签库 (c标签库) 天天用
        国际化标签(fmt标签库)
        el函数库(fn函数库)
        xml标签库(x标签库)
        sql标签库(sql标签库)

使用jstl标签步骤

    1) 导入jstl支持的jar包(标签背后隐藏的java代码)
                注意:使用javaee5.0的项目自动导入jstl支持jar包
        2)使用taglib指令导入标签库 
                        <%@taglib uri="tld文件的uri名称" prefix="简写" %>
        3)在jsp中使用标签

核心标签库的重点标签:

保存数据:
           

 <%--set标签 :保存数据(保存到域中)默认保存到page域 --%>


<%
    string msg = null;
    pagecontext.setattribute("msg",msg);
 %>

${msg }//取数据
获取数据: 
         

<%--out标签: 获取数据(从域中) 
default: 当value值为null时,使用默认值
escapexml: 是否对value值进行转义,false,不转义,true,转义(默认)
--%>
//输出结果:

标题3

单条件判断 <%--if标签 :单条件判断--%> 条件成立 多条件判断 <%--choose标签+when标签+otherwirse标签: 多条件判断 --%> 优秀 良好 一般 及格 不及格 循环数据 <%-- foreach标签:循环 --%> <% //list list list = new arraylist(); list.add(new student("rose",18)); list.add(new student("jack",28)); list.add(new student("lucy",38)); //放入域中 pagecontext.setattribute("list",list); //map map map = new hashmap(); map.put("100",new student("mark",20)); map.put("101",new student("maxwell",30)); map.put("102",new student("narci",40)); //放入域中 pagecontext.setattribute("map",map); %>

开始循环

 <%--
  begin="" : 从哪个元素开始遍历,从0开始.默认从0开始
  end="":     到哪个元素结束。默认到最后一个元素
  step="" : 步长    (每次加几)  ,默认1
  items="": 需要遍历的数据(集合) 
  var="": 每个元素的名称 
  varstatus="": 当前正在遍历元素的状态对象。(count属性:当前位置,从1开始)

 --%>

    序号:${varsta.count} - 姓名:${student.name } - 年龄:${student.age}


相关tag标签
上一篇:java实现小程序输入三个数按序输出
下一篇:用堆封装优先级队列解析
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的it技术学习网站

>>标题<%=i %>> <% } %>

jsp的注释

语法: <%!– jsp注释 –%>

注意;
    1)html的注释会被翻译和执行。而jsp的注释不能被翻译和执行。

include指令

作用: 在当前页面用于包含其他页面

语法: <%@include file="common/header.jsp"%>
注意:
    1)原理是把被包含的页面(header.jsp)的内容翻译到包含页面(index.jsp)中,合并成翻译成一                  个java源文件,再编译运行!!,这种包含叫静态包含(源码包含)
    2)如果使用静态包含,被包含页面中不需要出现全局的html标签了!!!(如html、head、                     body)

page指令

作用: 告诉tomcat服务器如何翻译jsp文件

<%@ page 
    language="java"   --告诉服务器使用什么动态语言来翻译jsp文件
    import="java.util.*" --告诉服务器java文件使用什么包
                    导入包,多个包之间用逗号分割
    pageencoding="utf-8"  --告诉服务器使用什么编码翻译jsp文件(成java文件)
    contenttype="text/html; charset=utf-8" 服务器发送浏览器的数据类型和内容编码
        注意:在开发工具中,以后只需要设置pageencoding即可解决中文乱码问题
    errorpage="error.jsp" 指定当前jsp页面的错误处理页面。
    iserrorpage="false" 指定当前页面是否为错误处理页面。false,不是错误处理页面,则不能使用                                exception内置对象;true,是错误处理页面,可以使用exception内置对象。
    buffer="8kb" jsp页面的缓存区大小
    session="true" 是否开启session功能。false,不能用session内置对象;true,可以使用session内                             置对象。
    iselignored="false" 是否忽略el表达式。
%>

配置全局的错误处理页面:

 

    500
    /common/500.jsp

 
    404
    /common/404.html

9大内置对象

内置对象名          类型
  request      httpservletrequest
response      httpservletresponse
config        servletconfig
application        servletcontext
 session         httpsession
exception        throwable
page            object(this)
out             jspwriter
pagecontext     pagecontext 

out对象

out对象类型,jspwriter类,相当于带缓存的printwriter

printwriter:

    wrier(内容): 直接向浏览器写出内容。

jspwriter

    writer(内容): 向jsp缓冲区写出内容

当满足以下条件之一,缓冲区内容写出:

                    1)缓冲区满了
                    2)刷新缓存区
                    3)关闭缓存区
                    4)执行完毕jsp页面

<%@ page language="java" import="java.util.*" pageencoding="utf-8" buffer="1kb"%><%
    for(int i=1;i<=1024;i++){
        out.write("a");
    }
    //查看缓存区大小
    system.out.println("当前缓存区大小:"+out.getbuffersize());
    //查看缓存区剩余大小
    system.out.println("缓存区剩余大小:"+out.getremaining());
    //刷新缓存
    //out.flush();
    response.getwriter().write("123");
 %>

pagecontext对象

pagecontext对象的类型是pagecontext,叫jsp的上下文对象

可以获取其他八个内置对象

jspwriter out =pagecontext.getout();
httpservletrequest rquest =     pagecontext.getrequest();

本身是一个域对象

servletcontext context域
httpservletrequet  request域
httpsession    session域     --servlet学习的
pagecontext   page域        --jsp学习的

作用: 保存数据和获取数据,用于共享数据

保存数据

1)默认情况下,保存到page域
pagecontext.setattribute("name");
2)可以向四个域对象保存数据
pagecontext.setattribute("name",域范围常量)



//保存数据。默认情况下,保存在page域中
    pagecontext.setattribute("message","page's message");
    pagecontext.setattribute("message","request's messsage",pagecontext.request_scope);//保存到request域中

    request.setattribute("message","request's message"); 等价于上面的代码

    pagecontext.setattribute("message","session's messsage",pagecontext.session_scope);//保存到sessio域中
    pagecontext.setattribute("message","application's messsage",pagecontext.application_scope);//保存到context域中

获取数据

1)默认情况下,从page域获取
    pagecontext.getattribute("name")
2)可以从四个域中获取数据
    pagecontext.getattribute("name",域范围常量)

    域范围常量:
            pagecontext.page_scope
            pagecontext.request_scope
            pagecontext..session_scope
            pagecontext.application_scope
3)自动在四个域中搜索数据
    pagecontext.findattribute("name");
    顺序: page域 -> request域 -> session域- > context域(application域)

 <%--
          原则: 
        1)在哪个域中保存数据,就必须从哪个域取出数据!!!
     --%>
    <%=pagecontext.getattribute("message",pagecontext.page_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.request_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.session_scope) %>

    <%=pagecontext.getattribute("message",pagecontext.application_scope) %>

    

<%-- findattribute(): 在四个域自动搜索数据 顺序: page域 -> request域 -> session域 -> context域 --%> <%=pagecontext.findattribute("message") %> <% //转发 // request.getrequestdispatcher("/03.pagecontext2.jsp").forward(request,response); //重定向 response.sendredirect(request.getcontextpath()+"/03.pagecontext2.jsp"); %>

jsp中的四个域对象

四个域对象:

pagecontext      page域              
request          request域
session          session域
application       context域

域对象作用

保存数据 和 获取数据 ,用于数据共享。

域对象方法

setattribute("name",object) 保存数据
getattribute("name")  获取数据
removeattribute("name") 清除数据

域对象作用范围

page域: 只能在当前jsp页面中使用(当前页面)
request域: 只能在同一个请求中使用(转发)
session域: 只能在同一个会话(session对象)中使用(私有的)
context域: 只能在同一个web应用中使用。(全局的)

el表达式

el作用

jsp的核心语法: jsp表达式 <%=%>和 jsp脚本<% %>。

以后开发jsp的原则: 尽量在jsp页面中少写甚至不写java代码。

使用el表达式替换掉jsp表达式

el表达式作用: 向浏览器输出域对象中的变量值或表达式计算的结果!!!

语法: ${变量或表达式}

el语法

1)输出基本数据类型变量
        1.1 从四个域获取
                        ${name}
        1.2 指定域获取
                        ${pagescope.name}
        域范围: pagescoep / requestscope / sessionscope / applicationscope

   <%
 string name = "rose";  
 //放入域中
 //pagecontext.setattribute("name",name);
 pagecontext.setattribute("name",name,pagecontext.request_scope); 
  %>(必须保存在域中才能用el表达式获取到)
  <%=name %>
  

  <%--
  1)从四个域自动搜索
   --%>
  el表达式: ${name }
  <%--
    ${name } 等价于
        <%=pagecontext.findattribute("name")%>
   --%>
   <%--
    2) 从指定的域中获取数据
    --%>
    el表达式: ${pagescope.name }
    <%--
        ${pagescope.name } 等价于
         <%= pagecontext.getattribute("name",pagecontext.page_scope)%>

     --%>

 2)输出对象的属性值
            student
    3)输出集合对象
           list  和 map
    4)el表达式计算

el输出不同类型的数据

 <%--
    1)el输出对象的属性    
 --%>
 <%
    //保存数据
    student student = new student("eric",20);
    //放入域中
    pagecontext.setattribute("student",student);

    //list
    list  list = new arraylist();
    list.add(new student("rose",18));
    list.add(new student("jack",28));
    list.add(new student("lucy",38));
    //放入域中
    pagecontext.setattribute("list",list);

    //map
    map map = new hashmap();
    map.put("100",new student("mark",20));
    map.put("101",new student("maxwell",30));
    map.put("102",new student("narci",40));
    //放入域中
    pagecontext.setattribute("map",map);

  %>

  <%--使用el获取对象 --%>
  ${student.name} - ${student.age }
  <%--
   ${student.name} 等价于     (点相对于调用getxx()方法)
      <%=((student)pagecontext.findattribute("student")).getname()%>
   --%>
<%--使用el获取list对象 --%> ${list[0].name } - ${list[0].age } ${list[1].name } - ${list[1].age } ${list[2].name } - ${list[2].age } <%-- list[0]等价于 (中括号相对于调用get(参数)方法) ((list)pagecontext.findattribute("list")).get(0) --%>
<%--使用el获取map对象 --%> ${map['100'].name } - ${map['100'].age } ${map['101'].name } - ${map['101'].age } ${map['102'].name } - ${map['102'].age }

el表达式计算

 <%--
    1)算术表达式
      +  -  *  /
 --%>
 ${10+5 }

 ${10*5 }
 

<%-- 2)比较运算 > < >= <= == != --%> ${10>5 }
${10<5 }
${10!=10 }
<%-- 3)逻辑运算 && || ! --%> ${true && false }
${true || false }
${!false }

<%-- 4)判空 null 或 空字符串: empty --%> <% //string name = "eric"; //string name = null; string name = ""; pagecontext.setattribute("name",name); %> 判断null: ${name==null }
判断空字符: ${name=="" }
判空: ${name==null || name=="" } 另一种判空写法: ${empty name }

jsp标签

jsp标签的作用

jsp标签作用:替换jsp脚本。

1)流程判断(if for循环)

2)跳转页面(转发,重定向)

3)。。。。。

jsp标签分类

1)内置标签(动作标签): 不需要在jsp页面导入标签
2)jstl标签: 需要在jsp页面中导入标签
3)自定义标签 : 开发者自行定义,需要在jsp页面导入标签

动作标签

转发标签:

参数标签:

包含标签:

  <%--转发 --%>
<%
    //request.getrequestdispatcher("/09.action2.jspname=eric").forward(request,response);
 %>
<%-- 参数 --%>
<%--

    
    

  --%>

  <%--包含 --%>
  <%--
 
    
    
 --%>
 <%@include file="common/header.jsp" %>
  主页的内容

原理: 包含与被包含的页面先各自翻译成java源文件,然后再运行时合并在一起。(先翻译再合并),动态包含

静态包含 vs 动态包含的区别?

1) 语法不同
静态包含语法: <%@inclue file="被包含的页面"%>
动态包含语法: 

2)参数传递不同
静态包含不能向被包含页面传递参数
动态包含可以向被包含页面传递参数

3)原理不同
静态包含: 先合并再翻译
动态包含: 先翻译再合并

jstl标签

jstl (全名:java standard tag libarary - java标准标签库 )

核心标签库 (c标签库) 天天用
        国际化标签(fmt标签库)
        el函数库(fn函数库)
        xml标签库(x标签库)
        sql标签库(sql标签库)

使用jstl标签步骤

    1) 导入jstl支持的jar包(标签背后隐藏的java代码)
                注意:使用javaee5.0的项目自动导入jstl支持jar包
        2)使用taglib指令导入标签库 
                        <%@taglib uri="tld文件的uri名称" prefix="简写" %>
        3)在jsp中使用标签

核心标签库的重点标签:

保存数据:
           

 <%--set标签 :保存数据(保存到域中)默认保存到page域 --%>


<%
    string msg = null;
    pagecontext.setattribute("msg",msg);
 %>

${msg }//取数据
获取数据: 
         

<%--out标签: 获取数据(从域中) 
default: 当value值为null时,使用默认值
escapexml: 是否对value值进行转义,false,不转义,true,转义(默认)
--%>
//输出结果:

标题3

单条件判断 <%--if标签 :单条件判断--%> 条件成立 多条件判断 <%--choose标签+when标签+otherwirse标签: 多条件判断 --%> 优秀 良好 一般 及格 不及格 循环数据 <%-- foreach标签:循环 --%> <% //list list list = new arraylist(); list.add(new student("rose",18)); list.add(new student("jack",28)); list.add(new student("lucy",38)); //放入域中 pagecontext.setattribute("list",list); //map map map = new hashmap(); map.put("100",new student("mark",20)); map.put("101",new student("maxwell",30)); map.put("102",new student("narci",40)); //放入域中 pagecontext.setattribute("map",map); %>

开始循环

 <%--
  begin="" : 从哪个元素开始遍历,从0开始.默认从0开始
  end="":     到哪个元素结束。默认到最后一个元素
  step="" : 步长    (每次加几)  ,默认1
  items="": 需要遍历的数据(集合) 
  var="": 每个元素的名称 
  varstatus="": 当前正在遍历元素的状态对象。(count属性:当前位置,从1开始)

 --%>

    序号:${varsta.count} - 姓名:${student.name } - 年龄:${student.age}


点击复制链接 与好友分享!回本站首页
相关tag标签
上一篇:java实现小程序输入三个数按序输出
下一篇:用堆封装优先级队列解析
相关文章
热门专题推荐 vmware win7激活工具 win10激活工具 excel word office激活 小马激活工具 重装系统 数据恢复 u盘启动工具
图文推荐
文章
推荐
热门新闻

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的it技术学习网站

>