Java Web

JSP

一、六大标签

1、声明标签

<%声明变量、方法、类%>
synchronized关键字(给方法或代码段加锁)

声明的变量是全局变量,在当前jsp页面任何地方使用,所有用户共享。服务器不关闭一直存在。
案例:模拟网站计数器。
2、脚本标签

<%java代码段%>

不能声明方法和类。声明的变量是局部变量,在当前jsp页面任何地方使用,一个用户对局部变量的操作不会影响其他用户,一个用户访问该页面时才分配一个内存空间,处理完成清空所占内存。
3、表达式标签

<%=表达式%>

表达式的值由服务器负责计算,并将计算结果用字符串形式发送到客户端显示,相当于out.print()。可以是任何java表达式,只要能求值就行。

与EL比较
:字符串,HTML标记;求值运算符。
:1、求值运算符 “+”;empty。
2、存取运算符 “.”;“[]” 如 s e s s i o n S c o p e . u s e r ; {sessionScope.user}; sessionScope.user;{sessionScope.list[2]}前提:放入4大作用域对象里。
3、对象的属性和方法,表达式标签可以取得。例如:<%=对象.方法()%>


案例:输出九九乘法表。

<%for(int i=1;i<=9;i++){
   
   	for(int j=1;j<=i;j++){
   
   		out.print(j+"*"+i+"="+i*j+" ");
}%>
<br>
<%}%>

4、注释标签
(1)HTML注释
在这里插入图片描述
服务器对此类注释不作任何解释,而直接将其返回给客户端的浏览器,客户在查看源代码时可以看到这条注释。

(2)jsp注释
在这里插入图片描述
又称隐藏注释,只能在原始JSP文件中看到,服务器不会将它发送到客户端,对客户而言,是看不见的。

(1)脚本注释

JSP页面的java脚本中使用的注释。这种注释必须包含在<%与%>之间。脚本注释不仅能在原始JSP文件中看到,而且能在JSP编译成的Servlet中看到,对客户端而言是不可见的。

在这里插入图片描述

5、指令标签

<%@指令名称 属性=“属性值”,… …%>
JSP指令在客户端是不可见的,它是被服务器解释并执行的。通过指令可以使服务器按照指令的设置执行动作或设置在整个JSP页面范围。

(1) page
处理servlet乱码:response.setContentType(“text/html;charset=utf-8”);

显示系统(服务器)的当前时间。

<%Date date=new Date();
  SimpleDateFormat sd = new SimpleDateFormat("hh:mm");
%>
<%=sd.format(date) %>

年 y
月 M
小时 H(0-23)
小时 h(1-12)
分钟 m
秒 s

(2) include
属性:file
静态包含:jsp、html、txt。将内容直接复制过来,合并成一个新文件。
注意:必须保证合并后的jsp文件符合jsp语法规则,比如,被包含文件中要避免使用
(3) taglib

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

6、动作标签
(1)jsp:include
属性:page
动态包含:包含页面与被包含页面完全独立,互不影响,各自转换成servlet生成字节码文件,将被包含页面的输出结果包含进来。jsp、html、txt。
同一web工程,相对路径

跳转到外部web工程3种:
response.sendRedirect(“http://www.baidu.com”)
response.setHeader(“refresh”,“1;url=http://www.baidu.com”);1秒跳转
<c:import url=“http://www.baidu.com”></c:import>

(2)jsp:forward
从该指令处停止当前页面的继续执行,而转向执行page属性指定的JSP页面。(跳转,之后的程序执行不到)
属性:page
同一web工程,相对路径。

(3)jsp:param
作为include和forward的子标记,不能单独使用,用来传参的。
属性:name value
乱码问题:<%request.setCharacterEncoding("utf-8");%>
设置编码的代码是在jsp:forward或jsp:include标签之前,而不是转发的目标页面通过request取值的地方,因为这时已经乱码了再设置编码也没用了。


案例1:包含页面给被包含页面传两个double型参数,被包含页面接收参数计算和并显示。

<%request.setCharacterEncoding
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值