JSP:操作指令

目录

目录

一、jsp:useBean操作

语法格式:

属性说明: 

scope作用域: 

1.page:

2.request:

3.session:

4.application

案例:JavaBean的简单使用

二、jsp:setProperty操作

语法格式:

属性说明:

案例: 

三、jsp:getProperty操作

 语法格式:

属性说明:

案例: 

四、jsp:include操作

语法格式:

案例: 

五、jsp:forward操作

语法格式:

案例:

六、jsp:param操作

语法格式:

案例: 

七、jsp:plugin操作

语法格式:

属性说明:

案例: 

总结:


一、jsp:useBean操作

JavaBean解释:一种符合特定约定的Java类,用于封装数据和提供对数据的访问方法。

功能:声明一个JavaBean组件实例,如果不存在,则创建一个。

语法格式:

<jsp:useBean id="" scope=""
<%-- 以下为可选属性 --%>
    {
     
        class=""/
        type=""/
        beanName=""/
    }
    
></jsp:useBean>

属性说明: 

属性

解释

id

通过此变量名在程序内访问不同的JavaBean。

scope

定义JavaBean的作用域,默认值为page。

class

说明实例化一个JavaBean所引用的类的名字,类名区分大小写

type

明确指定在JSP页面中使用的JavaBean类的类型。

例如:com.example.User(完全限定类名)。

type值可以和class或baenName相同。

没有使用class或beanName的情况下使用type,JavaBean并不会被实例化。

beanName

属性值为类名、包名或表达式,它作为参数传给java调用方法instantiate()。

该方法检查参数是类还是模板,然后再调用相应方法实例化一个JavaBean。

scope作用域: 

1.page:

        仅在当前页面有效,是默认值。

2.request:

        生命周期和JSP中的request对象保持同步,request对象可被<jsp:forward>传递。

3.session:

        在不关闭浏览器的情况下,在任意JSP界面或http会话中的servlet执行周期内有效,且生命周期与HttpSession对象同步。

4.application

        在不关闭服务器的前提下,在web应用中所有jsp页面或servlet中均有效。它是由JSP引擎分配的,供所有客户访问的共享资源

案例:JavaBean的简单使用

注意:JavaBean一定要放在一个包文件里,import引入的值要为完全限定名(包名+类名),其次class文件必须放在web应用项目目录”WEB-INF\classes\包名“下。

例如:我的.class文件就是放在以下目录

index.jsp文件 

<%@page contentType= "text/html;charset=GB2312" %>
<%@page import="first.Sqare" %>
<html>
<head>
    <title>例子</title>
</head>
<body>
    <h1>
        <jsp:useBean id="tom" class="Sqare" scope="page"></jsp:useBean>
        <% 
            tom.setEdge(35);
        %>
        <p>正方形边长:
            <%=tom.getEdge() %>
        </p>
        <p>正方形面积:
            <%=tom.SqareArea() %>
        </p>
    </h1>
</body>
</html>

Sqare.java文件

package Sqare;


public class Sqare{
    private int edge;
    public Sqare(){
        edge=5;
    }
    public int getEdge() {
        return edge;
    }
    public void setEdge(int edge) {
        this.edge = edge;
    }
    public int SqareArea(){
        return edge*edge;
    }
}

二、jsp:setProperty操作

相当于Java中的set方法,要预先使用useBean申明JavaBean。

语法格式:

<jsp:setProperty name="JavaBean的ID" property="JavaBean内的属性名" value="值/表达式" />

属性说明:

属性名说明
name与usebean的id值相同,说明要使用的javaBean。
property与javaBean内的属性名相同,便于属性值设置和修改。
value设置javabean内属性的值。

案例: 

三、jsp:getProperty操作

相当于Java中的get方法,要预先使用useBean申明JavaBean。

 语法格式:

<jsp:getProperty name="JavaBean的ID" property="JavaBean内的属性名" />

属性说明:

属性名说明
name与usebean的id值相同,说明要使用的javaBean。
property与javaBean内的属性名相同,便于获取属性值。

案例: 

注意:getProperty操作和setProperty操作必须与usebean搭配使用。

四、jsp:include操作

功能:在JSP包含一个静态或动态文件。与JSP的include编译指令(容器指令)有很大区别。include编译指令主要用来包含一个静态文件,随JSP页面一起进行编译,被修改后,必须重新保存转译才能访问到修改后的文件,为一次转译。而jsp:include操作可以包含静态和动态文件,包含静态文件则与include编译指令功能相同,但包含动态文件时,所被包含的文件并不随JSP页面一起进行编译,而是根据需要进行二次编译,编译后会将动态执行的结果传回包含它的JSP页面,当被修改后,刷新即可访问,为二次转译。

语法格式:

<jsp:include page="相对于web应用的路径" ></jsp:include>

案例: 

五、jsp:forward操作

功能:用于将网页重定向到另一个HTML文件或JSP文件。

与JSP内置对象response区别:

        forward方法的调用者与被调用者之间共享Request和Response。

        sendRedirect方法由于两次浏览器服务器请求,所以有两个Request和Response,不共享Request,传参只能在URL上进行。 

语法格式:

<jsp:forward page="相对于web应用的路径" ></jsp:forward>

案例:

六、jsp:param操作

功能:为其它标签提供附加信息,可以用于参数传递。必须配合jsp:include或jsp:forward使用

语法格式:

<jsp:param name="属性名" value="属性值"/>

案例: 

七、jsp:plugin操作

功能:让客户端实现一个小Java程序(Applet或Bean)

语法格式:

<jsp:plugin
    type="bean | applet"
    name="Applet名称"
    code="java类名"
    codebase="Java类所在目录"
    <%-- 以下为可选属性 --%>
    {
        align="对齐方式"
        height="高度"
        width="宽度"
        hspace="水平间距"
        vspace="垂直间距"
        archive="预先加载的类列表"
        jreversion="JRE版本"
        iepluginurl="URL"
        nspluginurl="URL"
    }
>

属性说明:

案例: 

总结:

        JSP操作指令,其功能包含HTML页面使用JAVABEAN(usebean),实现页面跳转(forward),实现参数传递(param),实现文件包含(include),实现插入JavaApplet(plugin)等操作。

  • 20
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值