您的位置:首页 > 编程语言 > Java开发

【菜鸟学Java】7:JSP的基本语法

2015-12-21 21:35 274 查看
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>

<%@ page import="java.sql.*" %>
<html>
<head>
<title>JSP语法实例</title>
</head>
<!-- 下面是JSP声明部分 -->
<%!
//声明一个整形变量
public int count;
//声明一个方法
public String info()
{
return "hello world!";
}
%>
<body>
<%--(1)JSP注释实例,如本行文字外的注释格式--%>
<!--     对比HTML的注释,如本行文字外的注释格式-->
<!--     两种注释方式的不同点是,HTML的注释可以通过源代码查看到
但是JSP的注释无法通过源代码查看到,这说明JSP注释不会被发送到客户端-->

<%--(2)JSP声明实例,见head和body标签之间的部分--%>

<!-- JSP声明用于声明变量和方法。在JSP中声明的方法看起来很特别,似乎不需要定义类型就可以
直接定义方法,方法似乎可以脱离类独立存在。实际上,JSP声明将会转换成对应Servlet的
成员方法或成员变量,因此JSP声明依然符合Java语法。-->
<%
//将count的值输出后再加1
out.println(count++);
%>
<br/>
<%
//输出info()方法的返回值
out.println(info());
%>
<%--(3)JSP输出表达式实例,如下代码所示--%>

<!--使用表达式输出变量值-->
<%=count++%><br/>
<!--使用表达式输出方法返回值-->
<%=info()%>
<!--需要注意的是输出表达式语法后面不能有分号,从执行结果来看,输出表达式被转换成了Servlet里的输出语句-->

<%--(4)JSP脚本实例,我们在JSP脚本里写一个利用JDBC查询数据库的例子,如下--%>
<%
// 注册数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/shop","root","");
// 创建Statement
Statement stmt = conn.createStatement();
// 执行查询
ResultSet rs = stmt.executeQuery("select * from category");
%>
<table bgcolor="#9999dd" border="1" width="300">
<%
// 遍历结果集
while(rs.next())
{%>
<tr>
<!-- 输出结果集 -->
<td><%=rs.getString(1)%></td>
<td><%=rs.getString(2)%></td>
</tr>
<%}%>
<table>
<!--小结一下-->
<!--以前JSP脚本应用非常广泛,因此JSP脚本里面可以包含任何可执行的Java代码。通常来说,所有可执行的Java代码
都可以通过JSP脚本嵌入HTML页面。
但是将过多的Java脚本放在页面里面,会造成产品的复杂性过高,程序代码难以阅读(比如我写的这个JSP页面,
融合了好几个例子,将HTML代码和过多的Java代码混在一起,是不是看起来特别乱)和维护,虽然说JSP在很多情况
下速度还是很有优势的,但是需要我们的硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件,这个
是一个比较麻烦的事情。
最后一点要说的是,完全用JSP技术写成的Web应用程序,调试起来是特别麻烦的一件事,如果
程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,
浏览器中所显示的代码出错的行数并不是JSP源代码的行数,而是指转换后的Servlet程序代码的行数。           -->
<!--本篇博文到此就结束了,主要介绍了JSP的4个基本语法,探讨了一下JSP的不足之处。-->
</body>
</html>

                 给大家看一下上面的JSP页面的运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jsp