jsp实用教程第二章

1.page指令标记

2.include指令标记

3.include动作标记

4.param动作标记

5.forward动作标记

6.usuBean动作标记

1.

在JSP(JavaServer Pages)页面中使用page指令,能够指定一些与JSP本身相关的属性和选项,以控制页面的生成方式和执行环境。

page指令必须放置在JSP页面的头部,并且用<%@ page %>标签来声明,其中可以包含多个属性和选项,下面是常用的一些参数:

  1. language:指定JSP页面所使用的编程语言,通常默认为Java。
  2. contentType:设置响应输出流文档类型及字符编码格式,如“text/html;charset=UTF-8”。
  3. pageEncoding:定义当前JSP页的字符集编码,即JSP文件的编码方式,这与contentType中的编码保持一致,如“UTF-8”。
  4. import:导入Java类或包到JSP页面中,可以使用 import="包名" 或 import="类名"的方式,也可以多个用逗号分隔。
  5. session:是否启动HttpSession,默认值true,表示开启。如果不希望创建新Session,则可以将其设置为false。
  6. errorPage:指定当JSP页面出现错误时要跳转的错误页面。
  7. isELIgnored:是否忽略表达式语言,默认为false,表示支持表达式语言。如果为true,则不能使用EL表达式。
  8. trimDirective:指定关闭jsp页面代码中间多余空格,其中包括: none(不去除), page, or all.     

2.

jsp:include指令标记可以在一个JSP文件中包含另一个JSP文件的内容。通过这种方式,可以将多个页面合并成一个页面,同时也可以方便地维护和管理页面代码。jsp:include指令标记的语法如下:

<jsp:include page="pageName.jsp" flush="true"/>

其中,page属性指定需要包含的JSP文件名,并可以使用绝对或相对路径,而flush属性是可选的,用于指定是否清空缓冲区,默认值为false。如果指定为true,则强制刷新缓冲区。

在运行时,当解析到jsp:include标签时,容器会自动载入指定的文档,并执行相应的Servlet,在原先的页面中显示被包含的页面内容,这样就可以像拼图一样,将多个小块拼接成为一个完整的页面。可以减少代码的重复性,增加了网站维护的效率。

需要注意的是,jsp:include并不具备基本的控制机制,每次都会去请求被包含的页面,如果不妥善处理可能会导致请求资源过多、服务器负担过重等问题。因此,在使用该指令时,应根据具体业务情况进行合理的封装和优化。

3.

include动作标记通过<%@ include file="filename" %>来实现,其中file属性定义了要包含的页面文件名。可以使用相对或绝对路径指定文件名,不同页面之间可以通过include动作标记进行调用和嵌套。

在解析过程中,当遇到include动作标记,容器会将其替换为指定页面的内容,并合并到当前页面中一起编译和执行。这样就可以通过引入公共模板、头部和尾部等方式,复用代码,提高开发效率,同时也方便了维护和管理。

需要注意的是,include动作标记是在服务器端完成的,在处理请求时对被包含的页面重新进行编译和执行,因此可能带来一定的性能问题。在实际应用中,建议根据具体情况进行评估和优化,选择最适合的页面包含方式。

4.param动作标记是JSP中的一个常用动态标记,通过它可以将参数传递给另一个页面或资源。param动作标记由< jsp:param >标签实现,其中name属性指定参数名称,value属性指定参数值。

在使用param动作标记时,需要配合include和forward等动作标记来完成参数传递。例如,使用include动作标记包含一个含有参数的JSP页面:

<jsp:include page="example.jsp">
  <jsp:param name="username" value="wuguokai" />
</jsp:include>
在被包含的example.jsp页面中,可以使用EL表达式或JSP脚本中的request.getParameter()方法来获取传递的参数:

<h1>Hello, ${param.username}!</h1>

5.forward动作标记可用于将请求转发到同一Web应用程序中的其他资源(如JSP、Servlet、HTML文件等)。在JSP中使用forward动作标记可以实现请求的快速重定向,并且能够向下一个资源发送请求参数。

forward动作标记由< jsp:forward >标签实现,在使用该标记时,需要指定要重定向的位置:

<jsp:forward page="example.jsp"/>
在这个例子中,当JSP容器遇到上面的标记时,会立即停止当前页面的执行,并将请求转发给example.jsp。此外,还可以为重定向的目标资源添加请求参数以便进行数据传递。

6.

useBean动作标记允许在JSP页面中使用JavaBean,为实现MVC(Model-View-Controller)结构提供了良好的支持。它可以在JSP文件中声明一个JavaBean,并将其与请求对象相关联。

useBean动作标记由< jsp:useBean >标签实现,其中id属性指定JavaBean的名称或别名,class属性指定JavaBean的类名,scope属性指定JavaBean的作用域:

<jsp:useBean id="user" class="com.example.UserBean" scope="session"/>

在上面的例子中,声明了一个名称为user、类名为com.example.UserBean、作用域为session的JavaBean。在使用该JavaBean时,可以通过EL表达式访问其属性和方法:

Welcome, ${user.name}!
需要注意的是,在使用useBean动作标记时,需要确保JavaBean的类文件已经被编译并位于Web应用程序中的WEB-INF/classes目录或JAR文件中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值