jsp
- 什么是jsp?
java server pages(java服务器页面),本质上就是一个servlet,运行在服务器端. - 作用
可以在jsp嵌入java代码,动态展示数据 - jsp的特定内容
- 1 jsp的脚本
<%…%>:写java程序片段
<%=…%>:输出表达式(输出表达式不能以分号结尾) - 2 jsp的指令
(1)包含在.jsp文件的头部,声明当前页面的一些属性和行为
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
(2)taglib:导入标签库
s
<%@taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core" %>
导入标签库后就可以使用jstl标签替换jsp中的if、for表达式。更多见jstl标签
3.3 jsp中的域对象
request:当前请求
session:当前会话
3.4 jsp的动作标签
语法:<jsp:动作标签 属性=”值”>
例如: 将其他页面包含到当前页面
<jsp:include page="/.."></jsp:inclue>
3.5 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 = 2;
%>
<!--输出a+b的值-->
<%=a+b %>
<!--写if表达式-->
<%
if(a>b){
%>
<font color="red">a is 大于 b</font>
<%
}else{
%>
<font color="red">a 小于 b</font>
<%
}
%>
<!--写for语句-->
<%
for(int i=1;i<11;i++){
%>
<%=i %>
<%
}
%>
</body>
</html>
3.5 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>
<%
request.setAttribute("username", "zhangsan");
%>
<%=request.getAttribute("username") %>
</body>
</html>
3.6 jsp动作标签测试
以下代码可以是开发中引入前端页面的共同部分
a.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>
11111111111111111
</body>
</html>
b.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>
<jsp:include page="/a.jsp"></jsp:include>
</br>
22222222222222222
33333333333333333
</br>
<jsp:include page="/c.jsp"></jsp:include>
</body>
</html>
c.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>
33333333333333333
</body>
</html>
效果:
11111111111111111
22222222222222222
33333333333333333