JSP简介:
JSP全名为Java Serve Pages,其根本是一个简化的servlet设计,它实现了在java中使用HTML标签。JSP是一种动态网页技术标准也是JAVAEE标准,JSP和servlet一样,是在服务器端执行的。
1.jsp页面元素构成
静态内容、指令、表达式、小脚本、声明、注释
page指令:通常位于jsp页面的顶端,同一个人页面可以有多个page指令
include指令:将一个外部文件嵌入到当前jsp文件中,同时解析这个页面中的jsp语句
taglib指令:使用标签库定义新的自定义标签,在jsp页面中启用定制行为
page指令语法:
<%@ page 属性1="属性值1" 属性2="属性值2" ... 属性n="属性值n"%>
属性 | 描述 | 默认值 |
---|---|---|
language | 通过jsp页面使用的脚本语言 | java |
import | 通过该属性来引用脚本语言中使用的类文件 | 无 |
contentType | 用来指定jsp页面所采用的编码方式 | text/html;ISO-8859-1 |
2.jsp注释
HTML的注释:
<!--html注释--> //客户端可见
jsp注释:
<%--jsp注释--%>
jsp脚本注释:
//单行注释
/**/多行注释
3.jsp脚本
在jsp页面中执行的java代码
语法:
<%java代码%>
4.jsp声明
在jsp页面中定义变量或者方法
语法:
<%!java代码%>
5.jsp表达式
在jsp页面中执行的表达式
语法:
<%=表达式%> //注意:表达式不以分号结束
6.jsp页面的生命周期
jspServise()方法被调用来处理客户端的请求。对每一个请求,JSP引擎创建一个新的县城来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可以大大降低对系统资源需求,提高系统的并发量及响应时间。但也要注意多线程的编程带来的同步问题。由于该servlet始终驻留于内存,所以相应是非常快的。
7.JSP基础语法代码案例:
<%@page import="java.text.SimpleDateFormat"%>
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%
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>jsp基础语法</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>大家好</h1><br>
<!-- 我是html注释,在客户端可见 -->
<%--我是jsp注释,在客户端不可见 --%>
<%!
String s = "张三";//声明了一个字符串变量
int add(int x,int y){ //声明了一个返回整型的函数
return x+y;
}
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日");
String d=sdf.format(new Date());
%>
<%
//单行注释
/*
多行注释
*/
out.println("大家好,欢迎大家学习javaee开发");
%>
<br>
你好,<%=s %><br>
x+y=<%=add(10,5) %><br>
今天是:<%=d %>
<br>
</body>
</html>