JSP
一、概述
1,JSP(Java Server Pages)是JavaWeb服务器端的动态资源。它与html页面的作用是相同的,显示数据和获取数据。
2,JSP = html + Java脚本(代码片段) + JSP动态标签
![](https://i-blog.csdnimg.cn/blog_migrate/c8f0ee84b6e87d33b70c87f6837348aa.png)
二、JSP语法
2.1、JSP脚本
JSP脚本就是Java代码片段,它分为三种:
l <%...%>:Java语句;
l <%=…%>:Java表达式;
l <%!...%>:Java定义类成员;
2.2、内置对象out
out对象在JSP页面中无需创建就可以使用,它的作用是用来向客户端输出。
如:out.print("你好!");
其中<%=…%>与out.print()功能是相同的!它们都是向客户端输出
三、JSP原理
3.1、JSP是特殊的Servlet
JSP是一种特殊的Servlet,当JSP页面首次被访问时,容器(Tomcat)会先把JSP编译成Servlet,然后再去执行Servlet。所以JSP其实就是一个Servlet!只不过是一个servlet用来处理业务逻辑,一个用来处理视图渲染,业务逻辑处理后把结果跳转到JSP进行显示。
![](https://i-blog.csdnimg.cn/blog_migrate/f9a737486ff89c28b7ef44ab1bd903ec.png)
3.2、JSP真身存放目录
JSP生成的Servlet存放在${CATALANA}/work目录下,它就是JSP的“真身”。打开看看其中的内容,了解一下JSP的“真身”。在JSP中的静态信息(例如<html>等)在“真身”中都是使用out.write()完成打印!这些静态信息都是作为字符串输出给了客户端。
Java Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | | public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException {
final javax.servlet.jsp.PageContext pageContext; javax.servlet.http.HttpSession session = null; final javax.servlet.ServletContext application; final javax.servlet.ServletConfig config; javax.servlet.jsp.JspWriter out = null; final java.lang.Object page = this; javax.servlet.jsp.JspWriter _jspx_out = null; javax.servlet.jsp.PageContext _jspx_page_context = null;
try { response.setContentType("text/html;charset=UTF-8"); 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;
… ///JSP页面中的内容都会在这个位置出现!这时上面所说的对象已经创建完了,所以在JSP页面中是可以使用的。
} ps:以上用红色标记的都为JSP内置对象,在<%=%>和<%%>中不用创建即可使用的对象! |