1.什么是jsp
JSP全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术。
2.Jsp声明语句用于生命变量和方法它以“<%!”开始,以“%>”结束,语法如下:
<%!
定义的变量或方法
%>
在chapter6项目的WebContent目录下创建一个名称为example01.jsp的文件,代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
int a=1;
int b=3;
%>
<%!
public String daying(){
String str="dashuju2003";
return str;
}
%>
<% out.println("biaoda:" +a+b); %>
<br/>
<br/><br/>
<% out.println(daying()); %>
<br/><br/>
<%="表达式:"+a+b%>
<%="表达式:"+daying()%>
</body>
</html>
运行结果如下:
3.JSP注释:
同其他各种编程语言一样,JSP也有自己的注释方式语法如下:
<%-- --%>
在chapter项目的WebContent下创建名称为example的JSP的页面:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- html注释 -->
大数据
<%
//java注释
System.out.print("java 注释");
%>
<%-- jsp注释--%>
</body>
</html>
4.JSP指令
page指令:在JSP页面中,经常需要对页面的某些特性进行描述:
<%@ page 属性名1 = "属性值1" 属性名2= " 属性值2 "......%>
include指令:在实际开发时,有时需要在JSP页面静态包含一个文件,例如HTML文件,文本文件等。
<%@ include file="被包含的文件地址"%>
在chapter6项目的WebContent目录下创建两个JSP页面文件data.jsp和include.jsp,在include.jsp文件使用include指令将data.jsp文件包含其中:
data.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
data.jsp 用来实际输出时间:
<%out.println(new Date().toLocaleString()); %>
</body>
</html>
include.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
张荣博52现实当前时间:
<%@include file="data.jsp" %>
</body>
</html>
运行结果如下:
5.JSP隐式对象:
out对象:在JSP页面中,经常需要向客户端发送文本内容,这时需要使用out对象来实现:
在chapter6项目的webContent目录下创建一个名称为out的JSP文件:
代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
//1.使用out隐式对象输出内容jspwriter
out.print("first line<br/>");
//2.使用printwriter输出
response.getWriter().print("second line <br/>");
%>
</body>
</html>
运行结果如下:
pageContent对象:使用该对象可以访问其他8个隐式对象;在chapter6的WebContent目录下创建;
在chapter6项目的webContent目录下创建一个名称为pageContent.jsp;
代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
HttpServletRequest req=(HttpServletRequest)pageContext.getRequest();
req.setAttribute("req","REQUEST");
pageContext.setAttribute("req11", "PAGE_SCORE",PageContext.PAGE_SCOPE);
pageContext.setAttribute("req22", "REQUEST_SCOPE",PageContext.REQUEST_SCOPE);
pageContext.setAttribute("req33", "SESSION_SCOPE",PageContext.SESSION_SCOPE);
pageContext.setAttribute("req", ".APPLICATION_SCOPE",PageContext.APPLICATION_SCOPE);
%>
<%=pageContext.findAttribute("req")%>
<hr/>
<%=(String)req.getAttribute("req") %>
</body>
</html>
运行结果: