JSP–Java server page:
- 和servlet一样,动态web技术
- HTML只给静态页面,JSP可以嵌入JAVA代码,为用户提供动态数据
继承HttpJspBase
JSP工作:
地址–work工作间:C:\Users\HP\AppData\Local\JetBrains\IntelliJIdea2020.1\tomcat
将jsp转成java文件
JSP最终转换成JAVA类
HttpJspBase继承了Servlet–Jsp本质是个servlet
JSP底层代码
final javax.servlet.jsp.PageContext pageContext; //页面上下文
javax.servlet.http.HttpSession session = null; //Session
final javax.servlet.ServletContext application; //Application
final javax.servlet.ServletConfig config; //config
javax.servlet.jsp.JspWriter out = null;
final java.lang.Object page = this; //当前page
request //请求
response //相应
输出前增加的代码
response.setContentType("text/html");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;
HTML标签使用out.write()方法输出
out.write("<html>\n");
out.write("<body>\n");
out.write("\n");
out.write("\n");
out.write("</body>\n");
out.write("</html>\n");
代码:
<!doctype html>
<html>
<head>
<title>jsp</title>
</head>
<body>
<%
//可以使用内置的类
String name="csf"; //<% %>中可使用java代码
%>
name:<%=name%> //获取java中的变量
</body>
</html>
过程:
当访问jsp文件时,生成jsp文件与编译的.class文件