脚本程序可以包含任意量的Java语句、变量、方法或表达式,只要它们在脚本语言中是有效的。
脚本程序的语法格式:<% java语句 %>
一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。在JSP文件中,您必须先声明这些变量和方法然后才能使用它们。
JSP声明的语法格式:
<%! 定义 %>一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。
由于表达式的值会被转化成String,所以您可以在一个文本行中使用表达式而不用去管它是否是HTML标签。
表达式元素中可以包含任何符合Java语言规范的表达式,但是不能使用分号来结束表达式。
<%= 表达式 %>
除此之外,jsp的注释写法:<%-- 注释-- %>
jsp有三种指令,page,include,taglib.
<%@ page ... %> 定义页面属性,比如缓存,编码格式,导入包等
<%@ include ...%> 包含其他文件
<%@ taglib...%> 自定义标签
<%@ page language="java" import="java.util.*" contentType="text/html;charset=utf-8"%>
<%@ page import="java.text.*"%>//导入SimpleDateFormat包
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>问答系统</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<h1 align="center"> 问答系统</h1>
<br>
<form>
您的问题:
<input type="text" name= "question"/><input type="submit" name="提交"><a href="www.hao123.com"></a></form>
<% SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
String s =sdf.format(new Date());
%>
今天是:<%= s %>
</body>
</html>