前言
要想学好一门语言,首先就需要去学好语法。因此要想学好JSP就需要学好jsp的语法
一、JSP页面的基本结构
在传统的HTML页面文件中加入Java程序片(java的语法)和JSP标记就构成了i一个JSP的页面。一个JSP页面可有5种元素构成
普通的HTML标记和JavaScript标记
JSP 标记
变量、方法和类的声明
java程序片
java表达式
二、结构解析
1.声明变量、方法和类
在“<%!”和“%>”标记符号之间声明变量和定义方法
“<%!”和“%>” 声明的变量 变量为全局变量 在整个jsp页面都有用
定义的方法 可以在 java程序片里调用该方法 注(方法内定义的变量只在该方法内有效)
<%@ page contentType="text/html" %>
<%@ page pageEncoding = "utf-8" %>
<HTML><body bgcolor=yellow>
<% i++;
%>
<p style="font-family:宋体;font-size:36">
您是第<%= i %>个访问本站的用户。
</p>
</body></HTML>
<%! int i=0;
%>
<%! int i=0; %> 放在哪里都行
2.java程序片
java程序片就是java代码
在"<%"和"%.>"放入java代码
java程序片里声明的变量和方法只在jsp页面的后面的代码才有效
<% i++;
%>
每次执行i都会加1
3.java表达式
在"<%="和"%.>"之间插入一个可求值的表达式。
表达式的值由服务器负责计算,然后再把计算结果用字符串形式发送到客户端显示。
第七行代码 您是第<%= i %>个访问本站的用户。 <%= i %>会输出i的值(以字符串的形式)
4.JSP标记
1.指令标记
page指令标记
用处: 定义JSP一些属性的值
格式:<%@page 属性 = "属性的值"%>等
例如
<%@ page contentType="text/html" %>
此代码就是让浏览器启用HTML解析器的解析收到的信息
<%@ page pageEncoding = "utf-8" %>
此代码就是让服务器用utf-8来解析收到的字符
include指令标记
格式:<jsp:include page = "文件的URL"/>
用处:实现代码的复用 就像方法一样 可以多次使用
<%@ include file="myfile/ok.txt" %>
myfile/ok.txt 表示有一个myfile文件夹有ok.txt
有了这条代码我们就能使用ok.txt
<%@ page contentType="text/html" %>
<%@ page pageEncoding = "utf-8" %>
<%@ include file="myfile/ok.txt" %>
<HTML><center><body background="image/beida.jpg">
<bgsound src="sound/beida.mp3" loop=1>
<h1>这里是北京大学 </h1>
</body></HTML>
2.动作标记
forward动作标记
用处:从该指令处停止当前页面的执行,而转向执行page属性指定的JSP页面。
当fordward动作标记不需要param子标记时,必须使用下面的第一钟形式
格式:<jsp:forward page ="要转向的页面"/>
例子:
<%@ page contentType="text/html" %>
<%@ page pageEncoding = "utf-8" %>
<HTML><body>
<h1> 产生一个1-10之间的随机数
<% double i=(int)(Math.random()*10)+1;
if(i<=5) {
%> <jsp:forward page="example2_12_a.jsp" >
<jsp:param name="number" value="<%= i %>" />
</jsp:forward>
<% }
else {
%> <jsp:forward page="example2_12_b.jsp" >
<jsp:param name="number" value="<%= i %>" />
</jsp:forward>
<% }
%>
</body></HTML>
example2_12_a.jsp
<%@ page contentType="text/html" %>
<%@ page pageEncoding = "utf-8" %>
<HTML><body bgcolor=cyan>
<p style="font-family:宋体;font-size:36">
<% String s=request.getParameter("number");
out.println("传递过来的值是"+s);
%>
<br><img src=image/pic_a.jpg width=300 height=280/>
</p></body></HTML>
example2_12_b.jsp
<%@ page contentType="text/html" %>
<%@ page pageEncoding = "utf-8" %>
<HTML><body bgcolor=yellow>
<p style="font-family:宋体;font-size:36">
<% String s=request.getParameter("number");
out.println("传递过来的值是"+s);
%>
<br><img src=image/pic_b.jpg width=300 height=280 />
</p></body></HTML>
生成一个随机数 如果大于5就转向example2_12_a.jsp
小于5就example2_12_b.jsp
总结
学习JSP语法是Java Web开发的基本技能之一。需要多加练习和实践。不断学习新技术和新方法,掌握更多的技能,才能更好地开发复杂的Java Web应用程序。