您的位置:首页 > Web前端 > JavaScript

JSP注释 声明 输出表达式 脚本

2016-04-27 21:43 459 查看
1、JSP注释:
<%-- --%>

HTML注释

<!---->
HTML注释可以通过源代码查看到,但是JSP的注释是无法通过源代码查看到。JSP注释不会发送到客户端

2、JSP声明

JSP声明用于声明变量和方法。在JSP声明中声明方法看起来很特别,似乎不需要定义类就可直接定义方法,方法似乎可以脱离类独立存在。实际上JSP声明将会换成对应的Servlet的成员变量或成员方法,因此JSP声明依然符合Java语法。

(注意:方法只能在声明中)

<%! 声明部分 %>
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%!
//声明一个整形变量
int count = 0;
//声明一个方法
public String info(){
return "hello";
}
%>
<% //输出count后加1
out.println(count++);%><br/>
<% //输出info()方法的返回值
out.println(info());
%>
</body>
</html>
没刷新一次,count的值加1

打开对多个页面count的值是连续的,客户端共享一个count变量。这是因为:JSP页面会编译成一个Servlet类,每个Servlet在容器中只有一个实例;

重启tomcat后,count值变为0

声明的变量和方法,转换成对应Servlet的成员变量或成员方法。

3、输出表达式

<%=count %><br/>
<%=info() %>
输出表达式语法后面不能有分号

4、JSP脚本

<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>JSP小脚本测试</title>
</head>
<body>
<table bgcolor="#2222ee" border="5" width="300px">
<!-- Java脚本,这些脚本会对HTML的标签产生作用 -->
<%
for(int i = 0; i < 10; i++){
%>
<!-- 上面的循环将控制<tr>标签循环 -->
<tr>
<td>循环值:</td>
<td><%=i %></td>
</tr>
<%

}
%>
</table>

</body>
</html>


<%@page import="java.sql.*"%>
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>小脚本测试2</title>
</head>
<body>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/newdat","root","");
Statement stmt = conn.createStatement();
ResultSet res = stmt.executeQuery("select * from cases");
int count = 0;
%>
<table bgcolor="#9999dd" border="1" width="700px">
<%
while(res.next()){
if(count++ > 30)break;
%>
<tr>
<!-- 输出结果集 -->
<td colspan="3"><%=res.getString(3) %></td>
<td><%=res.getString(4) %></td>
<td><%=res.getString(5) %></td>
<td colspan="4"><%=res.getString(6) %></td>
</tr>
<%}%>
</table>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: