注释中:注意的是 显式注释:及客户端能看到,如<!-- -->
隐式注释:即在<% %>可以用java的注释进行表示 还有jsp中的注释<%--
可以插入多行
--%>

<html>
<head>
<title>JSP</title>
</head>
<body>
<!-- HTML注释,此注释内容会发送到客户端 -->
<%
// 可以使用JAVA的单行注释
/*
多行注释
*/
%>
<%--
JSP中使用的注释
--%>
</body>
</html>
- <%!%>:声明全局变量,实例化一次,实际开发中用的较少
<%=输出值%>表达式,类似与out.println() ,在开发中尽量不使用out.println(),而使用<%=输出值%>,实现java与jsp的代码分离
<%%>声明的是局部变量,java代码

<table border="1">
<%
// 打印9×9的表格
for(int i=0;i<9;i++)
{
%>
<tr>
<%
for(int j=0;j<9;j++)
{
%>
<td><%=i*j%></td>
<%
}
%>
</tr>
<%
}
%>
</table>

<body>
<!-- HTML与服务器交互的主要途径是表单 -->
<form action="resparam.jsp" method="post">
用户名:<input type="text" name="uname">
<input type="submit" value="提交">
</form>
</body>

<body>
<%--
接收传递过来的参数,并进行打印输出
使用如下方法:
request.getParameter("参数名称") ;
此方法返回String类型
getParameter方法定义:
--%>
<%
// 接收参数
String name = request.getParameter("uname") ;
%>
<h1><%=name%></h1>
<h1><%=request.getParameter("uname")%></h1>
</body>
request是jsp的内置对象
- <%@include file="uri"%>,可以包含任意文件,*.txt,*.jsp,*.htm,包含的是文件的内容,但是在一个jsp中只能有一组<html>文件标签
原则:在开发中被包含的文件,只写显示部分的的HTML代码,主体代码不要出现,包含的时候不区分文件后缀名,只包含内容
- <jsp:include page="uri"/>标签指令形式,或者:
<jsp:include page="uri" flash="true">
<jsp:param name="参数名称" value="值"/>
<jsp:include/>
使用此语句可以向被包含的页面传递参数,但是被包含的页面必须是jsp页面,也就是动态页面
在jsp中接受包含语句参数的方法是;request.getParameter("参数名称")
1 <%@include file="uri"%>:先包含后处理
-只是将页面的内容静态的包含近来,如果被包含的页面有JSP代码,则执行此代码,而不管被包含的页面文件后缀名如何。
-静态的包含页面:不管其文件内容如何只是将页面中的内容包含进来
-执行时:先将所有内容包含进来一起处理完之后再将多有内容发送给客户端
-所有代码包含近来之后,一起处理了。相当与将被包含的代码替换了<%@include file="uri"%>
2 <jsp:include page="uri"/>:先处理后包含
如果被包含的文件是静态的,则直接将内容包含近来,但不处理,如果被包含的页面是动态的,则先执行,再把结果包含近来。显示
-动态包含页面:自动区分所包含的是静态页面还是动态页面
-执行时:
-如果资源为静态资源则直接将资源包含处理与<%@include file="uri"%>相同
-如果请求资源是动态的,则先各自处理资源,之后将处理后的结果包含在一起。
建议使用<jsp:include page="uri"/>
- 跳转页面:<jsp: forward page="uri"/>
或者:<jsp: forward page="uri">
<jsp:param name="参数名称" value="值"/>
<jsp:forward/>
forward属于无条件跳转语句,使用时
两个页面跳转

<%
String name = "LiXingHua" ;
%>
<jsp:forward page="forwardDemo02.jsp">
<jsp:param name="ref1" value="HELO"/>
<jsp:param name="ref2" value="<%=name%>"/>
</jsp:forward>

<h1><%=request.getParameter("ref1")%></h1>
<h1><%=request.getParameter("ref2")%></h1>
跳转这时地址栏不会发生变化,内容跳了,意味着用户的请求依然没有改变,所以此跳转术语服务器端跳转
- jsp的内置对象;