JSP响应的处理过程&JSP的三类语法

<%  String username = request.getParameter("username");
String password = request.getParameter("password");
out.println("username:" + username + "<br>");
out.println("password:" + password + "<br>");
 %>

请求JSP处理过程
1.服务器接受客户端请求

2.分析请求的资源是否存在

3.若存在则判断该资源是否在修改或创建后的第一次调用(到第4步),若不存在则显示404错误。

4.若是,则将请求的JSP文件转换成Servlet(java文件),再编译成class文件;若不是,则跳转到第5步。

5.执行相应的class文件。


JSP语法:
类型一:编译器指令(DIRECTIVE)
<% @ page import = "java.io.*" %>

包含指令:
1)include指令:向当前页面插入一个静态的内容
   JSP语法格式:<%@ include file = "relativeURL" %> 或
   <%@ inclued file = "相对位置" %>

2)page指令:<%@ page 
  [ language = "java"]
  [ extends = "package.class" ]
  [ import = "{ package.class | package.* }"…" ] (这个用得最多)
  [ session = "true | false" ] %>

3)taglib指令:<%@ taglib uri = "URIToTagLibrary" prefix = "tagPrefix" %>
  (用于引入自定义的标签库)



类型二:脚本语法(SCRIPTING)
<%  嵌入JAVA代码; %>

HTML注释:<!-- comments -->   // 可在客户端中查看
可在注释中嵌入表达式:<!-- <%= new java.util.Data() %> -->

隐藏注释:<%-- comments --%> // 不会在客户端中查看

声明:<% 正常的声明语句; %>
此处声明的变量是单例变量(成为类的成员变量)
*JSP声明的格式:<%! int a = 3;%>
   脚本段的形式:<% int b = 3; %>
   当服务器将JSP转换成Servlet时,会将JSP中的声明转换为类的成员变量,而脚本段转换为方法中的局部变量, Servlet是单实例的,这样成员变量的值只有一个,每个用户都会访问到它,而脚本段中的值则是局不变量,每个用户访问的时候各有一份,互不影响。

表达式:<%=对象名%>(无分号)  // 直接输出对象的值

脚本段:<% JAVA代码; %>(有分号)



类型三:动作语法(ACTION)
<jsp:forward>, <jsp:getProperty>, <jsp:include>
1)<jsp:forward> 用作跳转
  直接跳转:< jsp:forward page = {"relativeURL" | "<% expression %>"} >
  带值跳转:< jsp:forward page = {"relativeURL" | "<% expression %>"} >
<jsp:param name = "参数名" value = "参数值">
(将参数往页面传)
   </jsp:forward>
注:<jsp:forward>指令用于转向页面,在该指令后面的所有代码都不再进行。

2)<jsp:include> 用作包含
  与上述用法相似






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值