JSP的七大动作和三大指令

2022-08-04 16:11:53 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

七大动作

  • include 动态包含(分别编译): 用jsp:include动作实现<jsp: include page=“included.jsp” flush=“true” /> 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。flush属性: 用true ,表示页面可刷新。默认为false;
  • useBean动作(jsp页面使用javaBean的第二种方式): <jsp:useBean id=“对象名” class=“包名.类名” scope=“作用范围(request/page/application/session)”/> 作用域默认为page(本页面有效).
  • getProperty动作(name为useBean动作中的id). 从对象中取出属性值:<jsp:getProperty name=“javaBean对象” property=“javaBean对象属性名” />
  • setProperty动作(name为useBean动作中的id): 为对象设置属性值:<jsp:setProperty name=“javaBean对象” property=“javaBean对象属性名” value=http://www.hake.cc/kf/201109/“值”/> 为对象设置属性值:<jsp:setProperty property=“javaBean对象属性名” name=“javaBean对象” param=“username”/>(param=“username” 相当于 value= http://www.hake.cc/kf/201109 /<%=request.getParameter(“username”)%> )
  • param动作(传递参数)): 到达跳转页面可以通过 request.getParameter(“参数名”)方式取出参数值 <jsp:include page=“转向页面的url” > <jsp:param name=“参数名1” value=http://www.hake.cc/kf/201109/“参数值1”> <jsp:param name=“参数名2” value=http://www.hake.cc/kf/201109/“参数值2”> … </jsp:include>

或:

代码语言:javascript复制
<jsp:forward page="转向页面的url" >
           <jsp:param   name="参数名1" value=http://www.hake.cc/kf/201109/"参数值1">
           <jsp:param   name="参数名2" value=http://www.hake.cc/kf/201109/"参数值2">
           ...........
</jsp:forward>
  • forward动作: 跳转页面:<jsp:forward page=“login.jsp” />
  • plugin动作: < jsp:plugin >:用于指定在客户端运行的插件

JSP三大指令

page指令:

1.指定页面编码.例:

代码语言:javascript复制
<%@ page language="java" contentType="text/html;charset=gbk" pageEncoding="gbk" %>

2.导入包,例:

代码语言:javascript复制
<%@ page import="java.util.*,java.text.*" %>.

include 指令

静态包含:把其它资源包含到当前页面中。

代码语言:javascript复制
<%@ include file="/include/header.jsp" %>

动态包含:

代码语言:javascript复制
<jsp:include page="/include/header.jsp"></jsp:include>

两者的区别:翻译的时间段不同 前者:在翻译时就把两个文件合并 后者:不会合并文件,当代码执行到include时,才包含另一个文件的内容。 原则:能用静的就不用动的。 注意:

  1. 静态include的结果是把其他jsp引入当前jsp,两者合为一体,可以达到数据的共享即可以说是统一编译的,而 动态include的结构是两者独立的,直到输出时才合并即为分别编译的.
  2. 动态include的jsp文件独立性很强,是一个单独的jsp文件,需要使用的对象,页面设置,都由自己创建,而静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结合,不能 有变量同名的冲突.而页面设置也可以借用主文件的.
  3. 动态包含总是检查被包含页面的变化,静态包含不一定检查被包含页面的变化.
  4. 动态包含可带参数,静态包含不能带参数.如(<jsp: include page=“included.jsp”>放入参数</jsp:include>);

taglib 指令

在JSP页面中导入JSTL标签库。替换jsp中的java代码片段。

代码语言:javascript复制
 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 

include指令与include动作的区别

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106678.html原文链接:https://javaforall.cn

0 人点赞